[darcs-users] darcs patch: Add a darcs-nightly target to the makefile.

zooko zooko at zooko.com
Fri Oct 24 18:11:17 UTC 2008


On Oct 24, 2008, at 8:02 AM, Eric Kow wrote:

> Zooko: is it reasonable for the buildbot to ask the slaves to do this?
> darcs_version=`sed -e 's/ (//' -e 's/ patches)//' -e 's/+ /+/'  
> release/STATE`

This appears to assume that "sed" is present on the buildslave, for  
starters.

Also, there isn't a convenient way for the build master to get the  
results of an invocation that is run on the buildslave.  We could  
program the buildmaster to send a "shell" command (ideally one that  
didn't assume that there was a "sed" executable, and ideally one that  
would work just as well when the shell is cmd.exe as when the shell  
is /bin/bash), and spool the stdout and stderr from that command back  
to the buildmaster over TCP.  Then the buildmaster could parse the  
string that got spooled back and send another command, this one  
saying "Okay relink the file 'darcs' to be named 'darcs-$VERSION'.",  
or "make a new directory named dist/$VERSION", etc.

So, yes, it could be done, but I'm not going to spend the time to  
figure it out anytime soon.  Maybe someone else who knows buildbot  
better could do it faster.

It would be nice if the darcs makefile (or cabal system, or franchise  
system, or whatever) had a command called "darcs binary-dist" which  
would copy the darcs executable, the docs, etc. into a directory, tar  
(on unix) or zip (on Windows) that directory, and then name the  
resulting tar/zip file with the current version number.  Wouldn't  
that be cool?  That's what "./setup.py bdist" does on Python, and  
since cabal seems to be somewhat similar to the Python packaging  
system, hopefully cabal or a future version of cabal will provide  
such a feature.

Then the buildbot could just invoke "make bdist" followed by "scp  
dist/* $server".

Regards,

Zooko
---
http://allmydata.org -- Tahoe, the Least-Authority Filesystem
http://allmydata.com -- back up all your files for $10/month


More information about the darcs-users mailing list