1 |
commit: df8b25b39d422fd8152e6113c1443835d5aee091 |
2 |
Author: Magnus Granberg <zorry <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sat Oct 16 14:57:34 2021 +0000 |
4 |
Commit: Magnus Granberg <zorry <AT> gentoo <DOT> org> |
5 |
CommitDate: Sat Oct 16 14:57:34 2021 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/tinderbox-cluster.git/commit/?id=df8b25b3 |
7 |
|
8 |
Set the workers in worker_data in master.cfg |
9 |
|
10 |
Signed-off-by: Magnus Granberg <zorry <AT> gentoo.org> |
11 |
|
12 |
buildbot_gentoo_ci/config/builders.py | 21 +++++++--------- |
13 |
buildbot_gentoo_ci/config/workers.py | 45 +++++++++++++++++++++++++++++------ |
14 |
2 files changed, 46 insertions(+), 20 deletions(-) |
15 |
|
16 |
diff --git a/buildbot_gentoo_ci/config/builders.py b/buildbot_gentoo_ci/config/builders.py |
17 |
index c28d016..ca7fc73 100644 |
18 |
--- a/buildbot_gentoo_ci/config/builders.py |
19 |
+++ b/buildbot_gentoo_ci/config/builders.py |
20 |
@@ -5,16 +5,7 @@ from twisted.internet import defer |
21 |
|
22 |
from buildbot.plugins import util |
23 |
from buildbot_gentoo_ci.config import buildfactorys |
24 |
- |
25 |
-# FIXME: get LocalWorkers and BuildWorkers from db or file |
26 |
-LocalWorkers = [] |
27 |
-LocalWorkers.append('updatedb_1') |
28 |
-LocalWorkers.append('updatedb_2') |
29 |
-LocalWorkers.append('updatedb_3') |
30 |
-LocalWorkers.append('updatedb_4') |
31 |
- |
32 |
-BuildWorkers = [] |
33 |
-BuildWorkers.append('a89c2c1a-46e0-4ded-81dd-c51afeb7fcfd') |
34 |
+from buildbot_gentoo_ci.config.workers import gentoo_ci_workers |
35 |
|
36 |
@defer.inlineCallbacks |
37 |
def CanWorkerBuildProject(builder, wfb, request): |
38 |
@@ -29,10 +20,14 @@ def CanWorkerBuildProject(builder, wfb, request): |
39 |
print('no worker') |
40 |
return False |
41 |
|
42 |
-def gentoo_builders(b=[]): |
43 |
+def gentoo_builders(worker_data): |
44 |
+ b = [] |
45 |
+ g_ci_w = gentoo_ci_workers(worker_data) |
46 |
+ LocalWorkers = g_ci_w.getLocalWorkersUuid() |
47 |
+ BuildWorkers = g_ci_w.getBuildWorkersUuid() |
48 |
b.append(util.BuilderConfig( |
49 |
name='update_db_check', |
50 |
- workername='updatedb_1', |
51 |
+ workername=LocalWorkers[0], |
52 |
workerbuilddir='builds', |
53 |
collapseRequests=False, |
54 |
factory=buildfactorys.update_db_check() |
55 |
@@ -40,7 +35,7 @@ def gentoo_builders(b=[]): |
56 |
) |
57 |
b.append(util.BuilderConfig( |
58 |
name='update_repo_check', |
59 |
- workername='updatedb_2', |
60 |
+ workername=LocalWorkers[1], |
61 |
workerbuilddir='builds', |
62 |
collapseRequests=True, |
63 |
factory=buildfactorys.update_repo_check() |
64 |
|
65 |
diff --git a/buildbot_gentoo_ci/config/workers.py b/buildbot_gentoo_ci/config/workers.py |
66 |
index 6141d89..d9e7061 100644 |
67 |
--- a/buildbot_gentoo_ci/config/workers.py |
68 |
+++ b/buildbot_gentoo_ci/config/workers.py |
69 |
@@ -3,11 +3,42 @@ |
70 |
|
71 |
from buildbot.plugins import worker |
72 |
|
73 |
-def gentoo_workers(w=[]): |
74 |
- # FIXME: Get workers from db |
75 |
- w.append(worker.LocalWorker('updatedb_1')) |
76 |
- w.append(worker.LocalWorker('updatedb_2')) |
77 |
- w.append(worker.LocalWorker('updatedb_3')) |
78 |
- w.append(worker.LocalWorker('updatedb_4')) |
79 |
- w.append(worker.Worker('bot-test', 'test1234')) |
80 |
+class gentoo_ci_workers(): |
81 |
+ def __init__(self, worker_data, **kwargs): |
82 |
+ self.worker_data = worker_data |
83 |
+ |
84 |
+ def getLocalWorkersUuid(self): |
85 |
+ local_worker = [] |
86 |
+ for worker in self.worker_data: |
87 |
+ if worker['type'] == 'local' and worker['enable'] is True: |
88 |
+ local_worker.append(worker['uuid']) |
89 |
+ print(local_worker) |
90 |
+ return local_worker |
91 |
+ |
92 |
+ def getBuildWorkersUuid(self): |
93 |
+ build_worker = [] |
94 |
+ for worker in self.worker_data: |
95 |
+ if worker['type'] != 'local' and worker['enable'] is True: |
96 |
+ build_worker.append(worker['uuid']) |
97 |
+ print(build_worker) |
98 |
+ return build_worker |
99 |
+ |
100 |
+ def getBuildWorkersAllData(self): |
101 |
+ build_worker = [] |
102 |
+ for worker in self.worker_data: |
103 |
+ if worker['type'] != 'local' and worker['enable'] is True: |
104 |
+ build_worker.append(worker) |
105 |
+ print(build_worker) |
106 |
+ return build_worker |
107 |
+ |
108 |
+def gentoo_workers(worker_data): |
109 |
+ w = [] |
110 |
+ g_ci_w = gentoo_ci_workers(worker_data) |
111 |
+ LocalWorkers = g_ci_w.getLocalWorkersUuid() |
112 |
+ BuildWorkers = g_ci_w.getBuildWorkersAllData() |
113 |
+ for local_worker in LocalWorkers: |
114 |
+ w.append(worker.LocalWorker(local_worker)) |
115 |
+ for build_worker in BuildWorkers: |
116 |
+ if build_worker['type'] == 'default': |
117 |
+ w.append(worker.Worker(build_worker['uuid'], build_worker['password'])) |
118 |
return w |