diff options
author | Marcello Stanisci <stanisci.m@gmail.com> | 2017-11-04 11:01:08 +0100 |
---|---|---|
committer | Marcello Stanisci <stanisci.m@gmail.com> | 2017-11-04 11:01:08 +0100 |
commit | 8d7edcfa91e5bd3a0b1b146cc14677a5ee03a432 (patch) | |
tree | afb2a9927ffec162a40f433ee679c8675cafc734 /buildbot/master.cfg | |
parent | 9527aee524dd05612df97097b3d34de1116d69cb (diff) | |
download | deployment-8d7edcfa91e5bd3a0b1b146cc14677a5ee03a432.tar.gz deployment-8d7edcfa91e5bd3a0b1b146cc14677a5ee03a432.tar.bz2 deployment-8d7edcfa91e5bd3a0b1b146cc14677a5ee03a432.zip |
indent
Diffstat (limited to 'buildbot/master.cfg')
-rw-r--r-- | buildbot/master.cfg | 453 |
1 files changed, 247 insertions, 206 deletions
diff --git a/buildbot/master.cfg b/buildbot/master.cfg index 112c879..b525fd2 100644 --- a/buildbot/master.cfg +++ b/buildbot/master.cfg @@ -18,20 +18,23 @@ c["buildbotNetUsageData"] = "basic" # The 'workers' list defines the set of recognized workers. Each element is # a Worker object, specifying a unique worker name and password. The same # worker name and password must be configured on the worker. -c["workers"] = [worker.Worker("lcov-worker", "lcov-pass"), - worker.Worker("selenium-worker", "selenium-pass"), - worker.Worker("doc-worker", "doc-pass"), - worker.Worker("switcher-worker", "switcher-pass"), - worker.Worker("debug-worker", "debug-pass"), - worker.Worker("lint-worker", "lint-pass"), - worker.Worker("wallet-worker", "wallet-pass")] +c["workers"] = [ + worker.Worker("lcov-worker", "lcov-pass"), + worker.Worker("selenium-worker", "selenium-pass"), + worker.Worker("doc-worker", "doc-pass"), + worker.Worker("switcher-worker", "switcher-pass"), + worker.Worker("debug-worker", "debug-pass"), + worker.Worker("lint-worker", "lint-pass"), + worker.Worker("wallet-worker", "wallet-pass")] # 'protocols' contains information about protocols which master will use for # communicating with workers. You must define at least 'port' option that workers # could connect to your master with this protocol. # 'port' must match the value configured into the workers (with their # --master option) -c["protocols"] = {"pb": {"port": "tcp:9989:interface=127.0.0.1"}} +c["protocols"] = { + "pb": { + "port": "tcp:9989:interface=127.0.0.1"}} ####### CHANGESOURCES @@ -48,60 +51,71 @@ c["change_source"] = [allcs] # Configure the Schedulers, which decide how to react to incoming changes. # Re-build documentation periodically + doc_scheduler = schedulers.SingleBranchScheduler( - name="periodic-doc-scheduler", - builderNames=["doc-builder"], - #FIXME, this way we build components' manuals only if 'api' or 'www' get pushed. - change_filter=util.ChangeFilter(branch="master", project_re="api|www"), - treeStableTimer=None) + name="periodic-doc-scheduler", + builderNames=["doc-builder"], + change_filter=util.ChangeFilter( + branch="master", + project_re="api|www"), + treeStableTimer=None) wallet_scheduler = schedulers.SingleBranchScheduler( - name="wallet-scheduler", - change_filter=util.ChangeFilter(branch="master", project_re="wallet|deployment"), - treeStableTimer=None, - builderNames=["wallet-builder"]) + name="wallet-scheduler", + change_filter=util.ChangeFilter( + branch="master", + project_re="wallet|deployment"), + treeStableTimer=None, + builderNames=["wallet-builder"]) all_scheduler = schedulers.SingleBranchScheduler( - name="all-scheduler", - change_filter=util.ChangeFilter(branch="master", project_re="wallet|bank|exchange|merchant|deployment"), - treeStableTimer=None, - builderNames=[ - "lcov-builder", - "selenium-builder", - "switcher-builder", - "wallet-builder"]) + name="all-scheduler", + change_filter=util.ChangeFilter( + branch="master", + project_re="wallet|bank|exchange|merchant|deployment"), + treeStableTimer=None, + builderNames=[ + "lcov-builder", + "selenium-builder", + "switcher-builder", + "wallet-builder"]) # Scheduler monitoring the help.git repo; a forgotten repo we # use to test BB. debug_scheduler = schedulers.SingleBranchScheduler( - name="debug-scheduler", - change_filter=util.ChangeFilter(branch="master", project="help"), - treeStableTimer=None, - builderNames=["debug-builder"]) + name="debug-scheduler", + change_filter=util.ChangeFilter( + branch="master", + project="help"), + treeStableTimer=None, + builderNames=["debug-builder"]) # Consider adding other Python parts, like the various frontends. lint_scheduler = schedulers.SingleBranchScheduler( - name="lint-scheduler", - change_filter=util.ChangeFilter(branch="master", project_re="bank"), - treeStableTimer=None, - builderNames=["lint-builder"]) + name="lint-scheduler", + change_filter=util.ChangeFilter( + branch="master", + project_re="bank"), + treeStableTimer=None, + builderNames=["lint-builder"]) # Provide "force" button in the web UI force_scheduler = schedulers.ForceScheduler( - name="force-scheduler", - builderNames=[ - "lcov-builder", - "selenium-builder", - "switcher-builder", - "doc-builder", - "wallet-builder"]) - -c["schedulers"] = [doc_scheduler, - wallet_scheduler, - all_scheduler, - force_scheduler, - debug_scheduler, - lint_scheduler] + name="force-scheduler", + builderNames=[ + "lcov-builder", + "selenium-builder", + "switcher-builder", + "doc-builder", + "wallet-builder"]) + +c["schedulers"] = [ + doc_scheduler, + wallet_scheduler, + all_scheduler, + force_scheduler, + debug_scheduler, + lint_scheduler] ####### BUILDERS @@ -116,174 +130,190 @@ from buildbot.steps.source.git import Git from buildbot.steps.shell import ShellCommand wallet_factory = util.BuildFactory() - -wallet_factory.addStep(Git(repourl="git://git.taler.net/wallet-webex.git", - mode="full", - method="fresh", - logEnviron=False, - alwaysUseLatest=True, - haltOnFailure=True, - branch="master")) - -wallet_factory.addStep(ShellCommand(name="configuration", - description="Running configure script", - descriptionDone="Correctly configured", - command=["./configure"], - workdir="build/")) - -wallet_factory.addStep(ShellCommand(name="test", - description="Running wallet tests", - descriptionDone="Test correctly run", - command=["make", "check"], - workdir="build/")) +wallet_factory.addStep(Git( + repourl="git://git.taler.net/wallet-webex.git", + mode="full", + method="fresh", + logEnviron=False, + alwaysUseLatest=True, + haltOnFailure=True, + branch="master")) +wallet_factory.addStep(ShellCommand( + name="configuration", + description="Running configure script", + descriptionDone="Correctly configured", + command=["./configure"], + workdir="build/")) +wallet_factory.addStep(ShellCommand( + name="test", + description="Running wallet tests", + descriptionDone="Test correctly run", + command=["make", "check"], + workdir="build/")) debug_factory = util.BuildFactory() -debug_factory.addStep(ShellCommand(name="echo debug", - description="just echoing a word", - descriptionDone="builder responded", - command=["echo", "I'm here!"])) +debug_factory.addStep(ShellCommand( + name="echo debug", + description="just echoing a word", + descriptionDone="builder responded", + command=["echo", "I'm here!"])) lint_factory = util.BuildFactory() -lint_factory.addStep(Git(repourl='git://git.taler.net/bank.git', - mode="full", - method="fresh", - logEnviron=False, - alwaysUseLatest=True, - haltOnFailure=True, - branch="master")) -lint_factory.addStep(ShellCommand(name="code linter", - description="running static analysis", - descriptionDone="static analysis done", - command=["pylint", - "--load_plugins", - "pylint_django", - "talerbank/"])) +lint_factory.addStep(Git( + repourl='git://git.taler.net/bank.git', + mode="full", + method="fresh", + logEnviron=False, + alwaysUseLatest=True, + haltOnFailure=True, + branch="master")) +lint_factory.addStep(ShellCommand( + name="code linter", + description="running static analysis", + descriptionDone="static analysis done", + command=["pylint", + "--load_plugins", + "pylint_django", + "talerbank/"])) lcov_factory = util.BuildFactory() - -lcov_factory.addStep(Git(repourl='git://git.taler.net/deployment.git', - mode="full", - method='fresh', - logEnviron=False, - alwaysUseLatest=True, - haltOnFailure=True, - branch='master')) -lcov_factory.addStep(ShellCommand(name="invalidation", - description="Invalidating timestamps", - descriptionDone="timestamps invalidated", - command=["./invalidate.sh"], - workdir="build/taler-build")) -lcov_factory.addStep(ShellCommand(name="build", - description="Compiling..", - descriptionDone="lcov files generated", - command=["make", "lcov"], - workdir="build/taler-build", - env={"PATH": "${HOME}/local/bin:${PATH}", - "TALER_CHECKDB": "postgresql:///talercheck?host=/home/${USER}/sockets"})) +lcov_factory.addStep(Git( + repourl='git://git.taler.net/deployment.git', + mode="full", + method='fresh', + logEnviron=False, + alwaysUseLatest=True, + haltOnFailure=True, + branch='master')) +lcov_factory.addStep(ShellCommand( + name="invalidation", + description="Invalidating timestamps", + descriptionDone="timestamps invalidated", + command=["./invalidate.sh"], + workdir="build/taler-build")) +lcov_factory.addStep(ShellCommand( + name="build", + description="Compiling..", + descriptionDone="lcov files generated", + command=["make", "lcov"], + workdir="build/taler-build", + env={"PATH": "${HOME}/local/bin:${PATH}", + "TALER_CHECKDB": "postgresql:///talercheck?host=/home/${USER}/sockets"})) switcher_factory = util.BuildFactory() -switcher_factory.addStep(Git(repourl='git://git.taler.net/deployment.git', - mode="full", - method="fresh", - logEnviron=False, - alwaysUseLatest=True, - haltOnFailure=True, - branch="master")) -switcher_factory.addStep(ShellCommand(name="build", - description="Building inactive blue-green party.", - descriptionDone="Compile.", - command=["./build.sh"], - workdir="build/buildbot")) -switcher_factory.addStep(ShellCommand(name="restart services", - description="Restarting inactive blue-green party.", - descriptionDone="Restarting Taler.", - command=["./restart.sh"], - workdir="build/buildbot")) -switcher_factory.addStep(ShellCommand(name="check services correctly restarted", - description="Checking services are correctly restarted.", - descriptionDone="All services are correctly restarted.", - command=["./checks.sh"], - workdir="build/buildbot")) -switcher_factory.addStep(ShellCommand(name="switch active party", - description="Switch to the party which was inactive.", - descriptionDone="Active party has been switched.", - command=["./switch.sh"], - workdir="build/buildbot")) +switcher_factory.addStep(Git( + repourl='git://git.taler.net/deployment.git', + mode="full", + method="fresh", + logEnviron=False, + alwaysUseLatest=True, + haltOnFailure=True, + branch="master")) +switcher_factory.addStep(ShellCommand( + name="build", + description="Building inactive blue-green party.", + descriptionDone="Compile.", + command=["./build.sh"], + workdir="build/buildbot")) +switcher_factory.addStep(ShellCommand( + name="restart services", + description="Restarting inactive blue-green party.", + descriptionDone="Restarting Taler.", + command=["./restart.sh"], + workdir="build/buildbot")) +switcher_factory.addStep(ShellCommand( + name="check services correctly restarted", + description="Checking services are correctly restarted.", + descriptionDone="All services are correctly restarted.", + command=["./checks.sh"], + workdir="build/buildbot")) +switcher_factory.addStep(ShellCommand( + name="switch active party", + description="Switch to the party which was inactive.", + descriptionDone="Active party has been switched.", + command=["./switch.sh"], + workdir="build/buildbot")) + selenium_factory = util.BuildFactory() -selenium_factory.addStep(ShellCommand(name="selenium", - description="Headless browser test", - descriptionDone="Test finished", - command=["launch_selenium_test"], - env={'PATH': "${HOME}/local/bin:/usr/lib/chromium:${PATH}"})) +selenium_factory.addStep(ShellCommand( + name="selenium", + description="Headless browser test", + descriptionDone="Test finished", + command=["launch_selenium_test"], + env={'PATH': "${HOME}/local/bin:/usr/lib/chromium:${PATH}"})) # this factory builds {api,docs}.taler.net AND {www,stage}.taler.net doc_factory = util.BuildFactory() - -doc_factory.addStep(Git(repourl="git://git.taler.net/deployment.git", - mode="full", - method="fresh", - logEnviron=False, - alwaysUseLatest=True, - haltOnFailure=True, - branch='master')) -doc_factory.addStep(ShellCommand(name="build docs", - description="Building documentation.", - descriptionDone="Documentation built.", - command=["./update_docs.sh"], - workdir="build/taler-build")) -doc_factory.addStep(ShellCommand(name="build www", - description="Building www.taler.net.", - descriptionDone="www.taler.net built", - command=["./update_www.sh"], - workdir="build/taler-build")) -doc_factory.addStep(ShellCommand(name="build www-stage", - description="Building stage.taler.net.", - descriptionDone="stage.taler.net built", - command=["./update_stage.sh"], - workdir="build/taler-build")) +doc_factory.addStep(Git( + repourl="git://git.taler.net/deployment.git", + mode="full", + method="fresh", + logEnviron=False, + alwaysUseLatest=True, + haltOnFailure=True, + branch='master')) +doc_factory.addStep(ShellCommand( + name="build docs", + description="Building documentation.", + descriptionDone="Documentation built.", + command=["./update_docs.sh"], + workdir="build/taler-build")) +doc_factory.addStep(ShellCommand( + name="build www", + description="Building www.taler.net.", + descriptionDone="www.taler.net built", + command=["./update_www.sh"], + workdir="build/taler-build")) +doc_factory.addStep(ShellCommand( + name="build www-stage", + description="Building stage.taler.net.", + descriptionDone="stage.taler.net built", + command=["./update_stage.sh"], + workdir="build/taler-build")) debug_builder = util.BuilderConfig( - name="debug-builder", - workernames=["debug-worker"], - factory=debug_factory) + name="debug-builder", + workernames=["debug-worker"], + factory=debug_factory) lint_builder = util.BuilderConfig( - name="lint-builder", - workernames=["lint-worker"], - factory=lint_factory) + name="lint-builder", + workernames=["lint-worker"], + factory=lint_factory) lcov_builder = util.BuilderConfig( - name="lcov-builder", - workernames=["lcov-worker"], - factory=lcov_factory) + name="lcov-builder", + workernames=["lcov-worker"], + factory=lcov_factory) switcher_builder = util.BuilderConfig( - name="switcher-builder", - workernames=["switcher-worker"], - factory=switcher_factory) + name="switcher-builder", + workernames=["switcher-worker"], + factory=switcher_factory) selenium_builder = util.BuilderConfig( - name="selenium-builder", - workernames=["selenium-worker"], - factory=selenium_factory) + name="selenium-builder", + workernames=["selenium-worker"], + factory=selenium_factory) doc_builder = util.BuilderConfig( - name="doc-builder", - workernames=["doc-worker"], - factory=doc_factory) + name="doc-builder", + workernames=["doc-worker"], + factory=doc_factory) wallet_builder = util.BuilderConfig( - name="wallet-builder", - workernames=["wallet-worker"], - factory=wallet_factory) - -c["builders"] = [lcov_builder, - switcher_builder, - selenium_builder, - doc_builder, - wallet_builder, - debug_builder, - lint_builder] + name="wallet-builder", + workernames=["wallet-worker"], + factory=wallet_factory) + +c["builders"] = [ + lcov_builder, + switcher_builder, + selenium_builder, + doc_builder, + wallet_builder, + debug_builder, + lint_builder] ####### BUILDBOT SERVICES @@ -292,20 +322,28 @@ c["builders"] = [lcov_builder, # has a variety to choose from, like IRC bots. 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}) -email = reporters.MailNotifier(fromaddr="testbuild@taler.net", - sendToInterestedUsers=False, - mode=("problem"), - builders=("switcher-builder", - "doc-builder", - "wallet-builder", - "selenium-builder"), - extraRecipients=["buildfailures@taler.net"], - subject="Taler build.") +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}) + +email = reporters.MailNotifier( + fromaddr="testbuild@taler.net", + sendToInterestedUsers=False, + mode=("problem"), + builders=( + "switcher-builder", + "doc-builder", + "wallet-builder", + "selenium-builder"), + extraRecipients=["buildfailures@taler.net"], + subject="Taler build.") c["services"] = [irc, email] @@ -318,9 +356,12 @@ c["titleURL"] = "https://taler.net" c["buildbotURL"] = "https://buildbot.taler.net/" # minimalistic config to activate new web UI -c["www"] = dict(port=8010, - plugins=dict(waterfall_view={}, console_view={}), - allowed_origins=["https://*.taler.net"]) +c["www"] = { + "port": 8010, + "plugins" : { + "waterfall_view": {}, + "console_view":{}}, + "allowed_origins": ["https://*.taler.net"]} ####### DB URL |