Adding a buildslave

From Armagetron
Revision as of 13:20, 22 January 2007 by Lucifer (talk | contribs) (Updated again, removed comment about not committing buildslave changes. It's now safe to do so.)

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. mkdir buildroot
  7. cp -R info buildroot
  8. vi buildroot/info/admin <-- Put your name in here and optionally an email address
  9. vi buildroot/info/host <-- One line of host information. Should be OS and version, CPU if it's special.
  10. vi userinfo <--- One line, should be user:password for the buildslave.
  11. vi basedir <--- One line, the absolute path to the buildroot directory you made a few steps ago
  12. 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.