ReleaseEngineering/How To/Setup a buildbot master: Difference between revisions
< ReleaseEngineering | How To
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
These instructions are probably incomplete, but should serve as a good starting point for setting up a new buildbot master. If you find something missing or inaccurate, please update! | |||
* Create a new directory for your master, e.g. /builds/buildbot/mymaster | * Create a new directory for your master, e.g. /builds/buildbot/mymaster | ||
* Create a virtual environment for your master | * Create a virtual environment for your master | ||
<pre> | <pre> | ||
virtualenv --distribute --no-site-packages -p /tools/python-2.6.5/bin/python /builds/buildbot/mymaster | virtualenv --distribute --no-site-packages -p /tools/python-2.6.5/bin/python /builds/buildbot/mymaster | ||
</pre> | </pre> | ||
* Install required packages | * Install required packages | ||
<pre> | <pre> | ||
pip install simplejson | pip install simplejson | ||
pip install mysql-python | pip install mysql-python | ||
pip install Twisted==10.1.0 | pip install Twisted==10.1.0 | ||
pip install sqlalchemy | |||
pip install sqlalchemy | pip install argparse | ||
pip install argparse | pip install pycrypto | ||
pip install pycrypto | pip install pyasn1 | ||
pip install pyasn1 | pip install mysql-python | ||
pip install mysql-python | pip install pyopenssl==0.10 | ||
pip install pyopenssl==0.10 | pip install http://hg.mozilla.org/users/clegnitto_mozilla.com/mozillapulse/archive/tip.tar.bz2 | ||
pip install http://hg.mozilla.org/users/clegnitto_mozilla.com/mozillapulse/archive/tip.tar.bz2 | hg clone http://hg.mozilla.org/build/buildbot | ||
hg clone http://hg.mozilla.org/build/buildbot | (cd buildbot/master; $PYTHON setup.py develop install) | ||
(cd buildbot/master; $PYTHON setup.py develop install) | (cd buildbot/slave; $PYTHON setup.py develop install) | ||
(cd buildbot/slave; $PYTHON setup.py develop install) | hg clone -b production-0.8 http://hg.mozilla.org/build/buildbotcustom | ||
hg clone -b production-0.8 http://hg.mozilla.org/build/buildbotcustom | hg clone -b production http://hg.mozilla.org/build/buildbot-configs | ||
hg clone -b production http://hg.mozilla.org/build/buildbot-configs | hg clone http://hg.mozilla.org/build/tools | ||
hg clone http://hg.mozilla.org/build/tools | </pre> | ||
</pre> | |||
* Add Makefile | |||
<pre> | |||
PWD=$(shell pwd) | |||
BUILDBOT=$(PWD)/bin/buildbot | |||
HG=/tools/python-2.6.5/bin/hg | |||
export PYTHONDONTWRITEBYTECODE=1 | |||
export PYTHONPATH=/builds/buildbot/mymaster/tools/lib/python | |||
start: | |||
cd master && $(BUILDBOT) start $$PWD | |||
stop: | |||
cd master && $(BUILDBOT) stop $$PWD | |||
restart: | |||
cd master && $(BUILDBOT) restart $$PWD | |||
reconfig: | |||
cd master && $(BUILDBOT) reconfig $$PWD | |||
checkconfig: | |||
cd master && $(BUILDBOT) checkconfig | |||
update: | |||
(cd buildbotcustom && $(HG) pull && $(HG) update -C) | |||
(cd buildbot-configs && $(HG) pull && $(HG) update -C) | |||
(cd tools && $(HG) pull && $(HG) update -C) | |||
version: | |||
$(BUILDBOT) --version | |||
* Setup master | |||
<pre> | |||
mkdir master | |||
cd master | |||
ln -s ../buildbot-configs/config.py . | |||
ln -s ../buildbot-configs/production_config.py localconfig.py | |||
etc. --catlee too tired to fill this in right now. add symlinks and run make checkconfig until it works! |
Revision as of 05:37, 8 March 2011
These instructions are probably incomplete, but should serve as a good starting point for setting up a new buildbot master. If you find something missing or inaccurate, please update!
- Create a new directory for your master, e.g. /builds/buildbot/mymaster
- Create a virtual environment for your master
virtualenv --distribute --no-site-packages -p /tools/python-2.6.5/bin/python /builds/buildbot/mymaster
- Install required packages
pip install simplejson pip install mysql-python pip install Twisted==10.1.0 pip install sqlalchemy pip install argparse pip install pycrypto pip install pyasn1 pip install mysql-python pip install pyopenssl==0.10 pip install http://hg.mozilla.org/users/clegnitto_mozilla.com/mozillapulse/archive/tip.tar.bz2 hg clone http://hg.mozilla.org/build/buildbot (cd buildbot/master; $PYTHON setup.py develop install) (cd buildbot/slave; $PYTHON setup.py develop install) hg clone -b production-0.8 http://hg.mozilla.org/build/buildbotcustom hg clone -b production http://hg.mozilla.org/build/buildbot-configs hg clone http://hg.mozilla.org/build/tools
- Add Makefile
PWD=$(shell pwd) BUILDBOT=$(PWD)/bin/buildbot HG=/tools/python-2.6.5/bin/hg export PYTHONDONTWRITEBYTECODE=1 export PYTHONPATH=/builds/buildbot/mymaster/tools/lib/python start: cd master && $(BUILDBOT) start $$PWD stop: cd master && $(BUILDBOT) stop $$PWD restart: cd master && $(BUILDBOT) restart $$PWD reconfig: cd master && $(BUILDBOT) reconfig $$PWD checkconfig: cd master && $(BUILDBOT) checkconfig update: (cd buildbotcustom && $(HG) pull && $(HG) update -C) (cd buildbot-configs && $(HG) pull && $(HG) update -C) (cd tools && $(HG) pull && $(HG) update -C) version: $(BUILDBOT) --version * Setup mastermkdir master cd master ln -s ../buildbot-configs/config.py . ln -s ../buildbot-configs/production_config.py localconfig.py etc. --catlee too tired to fill this in right now. add symlinks and run make checkconfig until it works!