diff options
author | Florian Dold <florian.dold@gmail.com> | 2017-09-11 17:26:39 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2017-09-11 17:26:39 +0200 |
commit | 219377b5fc068ab9f8228a251e5934331f82ad54 (patch) | |
tree | 5044fe17413ce196f54f79ef4e824072464057d9 /buildbot/master.cfg | |
parent | f6d484b7d12076911ff6bfce6ba5f846a403309f (diff) | |
download | deployment-219377b5fc068ab9f8228a251e5934331f82ad54.tar.gz deployment-219377b5fc068ab9f8228a251e5934331f82ad54.tar.bz2 deployment-219377b5fc068ab9f8228a251e5934331f82ad54.zip |
use project regexes and restructure/comment
Diffstat (limited to 'buildbot/master.cfg')
-rw-r--r-- | buildbot/master.cfg | 142 |
1 files changed, 80 insertions, 62 deletions
diff --git a/buildbot/master.cfg b/buildbot/master.cfg index 688f055..d711e45 100644 --- a/buildbot/master.cfg +++ b/buildbot/master.cfg @@ -36,41 +36,74 @@ c['protocols'] = {'pb': {'port': 9989}} c['change_source'] = [] c['change_source'].append(changes.GitPoller( 'git://taler.net/wallet-webex', + project="wallet", workdir='gitpoller-workdir', branch='master', pollinterval=300)) c['change_source'].append(changes.GitPoller( 'git://taler.net/merchant', + project="merchant", workdir='gitpoller-workdir', branch='master', pollinterval=300)) c['change_source'].append(changes.GitPoller( 'git://taler.net/exchange', + project="exchange", + workdir='gitpoller-workdir', branch='master', + pollinterval=300)) +c['change_source'].append(changes.GitPoller( + 'git://taler.net/bank', + project="bank", + workdir='gitpoller-workdir', branch='master', + pollinterval=300)) +c['change_source'].append(changes.GitPoller( + 'git://taler.net/api', + project="api", + workdir='gitpoller-workdir', branch='master', + pollinterval=300)) +c['change_source'].append(changes.GitPoller( + 'git://taler.net/deployment', + project="deployment", workdir='gitpoller-workdir', branch='master', pollinterval=300)) ####### SCHEDULERS -# Configure the Schedulers, which decide how to react to incoming changes. In this -# case, just kick off a 'runtests' build - -c['schedulers'] = [] -c['schedulers'].append(schedulers.Periodic(name="periodic", - builderNames=["doc-builder"], - periodicBuildTimer=12*60*60)) -c['schedulers'].append(schedulers.SingleBranchScheduler( - name="all", - change_filter=util.ChangeFilter(branch='master'), - treeStableTimer=None, - builderNames=["lcov-builder", - "selenium-builder", - "switcher-builder", - "wallet-builder"])) -c['schedulers'].append(schedulers.ForceScheduler( - name="force", - builderNames=["lcov-builder", - "selenium-builder", - "switcher-builder", - "doc-builder", - "wallet-builder"])) +# Configure the Schedulers, which decide how to react to incoming changes. + +# Re-build documentation periodically +doc_scheduler = schedulers.Periodic( + name="periodic-doc-scheduler", + builderNames=["doc-builder"], + periodicBuildTimer=12*60*60) + +wallet_scheduler = schedulers.SingleBranchScheduler( + name="wallet-scheduler", + change_filter=util.ChangeFilter(branch='master'), + treeStableTimer=None, + project_re="wallet|deployment", + builderNames=["wallet-builder"]) + +all_scheduler = schedulers.SingleBranchScheduler( + name="all", + change_filter=util.ChangeFilter(branch='master'), + treeStableTimer=None, + project_re="wallet|bank|exchange|merchant|deployment", + builderNames=[ + "lcov-builder", + "selenium-builder", + "switcher-builder", + "wallet-builder"]) + +# Provide "force" button in the web UI +force_scheduler = schedulers.ForceScheduler( + name="force", + builderNames=[ + "lcov-builder", + "selenium-builder", + "switcher-builder", + "doc-builder", + "wallet-builder"]) + +c["schedulers"] = [doc_scheduler, wallet_scheduler, all_scheduler, force_scheduler] ####### BUILDERS @@ -185,32 +218,32 @@ doc_factory.addStep(ShellCommand(name="build docs", command=["./update_stage.sh"], workdir="build/taler-build")) -c['builders'] = [] +lcov_builder = util.BuilderConfig( + name="lcov-builder", + workernames=["lcov-worker"], + factory=lcov_factory) -c['builders'].append( - util.BuilderConfig(name="lcov-builder", - workernames=["lcov-worker"], - factory=lcov_factory)) +switcher_builder = util.BuilderConfig( + name="switcher-builder", + workernames=["switcher-worker"], + factory=switcher_factory) -c['builders'].append( - util.BuilderConfig(name="switcher-builder", - workernames=["switcher-worker"], - factory=switcher_factory)) +selenium_builder = util.BuilderConfig( + name="selenium-builder", + workernames=["selenium-worker"], + factory=selenium_factory) -c['builders'].append( - util.BuilderConfig(name="selenium-builder", - workernames=["selenium-worker"], - factory=selenium_factory)) +doc_builder = util.BuilderConfig( + name="doc-builder", + workernames=["doc-worker"], + factory=doc_factory) -c['builders'].append( - util.BuilderConfig(name="doc-builder", - workernames=["doc-worker"], - factory=doc_factory)) +wallet_builder = util.BuilderConfig( + name="wallet-builder", + workernames=["wallet-worker"], + factory=wallet_factory) -c['builders'].append( - util.BuilderConfig(name="wallet-builder", - workernames=["wallet-worker"], - factory=wallet_factory)) +c["builders"] = [lcov_builder, switcher_builder, doc_builder, wallet_builder] ####### BUILDBOT SERVICES @@ -218,20 +251,12 @@ c['builders'].append( # status of each build will be pushed to these targets. buildbot/reporters/*.py # has a variety to choose from, like IRC bots. -c['services'] = [] - -c['services'] = [] - from buildbot.plugins import reporters irc = reporters.IRC("irc.eu.freenode.net", "taler-bb", useColors=False, channels=[{"channel": "#taler"}], password="taler-bb-pass19", - notify_events={ - 'exception': 1, - 'successToFailure': 1, - 'failureToSuccess': 1, -}) + notify_events={'exception': 1, 'successToFailure': 1, 'failureToSuccess': 1}) email = reporters.MailNotifier(fromaddr="testbuild@taler.net", sendToInterestedUsers=False, mode=("problem"), @@ -241,22 +266,15 @@ email = reporters.MailNotifier(fromaddr="testbuild@taler.net", "selenium-builder"), extraRecipients=["buildfailures@taler.net"], subject="Taler build.") -c['services'].append(irc) -c['services'].append(email) -####### PROJECT IDENTITY +c["servives"] = [irc, email] -# the 'title' string will appear at the top of this buildbot installation's -# home pages (linked to the 'titleURL'). +####### PROJECT IDENTITY c['title'] = "Taler" c['titleURL'] = "https://taler.net" -# the 'buildbotURL' string should point to the location where the buildbot's -# internal web server is visible. This typically uses the port number set in -# the 'www' entry below, but with an externally-visible host name which the -# buildbot cannot figure out without some help. - +# We use nginx to expose the BB under this URL. c['buildbotURL'] = "https://buildbot.taler.net/" # minimalistic config to activate new web UI |