[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