diff --git a/buildbot/README.txt b/buildbot/README.txt index c331f7c2..5f26d36f 100644 --- a/buildbot/README.txt +++ b/buildbot/README.txt @@ -1 +1,19 @@ -TODO: Write this README file \ No newline at end of file +Buildbot Master Config +---------------------- + +The master.cfg file in this folder is the configuration file for Project +Phoenix's buildbot, running at http://buildbot.wxpython.org:8010/ This file +is the master copy and is kept here in order to keep it under revision +control. It is *NOT* automatically copied to the build master when it is +updated and committed and must be copied manually. This is to help avoid +security issues or problems resulting from DSM's by somebody who has commit +access to the source repository but does not know what they are doing with +Buildbot. + +Developers with the proper SSH keys can copy the file and reconfigure the +server with these commands: + + scp buildbot/master.cfg wxpybb@buildbot.wxpython.org:/home/wxpybb/buildbot + ssh wxpybb@buildbot.wxpython.org "cd /home/wxpybb && ./reconfig" + + \ No newline at end of file diff --git a/buildbot/master.cfg b/buildbot/master.cfg index a8c9ca4e..12e537e7 100644 --- a/buildbot/master.cfg +++ b/buildbot/master.cfg @@ -25,9 +25,15 @@ c = BuildmasterConfig = {} import bbpasswd from buildbot.buildslave import BuildSlave -c['slaves'] = [ BuildSlave("osx_cocoa-py27", bbpasswd.PASSWD1), # Kevin Ollivier - BuildSlave("win7-py27", bbpasswd.PASSWD1), # Robin Dunn - BuildSlave("ubuntu-py27", bbpasswd.PASSWD1), # Robin Dunn +c['slaves'] = [ BuildSlave("osx_cocoa-py27", bbpasswd.PASSWD1, + notify_on_missing='kevino@theolliviers.com', + max_builds=1), + BuildSlave("win7-py27", bbpasswd.PASSWD1, + notify_on_missing='robin@alldunn.com', + max_builds=1), + BuildSlave("ubuntu-x64_86-py27", bbpasswd.PASSWD1, + notify_on_missing='robin@alldunn.com', + max_builds=1), ] # 'slavePortnum' defines the TCP port to listen on for connections from slaves. @@ -101,7 +107,7 @@ from buildbot.steps.shell import ShellCommand from buildbot.config import BuilderConfig -def makeFactory(port, buildType='buildOnly'): +def makeFactory(port, buildType='buildOnly', pyVer='2.7'): # all of them need to fetch the source factory = BuildFactory() factory.addStep(SVN(svnurl='http://svn.wxwidgets.org/svn/wx/wxWidgets/trunk', @@ -110,9 +116,9 @@ def makeFactory(port, buildType='buildOnly'): workdir="Phoenix", mode='copy')) if buildType == 'docs': - cmd = 'python build.py dox touch etg sphinx docs_bdist --upload_package' + cmd = 'python -u build.py %s dox etg sphinx docs_bdist --upload_package' % pyVer else: - cmd = 'python build.py dox touch etg --nodoc sip build' + cmd = 'python -u build.py %s dox etg --nodoc sip build' % pyVer if port == 'osx': cmd += ' --mac_arch=i386,x86_64' if port == 'msw': @@ -135,9 +141,15 @@ c['builders'] = [ factory=makeFactory('win32')), BuilderConfig(name="build-gtk-py27", - slavenames=["ubuntu-py27"], + slavenames=["ubuntu-x64_86-py27"], factory=makeFactory('gtk')), + BuilderConfig(name="build-gtk-py32", + slavenames=["ubuntu-x64_86-py27"], + factory=makeFactory('gtk', pyVer='3.2')), + + + BuilderConfig(name="dist-win32-py27", slavenames=["win7-py27"], factory=makeFactory('win32', 'dist')), @@ -145,9 +157,10 @@ c['builders'] = [ BuilderConfig(name="dist-osx-py27", slavenames=["osx_cocoa-py27"], factory=makeFactory('osx', 'dist')), + BuilderConfig(name="build-docs", - slavenames=["ubuntu-py27"], + slavenames=["ubuntu-x64_86-py27"], factory=makeFactory('', 'docs')), ]