Adding a buildslave

To add a slave:

  1. Install python (can't build arma without it anyway, duh)
  2. Install twisted
  3. Install buildbot (buildmaster is 0.75, portage has 0.74, don't know if that's a problem or not)
  4. svn co https://armagetronad.svn.sourceforge.net/svnroot/armagetronad/support/buildbot/buildslave
  5. cd buildslave
  6. cp armabuildslave.conf.sample armabuildslave.conf
  7. vi armabuildslave.conf and read the comments in the file. You need to fill in some of the values there. In particular, host should be "buildbot.davefancella.com", and port should be "9989". Also, make sure to put the username and password that the buildmaster administrator gave you for your buildslave.
  8. make start

That's to run a slave on your machine. To actually add it to the system, I need to give you a user and password and do some work on the buildmaster.

To make a new buildFactory:

svn co https://armagetronad.svn.sourceforge.net/svnroot/armagetronad/support/buildbot/buildmaster
cd buildmaster
vi master.cfg

Actually, I'd suggest using your regular code editor, which for me isn't vi. The file is a python source file, so you might have to set syntax highlighting manually. Test your config file with "python master.cfg". That's not a complete test, for a complete test you'll need to run a buildmaster, but don't sweat it. Just worry about adding your buildFactory and/or tweaking existing buildFactories, and test it for syntax errors with the python interpreter.

Obviously to get it going live you need to tell me so I can update the buildmaster with the new config file.

Adding a Windows buildslave

  1. First do everything to setup a windows development environment. You must use a recent CodeBlocks nightly build, the 1.0rc doesn't support batch builds and will not work in a buildslave.
  2. Install subversion for windows (this is in addition to TortoiseSVN)
  3. Install NSIS
  4. Add to your path environment variable the path to python, codeblocks, and nsis (subversion adds itself automatically)
  5. Install Twisted 2.4 (2.5 doesn't work with buildbot)
  6. Install buildbot
  7. Do the stuff listed up top about checking out the buildslave module from our svn repository
  8. Now decide if you want it to run as a service. If you do, open buildbot/contrib/windows/the one about the service and follow those directions, they're very good.
  9. If you haven't already, you've now learned you need to install Mark Hammond's win32 extensions to python. Warning: the python site has a bad link on it and a good link. The good link points to sourceforge, the bad link points to starship.

After all that, if you're lucky, you have a working buildslave in windows. With even more luck, it'll actually build the game.