== Prerequisites == You'll need [http://wiki.darcs.net/Binaries darcs] and [http://trac.buildbot.net/wiki/DownloadInstall buildbot] before you can proceed. == Configuration == Create a user account with low privileges to run buildbot. ==== Optional Configurations ==== You can use other mechanisms to lock buildbot down like jail, chroot, etc. David Abrahams uses Solaris Zones to contain his buildslaves. Brian Warner and the other buildbot maintainers have been hacking on some tricks to set up your buildslaves inside a full virtual machine so that you can have a pristine machine for every build. == Name The Buildslave == Choose a name for your buildslave which will fit into the list of buildslave names: http://tahoe-lafs.org/buildbot/buildslaves . A hostname would be a good choice. == Get a Password == Email Zooko (zooko_at_zooko_dot_com) and ask for a password. == Create a Buildslave == Execute the following commands: * Tahoe-LAFS: {{{buildbot create-slave $BASEDIR_TAHOE dev.allmydata.org:9987 $SLAVENAME $PASSWORD}}} * Zfec: {{{buildbot create-slave $BASEDIR_ZFEC dev.allmydata.org:12987 $SLAVENAME $PASSWORD}}} * Pycryptopp: {{{buildbot create-slave $BASEDIR_PYCRYPTOPP dev.allmydata.org:10998 $SLAVENAME $PASSWORD}}} Those three use the same $SLAVENAME, $PASSWORD and hostname, but a different $BASEDIR and a different port number. For the $BASEDIR your can use whatever directory you want. Use a different user account for my tahoe-lafs, pycryptopp, and zfec buildslaves. == Detailed Documentation == Detailed docs: http://djmitche.github.com/buildbot/docs/latest/Creating-a-buildslave.html#Creating-a-buildslave Then {{{buildbot start $BASEDIR}}}. Okay, once you've gotten all this working then we'll see your machine on the buildbot pages and we'll see how well Tahoe-LAFS passes unit tests on your platform. Eventually I would like to go on to the next step, which is integrating Tahoe-LAFS into the official package system of your operating system and adding tests to check whether Tahoe-LAFS is still correctly building from its package. But that is for another day.