Ticket #356 (assigned todo)
buildslave volunteers list yourself here (esp. Mac OSX)
| Reported by: | semi | Owned by: | koshi |
|---|---|---|---|
| Priority: | major | Milestone: | Infrastructure Improvements |
| Component: | build and packaging | Version: | |
| Keywords: | Cc: |
Description (last modified by semi) (diff)
How to setup a buildslave:
Make sure every step succeeds for you in the guides below. If any step fails, ask me (semi) to help.
cd /tmp git-clone git://springlobby.info/git/semi/springlobby.git cd springlobby autogen.sh mkdir build cd build ../configure make
The above is very near what the buildbot will do, so make sure it succeeds manually first, to make troubleshooting easier later.
If you are on debian or ubuntu, do apt-get install buildbot. This takes care of the following tasks:
- install dependencies of buildbot
- create buildbot user (buildbot)
- create buildbot home dir (/var/lib/buildbot)
- create configuration file for the startup scripts (/etc/default/buildbot)
- create the startup scripts (/etc/init.d/buildbot)
If you are on some other distro, ask for help.
Even if you apt-get installed buildbot, you must continue with:
cd /tmp wget http://downloads.sourceforge.net/buildbot/buildbot-0.7.6.tar.gz tar xzf buildbot-0.7.6.tar.gz wget http://buildbot.net/trac/attachment/ticket/130/better-support-for-git.patch?format=raw -O better-support-for-git.patch cd buildbot-0.7.6 git-apply ../better-support-for-git.patch PYTHONPATH=. trial buildbot.test sudo python ./setup.py install
- initialize buildslave (you need to contact me for SLAVENAME and PASSWORD)
sudo -u buildbot mkdir /var/lib/buildbot/slaves sudo -u buildbot buildbot create-slave /var/lib/buildbot/slaves/springlobby springlobby.info:9989 SLAVENAME PASSWORD
Edit the following files:
BASEDIR/info/admin should contain your name and email address. This is the “buildslave admin address”, and will be visible from the build status page (so you may wish to munge it a bit if address-harvesting spambots are a concern).
BASEDIR/info/host should be filled with a brief description of the host: OS, version, memory size, CPU speed, versions of relevant libraries installed (wxWidgets), and finally the version of the buildbot code which is running the buildslave.
Add this to /etc/default/buildbot (if you are on something else than debian or ubuntu, ask for help)
BB_NUMBER[1]=1 BB_NAME[1]="springlobby buildslave" BB_USER[1]="buildbot" BB_BASEDIR[1]="/var/lib/buildbot/slaves/springlobby" BB_OPTIONS[1]="" BB_PREFIXCMD[1]="nice"
And finally run:
sudo /etc/init.d/buildbot start
Then go visit http://buildbot.springlobby.info:8010/buildslaves to see that your slave connected.
If you could build multiple versions of wx widgets, that would help even more, so I can run the full test suite on your slave:
sudo apt-get install mingw32 cd /tmp wget http://prdownloads.sourceforge.net/wxwindows/wxWidgets-2.8.7.tar.gz tar xzf wxWidgets-2.8.7.tar.gz cd wxWidgets-2.8.7 mkdir build-mingw build-linux cd build-mingw ../configure --enable-unicode --prefix=/var/lib/buildbot/lib/mingw/wx/2.8 --host=i586-mingw32msvc --build=i586-linux make sudo -u buildbot make install cd .. cd build-linux ../configure --enable-unicode --prefix=/var/lib/buildbot/lib/linux/wx/2.8 make sudo -u buildbot make install cd /tmp wget http://prdownloads.sourceforge.net/wxwindows/wxWidgets-2.6.4.tar.gz tar xzf wxWidgets-2.6.4.tar.gz cd wxWidgets-2.6.4 mkdir build-linux cd build-linux ../configure --enable-unicode --prefix=/var/lib/buildbot/lib/linux/wx/2.6 make sudo -u buildbot make install
