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 _______________________________________________ darcs-users mailing list darcs-users@darcs.net http://lists.osuosl.org/mailman/listinfo/darcs-users