BuildBot is a system to automate the compile/test cycle required by most software projects to validate code changes.
Here is my environment.
$ uname -a Linux app.example.com 2.6.18-53.el5 #1 SMP Mon Nov 12 02:14:55 EST 2007 x86_64 x86_64 x86_64 GNU/Linux $ python Python 2.4.3 (#1, May 24 2008, 13:57:05)
Here is what I did to get it installed successfully.
CentOS
$ yum install python-devel $ yum install zope
Ubuntu
$ apt-get install python-dev $ apt-get install python-zopeinterface
$ cd /tmp # installation of Twisted $ wget http://tmrc.mit.edu/mirror/twisted/Twisted/8.1/Twisted-8.1.0.tar.bz2 $ bunzip2 Twisted-8.1.0.tar.bz2 $ tar xvf Twisted-8.1.0.tar $ cd Twisted-8.1.0 $ sudo python setup.py install # installation of BuildBot $ cd /tmp $ wget http://downloads.sourceforge.net/buildbot/buildbot-0.7.8.tar.gz $ tar xvfz buildbot-0.7.8.tar.gz $ cd buildbot-0.7.8 $ sudo python setup.py install And a confirmation.
$ buildbot --version Buildbot version: 0.7.8 Twisted version: 8.1.0
You will notice a few dependencies. I found these out from the following errors.
Error causing needing python-devel
$ python setup.py install .... gcc -pthread -fno-strict-aliasing -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtun e=generic -D_GNU_SOURCE -fPIC -fPIC -I/usr/include/python2.4 -c conftest.c -o conftest.o building 'twisted.runner.portmap' extension creating build/temp.linux-x86_64-2.4 creating build/temp.linux-x86_64-2.4/twisted creating build/temp.linux-x86_64-2.4/twisted/runner gcc -pthread -fno-strict-aliasing -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtun e=generic -D_GNU_SOURCE -fPIC -fPIC -I/usr/include/python2.4 -c twisted/runner/portmap.c -o build/temp.linux-x86_64-2.4/twisted/runner/portmap.o twisted/runner/portmap.c:10:20: error: Python.h: No such file or directory twisted/runner/portmap.c:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token twisted/runner/portmap.c:31: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token twisted/runner/portmap.c:45: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘PortmapMethods’
Error causing zope to be installed
$ buildbot start /home/buildbot/master/ Traceback (most recent call last): File "/usr/bin/buildbot", line 4, in ? runner.run() File "/usr/lib/python2.4/site-packages/buildbot/scripts/runner.py", line 939, in run start(so) File "/usr/lib/python2.4/site-packages/buildbot/scripts/startup.py", line 85, in start rc = Follower().follow() File "/usr/lib/python2.4/site-packages/buildbot/scripts/startup.py", line 6, in follow from twisted.internet import reactor File "/usr/lib64/python2.4/site-packages/twisted/internet/reactor.py", line 11, in ? from twisted.internet import selectreactor File "/usr/lib64/python2.4/site-packages/twisted/internet/selectreactor.py", line 17, in ? from zope.interface import implements ImportError: No module named zope.interface
Installation was the easy part, configuration a little more complex.