Switch the buildbot slaves to Git

This commit is contained in:
Robin Dunn
2015-01-31 22:27:01 -08:00
parent b35f75b680
commit b25595dacc

View File

@@ -26,11 +26,7 @@ import bbpasswd
reload(bbpasswd)
from buildbot.buildslave import BuildSlave
c['slaves'] = [ #BuildSlave("osx_cocoa-py27", bbpasswd.PASSWD1,
# notify_on_missing='kevino@theolliviers.com',
# max_builds=1),
BuildSlave("osx-10.7-vm-py2.7", bbpasswd.PASSWD1,
c['slaves'] = [BuildSlave("osx-10.7-vm-py2.7", bbpasswd.PASSWD1,
notify_on_missing='robin@alldunn.com',
max_builds=1),
@@ -55,26 +51,12 @@ c['slavePortnum'] = 9989
####### CHANGESOURCES
# the 'change_source' setting tells the buildmaster how it should find out
# The 'change_source' setting tells the buildmaster how it should find out
# about source code changes.
from buildbot.changes.svnpoller import SVNPoller
#wxSvnUrl = 'http://svn.wxwidgets.org/svn/wx/wxWidgets/trunk'
#wxSvnUrl = 'http://svn.wxwidgets.org/svn/wx/wxWidgets/tags/WX_3_0_0'
wxSvnUrl = 'http://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_3_0_BRANCH'
phoenixSvnUrl = 'http://svn.wxwidgets.org/svn/wx/wxPython/Phoenix/trunk'
c['change_source'] = [ SVNPoller(wxSvnUrl,
pollinterval=300,
histmax=20,
cachepath='/home/wxpybb/buildbot/last_change.wx.cache'),
SVNPoller(phoenixSvnUrl,
pollinterval=300,
histmax=20,
cachepath='/home/wxpybb/buildbot/last_change.Phoenix.cache'),
]
# See WebStatus setup below for alternate approach using GitHub's webhooks,
# where github will send us info about changes as they are pushed or merged,
# instead of having buildbot poll the repos itself.
@@ -98,7 +80,6 @@ c['schedulers'].append( SingleBranchScheduler(
"build-win64-py27",
"build-win64-py33",
"build-win64-py34",
#"build-osx-py27",
"build-osx-py27-2",
"build-osx-py33",
"build-osx-py34",
@@ -138,7 +119,6 @@ c['schedulers'].append( ForceScheduler(
"build-win64-py27",
"build-win64-py33",
"build-win64-py34",
#"build-osx-py27",
"build-osx-py27-2",
"build-osx-py33",
"build-osx-py34",
@@ -165,12 +145,18 @@ c['schedulers'].append( ForceScheduler(
from buildbot.process.factory import BuildFactory
from buildbot.process.properties import Property, WithProperties
#from buildbot.steps.source import SVN # old slave-side SVN build step
from buildbot.steps.source.svn import SVN # new server-side SVN build step
from buildbot.steps.source.git import Git
from buildbot.steps.shell import ShellCommand
from buildbot.config import BuilderConfig
wxGitUrl = 'https://github.com/RobinD42/wxWidgets.git'
wxGitBranch = 'WX_3_0_BRANCH' #'wxPy-3.0-branch'
phoenixGitUrl = 'https://github.com/RobinD42/Phoenix.git'
phoenixGitBranch = 'master'
def makeFactory(port, buildType='buildOnly', pyVer='2.7'):
factory = BuildFactory()
@@ -186,21 +172,22 @@ def makeFactory(port, buildType='buildOnly', pyVer='2.7'):
mode = 'incremental'
method = None
clean = ''
## Since the wx build doesn't have good dependency checking on MSW, always clean first.
#if port in ['win32', 'win64']:
# clean = 'clean'
# Start from a clean build tree for the daily builds
if buildType in ['dist', 'docs']:
mode = 'full'
method = 'clobber'
# extra config options for git commands
gitConfig = {'core.autocrlf' : 'input'}
# all of them need to fetch the source
factory.addStep(SVN(repourl=wxSvnUrl, name='wx-svn', workdir="wxWidgets",
mode=mode, method=method))
factory.addStep(SVN(repourl=phoenixSvnUrl, name='phoenix-svn', workdir="Phoenix",
mode=mode, method=method))
factory.addStep(Git(repourl=wxGitUrl, branch=wxGitBranch,
name='wx-git', workdir="wxWidgets", config=gitConfig,
mode=mode, method=method, progress=True))
factory.addStep(Git(repourl=phoenixGitUrl, branch=phoenixGitBranch, config=gitConfig,
name='phoenix-git', workdir="Phoenix",
mode=mode, method=method, progress=True))
if buildType == 'docs':
@@ -232,10 +219,6 @@ def makeFactory(port, buildType='buildOnly', pyVer='2.7'):
c['builders'] = [
#BuilderConfig(name="build-osx-py27",
# slavenames=["osx_cocoa-py27"],
# factory=makeFactory('osx')),
BuilderConfig(name="build-osx-py27-2",
slavenames=["osx-10.7-vm-py2.7"],
factory=makeFactory('osx')),
@@ -292,10 +275,6 @@ c['builders'] = [
#BuilderConfig(name="dist-osx-py27",
# slavenames=["osx_cocoa-py27"],
# factory=makeFactory('osx', 'dist')),
BuilderConfig(name="dist-osx-py27-2",
slavenames=["osx-10.7-vm-py2.7"],
factory=makeFactory('osx', 'dist')),
@@ -361,7 +340,10 @@ authz_cfg = authz.Authz(
#cancelPendingBuild = True,
)
c['status'].append(html.WebStatus(http_port=8010, authz=authz_cfg))
c['status'].append(html.WebStatus(http_port=8010, authz=authz_cfg,
change_hook_dialects={'github': True},
change_hook_auth=["file:changehook.passwd"],
))
# email notification
@@ -370,7 +352,7 @@ from buildbot.status.mail import MailNotifier
mn = MailNotifier(fromaddr="buildbot@riobu.com",
sendToInterestedUsers=False,
mode='problem',
extraRecipients=['kevino@theolliviers.com', 'robin@alldunn.com'])
extraRecipients=['robin@alldunn.com'])
c['status'].append(mn)