blob: 0f6f79ed88b91f7dbae0c6b8c4c2c420ec9c864b [file] [log] [blame]
Don Garrettbe3608b2018-06-05 17:10:09 -07001# Copyright 2018 The Chromium OS Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5"""Test gen_luci_scheduler."""
Don Garrettbe3608b2018-06-05 17:10:09 -07006
Don Garrett8dace272018-07-19 14:07:42 -07007from chromite.config import chromeos_config
Don Garrettbe3608b2018-06-05 17:10:09 -07008from chromite.lib import cros_test_lib
9from chromite.lib import config_lib
10from chromite.lib import config_lib_unittest
11from chromite.scripts import gen_luci_scheduler
12
Mike Frysinger74a6cc82020-02-14 14:16:22 -050013
Don Garrettbe3608b2018-06-05 17:10:09 -070014# It's reasonable for unittests to look at internals.
15# pylint: disable=protected-access
16
17
18class GenLuciSchedulerTest(cros_test_lib.MockTestCase):
19 """Tests for cbuildbot_launch script."""
20 def testSanityAgainstProd(self):
21 """Test we can generate a luci scheduler config with live data."""
22 # If it runs without crashing, we pass.
Don Garrett8dace272018-07-19 14:07:42 -070023 gen_luci_scheduler.genLuciSchedulerConfig(
24 config_lib.GetConfig(), chromeos_config.BranchScheduleConfig())
Don Garrettbe3608b2018-06-05 17:10:09 -070025
26 def testGenSchedulerJob(self):
27 """Test the job creation helper."""
28 build_config = config_lib_unittest.MockBuildConfig().apply(
29 schedule='funky schedule'
30 )
31
Mike Frysinger80de5012019-08-01 14:10:53 -040032 expected = """
Don Garrettbe3608b2018-06-05 17:10:09 -070033job {
Mike Nichols9e47e842020-08-11 15:23:56 -060034 id: "amd64-generic-release"
Vadim Shtayura6398e002021-01-11 12:02:11 -080035 realm: "cbb-jobs"
Don Garrettbe3608b2018-06-05 17:10:09 -070036 acl_sets: "default"
37 schedule: "funky schedule"
38 buildbucket: {
39 server: "cr-buildbucket.appspot.com"
40 bucket: "luci.chromeos.general"
Mike Nichols9e47e842020-08-11 15:23:56 -060041 builder: "LegacyRelease"
Mike Frysinger62a02452021-03-16 03:48:34 -040042 tags: "cbb_branch:main"
Mike Nichols9e47e842020-08-11 15:23:56 -060043 tags: "cbb_config:amd64-generic-release"
Don Garrett73148e52018-08-17 16:54:46 -070044 tags: "cbb_display_label:MockLabel"
Mike Frysinger62a02452021-03-16 03:48:34 -040045 properties: "cbb_branch:main"
Mike Nichols9e47e842020-08-11 15:23:56 -060046 properties: "cbb_config:amd64-generic-release"
Don Garrett73148e52018-08-17 16:54:46 -070047 properties: "cbb_display_label:MockLabel"
Don Garrettbe3608b2018-06-05 17:10:09 -070048 properties: "cbb_extra_args:[\\"--buildbot\\"]"
49 }
50}
Mike Frysinger80de5012019-08-01 14:10:53 -040051"""
Don Garrettbe3608b2018-06-05 17:10:09 -070052
53 result = gen_luci_scheduler.genSchedulerJob(build_config)
54 self.assertEqual(result, expected)
55
56 def testGenSchedulerTriggerSimple(self):
57 """Test the trigger creation helper."""
58 trigger_name = 'simple'
59 repo = 'url://repo'
60 refs = ['refs/path']
David Burgercba0d272020-06-24 16:21:26 -060061 path_regexps = ['path/regexps']
Don Garrettbe3608b2018-06-05 17:10:09 -070062 builds = ['test_build']
63
Mike Frysinger80de5012019-08-01 14:10:53 -040064 expected = """
Don Garrettbe3608b2018-06-05 17:10:09 -070065trigger {
66 id: "simple"
Vadim Shtayura6398e002021-01-11 12:02:11 -080067 realm: "cbb-jobs"
Don Garrettbe3608b2018-06-05 17:10:09 -070068 acl_sets: "default"
69 schedule: "with 5m interval"
70 gitiles: {
71 repo: "url://repo"
72 refs: "refs/path"
David Burgercba0d272020-06-24 16:21:26 -060073 path_regexps: "path/regexps"
Don Garrettbe3608b2018-06-05 17:10:09 -070074 }
75 triggers: "test_build"
76}
Mike Frysinger80de5012019-08-01 14:10:53 -040077"""
Don Garrettbe3608b2018-06-05 17:10:09 -070078
79 result = gen_luci_scheduler.genSchedulerTrigger(
David Burgercba0d272020-06-24 16:21:26 -060080 trigger_name, repo, refs, path_regexps, builds)
Don Garrettbe3608b2018-06-05 17:10:09 -070081
82 self.assertEqual(result, expected)
83
84 def testGenSchedulerTriggerComplex(self):
85 """Test the trigger creation helper."""
86 trigger_name = 'complex'
87 repo = 'url://repo'
88 refs = ['refs/path', 'refs/other_path']
89 builds = ['test_build_a', 'test_build_b']
90
Mike Frysinger80de5012019-08-01 14:10:53 -040091 expected = """
Don Garrettbe3608b2018-06-05 17:10:09 -070092trigger {
93 id: "complex"
Vadim Shtayura6398e002021-01-11 12:02:11 -080094 realm: "cbb-jobs"
Don Garrettbe3608b2018-06-05 17:10:09 -070095 acl_sets: "default"
96 schedule: "with 5m interval"
97 gitiles: {
98 repo: "url://repo"
99 refs: "refs/path"
100 refs: "refs/other_path"
101 }
102 triggers: "test_build_a"
103 triggers: "test_build_b"
104}
Mike Frysinger80de5012019-08-01 14:10:53 -0400105"""
Don Garrettbe3608b2018-06-05 17:10:09 -0700106
107 result = gen_luci_scheduler.genSchedulerTrigger(
David Burgercba0d272020-06-24 16:21:26 -0600108 trigger_name, repo, refs, None, builds)
Don Garrettbe3608b2018-06-05 17:10:09 -0700109
110 self.assertEqual(result, expected)
111
Don Garrett8dace272018-07-19 14:07:42 -0700112
113 def testGenSchedulerBranched(self):
114 """Test the job creation helper."""
115 build_config = config_lib_unittest.MockBuildConfig().apply(
116 schedule_branch='mock_branch',
117 schedule='funky schedule',
118 )
119
Mike Frysinger80de5012019-08-01 14:10:53 -0400120 expected = """
Don Garrett8dace272018-07-19 14:07:42 -0700121job {
Mike Nichols9e47e842020-08-11 15:23:56 -0600122 id: "mock_branch-amd64-generic-release"
Vadim Shtayura6398e002021-01-11 12:02:11 -0800123 realm: "cbb-jobs"
Don Garrett8dace272018-07-19 14:07:42 -0700124 acl_sets: "default"
125 schedule: "funky schedule"
126 buildbucket: {
127 server: "cr-buildbucket.appspot.com"
128 bucket: "luci.chromeos.general"
Mike Nichols9e47e842020-08-11 15:23:56 -0600129 builder: "LegacyRelease"
Don Garrett8dace272018-07-19 14:07:42 -0700130 tags: "cbb_branch:mock_branch"
Mike Nichols9e47e842020-08-11 15:23:56 -0600131 tags: "cbb_config:amd64-generic-release"
Don Garrett73148e52018-08-17 16:54:46 -0700132 tags: "cbb_display_label:MockLabel"
Don Garrett8dace272018-07-19 14:07:42 -0700133 properties: "cbb_branch:mock_branch"
Mike Nichols9e47e842020-08-11 15:23:56 -0600134 properties: "cbb_config:amd64-generic-release"
Don Garrett73148e52018-08-17 16:54:46 -0700135 properties: "cbb_display_label:MockLabel"
136 properties: "cbb_extra_args:[\\"--buildbot\\"]"
137 }
138}
Mike Frysinger80de5012019-08-01 14:10:53 -0400139"""
Don Garrett73148e52018-08-17 16:54:46 -0700140
141 result = gen_luci_scheduler.genSchedulerJob(build_config)
142 self.assertEqual(result, expected)
143
144 def testGenSchedulerWorkspaceBranch(self):
145 """Test the job creation helper."""
146 build_config = config_lib_unittest.MockBuildConfig().apply(
147 workspace_branch='work_branch',
148 schedule='funky schedule',
149 )
150
Mike Frysinger80de5012019-08-01 14:10:53 -0400151 expected = """
Don Garrett73148e52018-08-17 16:54:46 -0700152job {
Mike Nichols9e47e842020-08-11 15:23:56 -0600153 id: "amd64-generic-release"
Vadim Shtayura6398e002021-01-11 12:02:11 -0800154 realm: "cbb-jobs"
Don Garrett73148e52018-08-17 16:54:46 -0700155 acl_sets: "default"
156 schedule: "funky schedule"
157 buildbucket: {
158 server: "cr-buildbucket.appspot.com"
159 bucket: "luci.chromeos.general"
Mike Nichols9e47e842020-08-11 15:23:56 -0600160 builder: "LegacyRelease"
Mike Frysinger62a02452021-03-16 03:48:34 -0400161 tags: "cbb_branch:main"
Mike Nichols9e47e842020-08-11 15:23:56 -0600162 tags: "cbb_config:amd64-generic-release"
Don Garrett73148e52018-08-17 16:54:46 -0700163 tags: "cbb_display_label:MockLabel"
164 tags: "cbb_workspace_branch:work_branch"
Mike Frysinger62a02452021-03-16 03:48:34 -0400165 properties: "cbb_branch:main"
Mike Nichols9e47e842020-08-11 15:23:56 -0600166 properties: "cbb_config:amd64-generic-release"
Don Garrett73148e52018-08-17 16:54:46 -0700167 properties: "cbb_display_label:MockLabel"
168 properties: "cbb_workspace_branch:work_branch"
Don Garrett8dace272018-07-19 14:07:42 -0700169 properties: "cbb_extra_args:[\\"--buildbot\\"]"
170 }
171}
Mike Frysinger80de5012019-08-01 14:10:53 -0400172"""
Don Garrett8dace272018-07-19 14:07:42 -0700173
174 result = gen_luci_scheduler.genSchedulerJob(build_config)
175 self.assertEqual(result, expected)
176
Yoshisato Yanagisawa16285b42018-09-19 14:00:58 +0900177 def testGenSchedulerGomaClientType(self):
178 """Test the job creation helper."""
179 build_config = config_lib_unittest.MockBuildConfig().apply(
180 goma_client_type='client_type',
181 schedule='funky schedule',
182 )
183
Mike Frysinger80de5012019-08-01 14:10:53 -0400184 expected = """
Yoshisato Yanagisawa16285b42018-09-19 14:00:58 +0900185job {
Mike Nichols9e47e842020-08-11 15:23:56 -0600186 id: "amd64-generic-release"
Vadim Shtayura6398e002021-01-11 12:02:11 -0800187 realm: "cbb-jobs"
Yoshisato Yanagisawa16285b42018-09-19 14:00:58 +0900188 acl_sets: "default"
189 schedule: "funky schedule"
190 buildbucket: {
191 server: "cr-buildbucket.appspot.com"
192 bucket: "luci.chromeos.general"
Mike Nichols9e47e842020-08-11 15:23:56 -0600193 builder: "LegacyRelease"
Mike Frysinger62a02452021-03-16 03:48:34 -0400194 tags: "cbb_branch:main"
Mike Nichols9e47e842020-08-11 15:23:56 -0600195 tags: "cbb_config:amd64-generic-release"
Yoshisato Yanagisawa16285b42018-09-19 14:00:58 +0900196 tags: "cbb_display_label:MockLabel"
197 tags: "cbb_goma_client_type:client_type"
Mike Frysinger62a02452021-03-16 03:48:34 -0400198 properties: "cbb_branch:main"
Mike Nichols9e47e842020-08-11 15:23:56 -0600199 properties: "cbb_config:amd64-generic-release"
Yoshisato Yanagisawa16285b42018-09-19 14:00:58 +0900200 properties: "cbb_display_label:MockLabel"
201 properties: "cbb_goma_client_type:client_type"
202 properties: "cbb_extra_args:[\\"--buildbot\\"]"
203 }
204}
Mike Frysinger80de5012019-08-01 14:10:53 -0400205"""
Yoshisato Yanagisawa16285b42018-09-19 14:00:58 +0900206
207 result = gen_luci_scheduler.genSchedulerJob(build_config)
208 self.assertEqual(result, expected)
209
Don Garrettbe3608b2018-06-05 17:10:09 -0700210 def testGenLuciSchedulerConfig(self):
211 """Test a full LUCI Scheduler config file."""
212 site_config = config_lib.SiteConfig()
213
214 site_config.Add(
215 'not_scheduled',
Mike Nichols9e47e842020-08-11 15:23:56 -0600216 luci_builder='ReleaseBuilder',
Don Garrettbe3608b2018-06-05 17:10:09 -0700217 display_label='MockLabel',
218 )
219
220 site_config.Add(
221 'build_prod',
Mike Nichols9e47e842020-08-11 15:23:56 -0600222 luci_builder='ReleaseBuilder',
Don Garrettbe3608b2018-06-05 17:10:09 -0700223 display_label='MockLabel',
224 schedule='run once in a while',
225 )
226
227 site_config.Add(
228 'build_tester',
229 luci_builder='TestBuilder',
230 display_label='TestLabel',
231 schedule='run daily',
232 )
233
234 site_config.Add(
235 'build_triggered_a',
Mike Nichols9e47e842020-08-11 15:23:56 -0600236 luci_builder='ReleaseBuilder',
Don Garrettbe3608b2018-06-05 17:10:09 -0700237 display_label='MockLabel',
238 schedule='triggered',
239 triggered_gitiles=[[
240 'gitiles_url_a',
241 ['ref_a', 'ref_b'],
242 ], [
243 'gitiles_url_b',
244 ['ref_c'],
245 ]],
246 )
247
248 site_config.Add(
249 'build_triggered_b',
250 luci_builder='ProdBuilder',
251 display_label='MockLabel',
252 schedule='triggered',
253 triggered_gitiles=[[
254 'gitiles_url_b',
255 ['ref_c'],
256 ]],
257 )
258
Don Garrett8dace272018-07-19 14:07:42 -0700259 default_config = config_lib.GetConfig().GetDefault()
260
261 branch_configs = [
262 default_config.derive(
263 name='branch_tester',
264 luci_builder='TestBuilder',
265 display_label='TestLabel',
266 schedule='run daily',
267 schedule_branch='test-branch',
268 ),
Don Garrett9a0d90c2018-10-30 12:47:14 -0700269 default_config.derive(
270 name='branch_tester_triggered',
271 luci_builder='TestBuilder',
272 display_label='TestLabel',
273 schedule='run daily',
274 schedule_branch='test-branch',
275 triggered_gitiles=[[
276 'gitiles_url_a',
277 ['ref_a', 'ref_b'],
278 ]],
279 ),
Don Garrett8dace272018-07-19 14:07:42 -0700280 ]
281
Mike Frysinger80de5012019-08-01 14:10:53 -0400282 expected = """# Defines buckets on luci-scheduler.appspot.com.
Don Garrettbe3608b2018-06-05 17:10:09 -0700283#
284# For schema of this file and documentation see ProjectConfig message in
Mike Frysinger92dc6492021-02-17 16:01:09 -0500285# https://github.com/luci/luci-go/blob/HEAD/scheduler/appengine/messages/config.proto
Don Garrettbe3608b2018-06-05 17:10:09 -0700286
287# Generated with chromite/scripts/gen_luci_scheduler
288
Don Garrettff45f4b2018-10-04 09:08:01 -0700289# Autodeployed with:
Mike Nicholsb575c612021-04-09 10:04:43 -0600290# https://data.corp.google.com/sites/chromeos_ci_cros_ci_builds/utility/?f=board_name:in:luci-scheduler-updater
Don Garrettff45f4b2018-10-04 09:08:01 -0700291
Don Garrettbe3608b2018-06-05 17:10:09 -0700292acl_sets {
293 name: "default"
294 acls {
295 role: READER
296 granted_to: "group:googlers"
297 }
298 acls {
299 role: OWNER
300 granted_to: "group:project-chromeos-admins"
301 }
Jason D. Clintona9e374a2018-10-18 18:41:00 -0600302 acls {
303 role: TRIGGERER
304 granted_to: "group:mdb/chromeos-build-access"
LaMont Jones48ddfd92020-09-16 13:46:41 -0600305 }
306 acls {
307 role: TRIGGERER
LaMont Jonesd1bb0002020-09-16 09:35:10 -0600308 granted_to: "group:project-chromeos-buildbucket-schedulers"
Jason D. Clintona9e374a2018-10-18 18:41:00 -0600309 }
Don Garrettbe3608b2018-06-05 17:10:09 -0700310}
311
312trigger {
313 id: "trigger_0"
Vadim Shtayura6398e002021-01-11 12:02:11 -0800314 realm: "cbb-jobs"
Don Garrettbe3608b2018-06-05 17:10:09 -0700315 acl_sets: "default"
316 schedule: "with 5m interval"
317 gitiles: {
318 repo: "gitiles_url_a"
319 refs: "ref_a"
320 refs: "ref_b"
321 }
322 triggers: "build_triggered_a"
Don Garrett9a0d90c2018-10-30 12:47:14 -0700323 triggers: "test-branch-branch_tester_triggered"
Don Garrettbe3608b2018-06-05 17:10:09 -0700324}
325
326trigger {
327 id: "trigger_1"
Vadim Shtayura6398e002021-01-11 12:02:11 -0800328 realm: "cbb-jobs"
Don Garrettbe3608b2018-06-05 17:10:09 -0700329 acl_sets: "default"
330 schedule: "with 5m interval"
331 gitiles: {
332 repo: "gitiles_url_b"
333 refs: "ref_c"
334 }
335 triggers: "build_triggered_a"
336 triggers: "build_triggered_b"
337}
338
339job {
340 id: "build_prod"
Vadim Shtayura6398e002021-01-11 12:02:11 -0800341 realm: "cbb-jobs"
Don Garrettbe3608b2018-06-05 17:10:09 -0700342 acl_sets: "default"
343 schedule: "run once in a while"
344 buildbucket: {
345 server: "cr-buildbucket.appspot.com"
346 bucket: "luci.chromeos.general"
Mike Nichols9e47e842020-08-11 15:23:56 -0600347 builder: "ReleaseBuilder"
Mike Frysinger62a02452021-03-16 03:48:34 -0400348 tags: "cbb_branch:main"
Don Garrettbe3608b2018-06-05 17:10:09 -0700349 tags: "cbb_config:build_prod"
Don Garrett73148e52018-08-17 16:54:46 -0700350 tags: "cbb_display_label:MockLabel"
Mike Frysinger62a02452021-03-16 03:48:34 -0400351 properties: "cbb_branch:main"
Don Garrettbe3608b2018-06-05 17:10:09 -0700352 properties: "cbb_config:build_prod"
Don Garrett73148e52018-08-17 16:54:46 -0700353 properties: "cbb_display_label:MockLabel"
Don Garrettbe3608b2018-06-05 17:10:09 -0700354 properties: "cbb_extra_args:[\\"--buildbot\\"]"
355 }
356}
357
358job {
359 id: "build_tester"
Vadim Shtayura6398e002021-01-11 12:02:11 -0800360 realm: "cbb-jobs"
Don Garrettbe3608b2018-06-05 17:10:09 -0700361 acl_sets: "default"
362 schedule: "run daily"
363 buildbucket: {
364 server: "cr-buildbucket.appspot.com"
365 bucket: "luci.chromeos.general"
366 builder: "TestBuilder"
Mike Frysinger62a02452021-03-16 03:48:34 -0400367 tags: "cbb_branch:main"
Don Garrettbe3608b2018-06-05 17:10:09 -0700368 tags: "cbb_config:build_tester"
Don Garrett73148e52018-08-17 16:54:46 -0700369 tags: "cbb_display_label:TestLabel"
Mike Frysinger62a02452021-03-16 03:48:34 -0400370 properties: "cbb_branch:main"
Don Garrettbe3608b2018-06-05 17:10:09 -0700371 properties: "cbb_config:build_tester"
Don Garrett73148e52018-08-17 16:54:46 -0700372 properties: "cbb_display_label:TestLabel"
Don Garrettbe3608b2018-06-05 17:10:09 -0700373 properties: "cbb_extra_args:[\\"--buildbot\\"]"
374 }
375}
376
377job {
378 id: "build_triggered_a"
Vadim Shtayura6398e002021-01-11 12:02:11 -0800379 realm: "cbb-jobs"
Don Garrettbe3608b2018-06-05 17:10:09 -0700380 acl_sets: "default"
381 schedule: "triggered"
382 buildbucket: {
383 server: "cr-buildbucket.appspot.com"
384 bucket: "luci.chromeos.general"
Mike Nichols9e47e842020-08-11 15:23:56 -0600385 builder: "ReleaseBuilder"
Mike Frysinger62a02452021-03-16 03:48:34 -0400386 tags: "cbb_branch:main"
Don Garrettbe3608b2018-06-05 17:10:09 -0700387 tags: "cbb_config:build_triggered_a"
Don Garrett73148e52018-08-17 16:54:46 -0700388 tags: "cbb_display_label:MockLabel"
Mike Frysinger62a02452021-03-16 03:48:34 -0400389 properties: "cbb_branch:main"
Don Garrettbe3608b2018-06-05 17:10:09 -0700390 properties: "cbb_config:build_triggered_a"
Don Garrett73148e52018-08-17 16:54:46 -0700391 properties: "cbb_display_label:MockLabel"
Don Garrettbe3608b2018-06-05 17:10:09 -0700392 properties: "cbb_extra_args:[\\"--buildbot\\"]"
393 }
394}
395
396job {
397 id: "build_triggered_b"
Vadim Shtayura6398e002021-01-11 12:02:11 -0800398 realm: "cbb-jobs"
Don Garrettbe3608b2018-06-05 17:10:09 -0700399 acl_sets: "default"
400 schedule: "triggered"
401 buildbucket: {
402 server: "cr-buildbucket.appspot.com"
403 bucket: "luci.chromeos.general"
404 builder: "ProdBuilder"
Mike Frysinger62a02452021-03-16 03:48:34 -0400405 tags: "cbb_branch:main"
Don Garrettbe3608b2018-06-05 17:10:09 -0700406 tags: "cbb_config:build_triggered_b"
Don Garrett73148e52018-08-17 16:54:46 -0700407 tags: "cbb_display_label:MockLabel"
Mike Frysinger62a02452021-03-16 03:48:34 -0400408 properties: "cbb_branch:main"
Don Garrettbe3608b2018-06-05 17:10:09 -0700409 properties: "cbb_config:build_triggered_b"
Don Garrett73148e52018-08-17 16:54:46 -0700410 properties: "cbb_display_label:MockLabel"
Don Garrettbe3608b2018-06-05 17:10:09 -0700411 properties: "cbb_extra_args:[\\"--buildbot\\"]"
412 }
413}
Don Garrett8dace272018-07-19 14:07:42 -0700414
415job {
416 id: "test-branch-branch_tester"
Vadim Shtayura6398e002021-01-11 12:02:11 -0800417 realm: "cbb-jobs"
Don Garrett8dace272018-07-19 14:07:42 -0700418 acl_sets: "default"
419 schedule: "run daily"
420 buildbucket: {
421 server: "cr-buildbucket.appspot.com"
422 bucket: "luci.chromeos.general"
423 builder: "TestBuilder"
424 tags: "cbb_branch:test-branch"
Don Garrett8dace272018-07-19 14:07:42 -0700425 tags: "cbb_config:branch_tester"
Don Garrett73148e52018-08-17 16:54:46 -0700426 tags: "cbb_display_label:TestLabel"
Don Garrett8dace272018-07-19 14:07:42 -0700427 properties: "cbb_branch:test-branch"
Don Garrett8dace272018-07-19 14:07:42 -0700428 properties: "cbb_config:branch_tester"
Don Garrett73148e52018-08-17 16:54:46 -0700429 properties: "cbb_display_label:TestLabel"
Don Garrett8dace272018-07-19 14:07:42 -0700430 properties: "cbb_extra_args:[\\"--buildbot\\"]"
431 }
432}
Don Garrett9a0d90c2018-10-30 12:47:14 -0700433
434job {
435 id: "test-branch-branch_tester_triggered"
Vadim Shtayura6398e002021-01-11 12:02:11 -0800436 realm: "cbb-jobs"
Don Garrett9a0d90c2018-10-30 12:47:14 -0700437 acl_sets: "default"
438 schedule: "run daily"
439 buildbucket: {
440 server: "cr-buildbucket.appspot.com"
441 bucket: "luci.chromeos.general"
442 builder: "TestBuilder"
443 tags: "cbb_branch:test-branch"
444 tags: "cbb_config:branch_tester_triggered"
445 tags: "cbb_display_label:TestLabel"
446 properties: "cbb_branch:test-branch"
447 properties: "cbb_config:branch_tester_triggered"
448 properties: "cbb_display_label:TestLabel"
449 properties: "cbb_extra_args:[\\"--buildbot\\"]"
450 }
451}
Mike Frysinger80de5012019-08-01 14:10:53 -0400452"""
Don Garrett8dace272018-07-19 14:07:42 -0700453 result = gen_luci_scheduler.genLuciSchedulerConfig(
454 site_config, branch_configs)
Don Garrettbe3608b2018-06-05 17:10:09 -0700455
456 self.assertEqual(result, expected)