taler-deployment

Deployment scripts and configuration files
Log | Files | Refs | README

commit 80d3a5b11e2a1c384c2e3b27b9fb2c14c5ed4e62
parent 2134732d7eee02aaf58e6d4e232d1141a4d019e4
Author: Marcello Stanisci <stanisci.m@gmail.com>
Date:   Tue, 21 May 2019 18:27:01 +0200

Worker picking logic was conceptually wrong.

Diffstat:
Mbuildbot/master.cfg | 25+++++++++++++++++++++----
1 file changed, 21 insertions(+), 4 deletions(-)

diff --git a/buildbot/master.cfg b/buildbot/master.cfg @@ -99,6 +99,23 @@ c["workers"] = [ # deployment. worker.Worker("auditor-worker-blue", "auditor-blue-pass")] + +## +# Maps usernames to workers. +# +def pick_map(buildername): + + builder_worker_map = {"test-green": "builder-worker-green", + "test-blue": "builder-worker-blue"} + topper_worker_map = {"test-green": "topper-worker-green", + "test-blue": "topper-worker-blue"} + auditor_worker_map = {"test-green": "auditor-worker-green", + "test-blue": "auditor-worker-blue"} + meta_map = {"builder-builder": builder_worker_map, + "auditor-builder": auditor_worker_map, + "tip-reserve-topper-builder": topper_worker_map} + + return meta_map.get(buildername) # '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 @@ -492,9 +509,9 @@ def pick_active_color(builder, workers_list, build_request): return None active = f.readline().rstrip() print("Found active color: %s" % str(active)) - + aw = pick_map(builder.name).get(str(active)) for worker in workers_list: - if active == getuser(): + if aw = worker.worker.workername: f.close() print("Scheduling worker: %s" % str(worker)) return worker @@ -536,9 +553,9 @@ def pick_inactive_color(builder, workers_list, build_request): return None nonactive = f.readline().rstrip() print("Found nonactive color: %s" % str(nonactive)) - + nw = pick_map(builder.name).get(str(nonactive)) for worker in workers_list: - if nonactive == getuser(): + if nw = worker.worker.workername: f.close() print("Scheduling worker: %s" % str(worker)) return worker