blob: 9564c64a19654a285823396c358ba7d84718f421 [file] [log] [blame]
Kailash8b8de742019-07-30 08:54:51 -07001---
2# voltha 2.0 tests
3
4- project:
5 name: voltha-e2e
6
7 project-name: '{name}'
8
9 jobs:
hwchiu14f97852019-10-08 10:51:11 -070010 - 'voltha-periodic-test':
Andy Bavier218385e2019-11-13 09:51:38 -070011 name: 'periodic-voltha-sanity-test'
Andy Bavier4c8b3232019-11-22 16:17:47 -070012 build-node: 'qct-pod4-node2'
Andy Bavieraaa60f72019-09-20 09:11:21 -070013 default-image-tag: 'master'
Andy Bavier4c8b3232019-11-22 16:17:47 -070014 code-branch: 'master'
Andy Bavier218385e2019-11-13 09:51:38 -070015 make-target: sanity-multi-kind
16 onus: 2
17 pons: 2
18 time-trigger: "H H/3 * * *"
19
20 - 'voltha-periodic-test':
hwchiufdc49242019-11-18 16:37:22 -080021 name: 'periodic-voltha-system-test'
22 pipeline-script: 'voltha-system-test-bbsim.groovy'
hwchiuc7d5d032019-12-03 16:42:47 -080023 build-node: 'ubuntu16.04-basebuild-4c-8g'
hwchiufdc49242019-11-18 16:37:22 -080024 default-image-tag: 'master'
hwchiuc9189b72019-12-02 15:12:29 -080025 code-branch: 'master'
hwchiuc7d5d032019-12-03 16:42:47 -080026 make-target: sanity-single-kind
hwchiufdc49242019-11-18 16:37:22 -080027 onus: 2
28 pons: 2
29 time-trigger: "H H/12 * * *"
30
31 - 'voltha-periodic-test':
Andy Bavier3708d072019-12-10 15:22:18 -070032 name: 'periodic-voltha-sanity-test-multi-runs'
33 build-node: 'qct-pod4-node2'
34 default-image-tag: 'master'
35 code-branch: 'master'
Andy Bavier529888d2019-12-11 16:55:34 -070036 make-target: sanity-kind
Andy Bavier3708d072019-12-10 15:22:18 -070037 onus: 1
38 pons: 1
39 test-runs: 5
40 time-trigger: "H H/3 * * *"
41
42 - 'voltha-periodic-test':
Andy Bavier218385e2019-11-13 09:51:38 -070043 name: 'periodic-voltha-scale-test'
Andy Bavier4c8b3232019-11-22 16:17:47 -070044 build-node: 'qct-pod4-node2'
Andy Bavier218385e2019-11-13 09:51:38 -070045 default-image-tag: 'master'
Andy Bavier4c8b3232019-11-22 16:17:47 -070046 code-branch: 'master'
Andy Bavier218385e2019-11-13 09:51:38 -070047 make-target: scale-multi-kind
48 onus: 2
49 pons: 8
Andy Bavier3708d072019-12-10 15:22:18 -070050 robot-args: '-v teardown_device:False'
Andy Bavier218385e2019-11-13 09:51:38 -070051 time-trigger: "H H/3 * * *"
Kailashaad71012019-08-27 10:36:53 -070052
Andy Bavierbf68c5e2019-10-25 15:05:28 -070053 # Per-patchset Pod builds on Tucson pod
Andy Baviere9916452019-11-06 12:32:47 -070054 - 'verify_physical_voltha_patchset':
Andy Bavier19c98a22019-11-11 13:57:11 -070055 name: 'verify_physical_voltha_patchset'
Andy Bavierbf68c5e2019-10-25 15:05:28 -070056 testvm: 'tucson-pod'
57 config-pod: 'tucson-pod'
58 branch: 'master'
Andy Bavierfc4dcc42019-11-18 15:33:52 -070059 oltDebVersion: 'openolt_asfvolt16.deb'
Andy Bavierbf68c5e2019-10-25 15:05:28 -070060 profile: 'Default'
Andy Bavier19c98a22019-11-11 13:57:11 -070061 withPatchset: true
62
63 # Manual build job for Tucson pod
64 # Allow local testing without disrupting above job
Andy Bavier61c5b2a2019-11-12 12:08:19 -070065 - 'build_physical_voltha_manual':
Andy Bavier19c98a22019-11-11 13:57:11 -070066 name: 'build_tucson-pod_manual'
67 testvm: 'tucson-pod'
68 config-pod: 'tucson-pod'
69 branch: 'master'
Andy Bavierfc4dcc42019-11-18 15:33:52 -070070 oltDebVersion: 'openolt_asfvolt16.deb'
Andy Bavier19c98a22019-11-11 13:57:11 -070071 profile: 'Default'
72 withPatchset: false
Andy Bavierbf68c5e2019-10-25 15:05:28 -070073
Kailash8b8de742019-07-30 08:54:51 -070074- job-template:
Kailashaad71012019-08-27 10:36:53 -070075 id: 'voltha-periodic-test'
76 name: '{name}'
Andy Bavier4c8b3232019-11-22 16:17:47 -070077 pipeline-script: 'voltha-go-tests.groovy'
Andy Bavier3708d072019-12-10 15:22:18 -070078 test-runs: 1
79 robot-args: ''
Kailash8b8de742019-07-30 08:54:51 -070080
81 description: |
82 <!-- Managed by Jenkins Job Builder -->
83 Created by {id} job-template from ci-management/jjb/voltha-e2e.yaml <br /><br />
84 E2E Validation for Voltha 2.X
85
86 properties:
87 - cord-infra-properties:
88 build-days-to-keep: '{build-days-to-keep}'
89 artifact-num-to-keep: '{artifact-num-to-keep}'
90
91 wrappers:
92 - lf-infra-wrappers:
93 build-timeout: '{build-timeout}'
94 jenkins-ssh-credential: '{jenkins-ssh-credential}'
95
96 parameters:
97 - string:
Zack Williamsb3292082019-10-11 17:15:18 -070098 name: buildNode
Andy Bavier833b78e2019-11-22 17:01:31 -070099 default: '{build-node}'
Kailash8b8de742019-07-30 08:54:51 -0700100 description: 'Name of the Jenkins node to run the job on'
101
102 - string:
Andy Bavierea26c5c2019-09-18 08:09:17 -0700103 name: extraHelmFlags
Andy Bavier218385e2019-11-13 09:51:38 -0700104 default: '--set defaults.image_tag={default-image-tag},onu={onus},pon={pons}'
Andy Bavierea26c5c2019-09-18 08:09:17 -0700105 description: 'Helm flags to pass to ./voltha up'
106
Andy Bavierdabe9fc2019-10-24 17:10:48 -0700107 - string:
Andy Bavier218385e2019-11-13 09:51:38 -0700108 name: makeTarget
109 default: '{make-target}'
110 description: 'Makefile target to invoke during test'
Andy Bavierdabe9fc2019-10-24 17:10:48 -0700111
Andy Bavier4c8b3232019-11-22 16:17:47 -0700112 - string:
113 name: manifestUrl
114 default: '{gerrit-server-url}/{voltha-test-manifest-repo}'
115 description: 'Repo manifest URL for code checkout (so we can display changes in Jenkins)'
116
117 - string:
118 name: manifestBranch
119 default: '{code-branch}'
120 description: 'Repo manifest branch for code checkout (so we can display changes in Jenkins)'
121
Andy Bavier3708d072019-12-10 15:22:18 -0700122 - string:
123 name: testRuns
124 default: '{test-runs}'
125 description: 'How many times to repeat the tests'
126
127 - string:
128 name: extraRobotArgs
129 default: '{robot-args}'
130 description: 'Arguments to pass to robot'
131
132
Kailash8b8de742019-07-30 08:54:51 -0700133 project-type: pipeline
Andy Bavier358aa0b2019-11-22 11:55:39 -0700134 concurrent: true
Kailash8b8de742019-07-30 08:54:51 -0700135
Zack Williamsb3292082019-10-11 17:15:18 -0700136 dsl: !include-raw-escape: pipeline/{pipeline-script}
Kailash6be1aa92019-08-05 18:11:11 -0700137
138 triggers:
hwchiu14f97852019-10-08 10:51:11 -0700139 - timed: |
Kailash6be1aa92019-08-05 18:11:11 -0700140 TZ=America/Los_Angeles
Andy Bavier218385e2019-11-13 09:51:38 -0700141 {time-trigger}
Kailashaad71012019-08-27 10:36:53 -0700142
143- job-template:
144 id: 'voltha-patch-test'
Andy Bavier4f7fbea2019-11-21 14:38:47 -0700145 name: 'verify_{project}_sanity-test'
146 extra-helm-flags: '--set defaults.image_tag=$GERRIT_BRANCH'
Kailashaad71012019-08-27 10:36:53 -0700147
148 description: |
149 <!-- Managed by Jenkins Job Builder -->
150 Created by {id} job-template from ci-management/jjb/voltha-e2e.yaml <br /><br />
151 E2E Validation for Voltha 2.X
152
153 properties:
154 - cord-infra-properties:
155 build-days-to-keep: '{build-days-to-keep}'
156 artifact-num-to-keep: '{artifact-num-to-keep}'
157
158 wrappers:
159 - lf-infra-wrappers:
160 build-timeout: '{build-timeout}'
161 jenkins-ssh-credential: '{jenkins-ssh-credential}'
162
163 parameters:
164 - string:
Zack Williamsb3292082019-10-11 17:15:18 -0700165 name: buildNode
Kailashaad71012019-08-27 10:36:53 -0700166 default: 'ubuntu16.04-basebuild-4c-8g'
167 description: 'Name of the Jenkins node to run the job on'
168
169 - string:
170 name: manifestUrl
171 default: '{gerrit-server-url}/{voltha-test-manifest-repo}'
172 description: 'URL to the repo manifest'
173
174 - string:
hwchiu14f97852019-10-08 10:51:11 -0700175 name: manifestBranch
176 default: '$GERRIT_BRANCH'
177 description: 'Name of the repo branch to use'
Kailashaad71012019-08-27 10:36:53 -0700178
179 - string:
hwchiu14f97852019-10-08 10:51:11 -0700180 name: gerritProject
181 default: '$GERRIT_PROJECT'
182 description: 'Name of the Gerrit project'
Kailashaad71012019-08-27 10:36:53 -0700183
184 - string:
hwchiu14f97852019-10-08 10:51:11 -0700185 name: gerritChangeNumber
186 default: '$GERRIT_CHANGE_NUMBER'
187 description: 'Changeset number in Gerrit'
Kailashaad71012019-08-27 10:36:53 -0700188
189 - string:
hwchiu14f97852019-10-08 10:51:11 -0700190 name: gerritPatchsetNumber
191 default: '$GERRIT_PATCHSET_NUMBER'
192 description: 'PatchSet number in Gerrit'
Kailashaad71012019-08-27 10:36:53 -0700193
194 - string:
Andy Bavierbedd0392019-10-16 13:58:18 -0700195 name: extraHelmFlags
Andy Bavier4f7fbea2019-11-21 14:38:47 -0700196 default: '{extra-helm-flags}'
Andy Bavierbedd0392019-10-16 13:58:18 -0700197 description: 'Helm flags to pass to ./voltha up'
198
Kailashaad71012019-08-27 10:36:53 -0700199 project-type: pipeline
Kailashb59bc7f2019-09-03 13:13:27 -0700200 concurrent: true
Kailashaad71012019-08-27 10:36:53 -0700201
Zack Williamsb3292082019-10-11 17:15:18 -0700202 dsl: !include-raw-escape: pipeline/{pipeline-script}
Kailashaad71012019-08-27 10:36:53 -0700203
204 triggers:
205 - cord-infra-gerrit-trigger-patchset:
206 gerrit-server-name: '{gerrit-server-name}'
Kailash53d86722019-09-05 09:08:41 -0700207 project-regexp: '^{project}$'
208 branch-regexp: '{branch-regexp}'
Kailashaad71012019-08-27 10:36:53 -0700209 dependency-jobs: '{dependency-jobs}'
210 file-include-regexp: '{all-files-regexp}'
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700211
212# POD Per Patchset Pipeline Jobs
213
214- job-template:
Andy Bavier19c98a22019-11-11 13:57:11 -0700215 name: '{name}'
Andy Baviere9916452019-11-06 12:32:47 -0700216 id: verify_physical_voltha_patchset
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700217 description: |
218 <!-- Managed by Jenkins Job Builder -->
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700219 Automated build on POD {config-pod} using {pipeline-script} <br /><br />
Andy Baviere9916452019-11-06 12:32:47 -0700220 Created from job-template {id} from ci-management/jjb/voltha-e2e.yaml <br />
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700221 Created by Andy Bavier, andy@opennetworking.org <br />
222 Copyright (c) 2019 Open Networking Foundation (ONF)
223 project-type: pipeline
224 sandbox: true
Andy Bavier358aa0b2019-11-22 11:55:39 -0700225 pipeline-script: 'voltha-physical-build-and-tests.groovy'
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700226
227 properties:
228 - cord-infra-properties:
229 build-days-to-keep: '{build-days-to-keep}'
230 artifact-num-to-keep: '{artifact-num-to-keep}'
231
232 parameters:
233 - string:
Andy Bavier97ebbba2019-11-08 10:47:46 -0700234 name: buildNode
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700235 default: '{testvm}'
Andy Bavier97ebbba2019-11-08 10:47:46 -0700236 description: 'Pod management node'
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700237
238 - string:
239 name: manifestUrl
240 default: '{gerrit-server-url}/{voltha-test-manifest-repo}'
241 description: 'URL to the repo manifest'
242
243 - string:
244 name: manifestBranch
245 default: '$GERRIT_BRANCH'
246 description: 'Name of the repo branch to use'
247
248 - string:
249 name: gerritProject
250 default: '$GERRIT_PROJECT'
251 description: 'Name of the Gerrit project'
252
253 - string:
254 name: gerritChangeNumber
255 default: '$GERRIT_CHANGE_NUMBER'
256 description: 'Changeset number in Gerrit'
257
258 - string:
259 name: gerritPatchsetNumber
260 default: '$GERRIT_PATCHSET_NUMBER'
261 description: 'PatchSet number in Gerrit'
262
263 - string:
264 name: cordRepoUrl
265 default: '{gerrit-server-url}'
266 description: 'The URL of the CORD Project repository'
267
268 - string:
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700269 name: podName
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700270 default: '{config-pod}'
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700271
272 - string:
273 name: deploymentConfigFile
274 default: 'pod-configs/deployment-configs/{config-pod}.yaml'
275 description: 'Path of deployment config file'
276
277 - string:
278 name: kindVolthaValuesFile
279 default: 'pod-configs/kubernetes-configs/voltha/{config-pod}.yml'
280 description: 'Path of kind-voltha values override file'
281
282 - string:
283 name: sadisConfigFile
284 default: 'voltha/voltha-system-tests/tests/data/{config-pod}-sadis.json'
285 description: 'Path of SADIS config to load'
286
287 - string:
288 name: localConfigDir
289 default: null
290 description: 'If specified, config file paths are relative to this dir; otherwise $WORKSPACE'
291
292 - string:
293 name: configRepo
294 default: 'pod-configs'
295 description: 'A repository containing the config files, will be checked out if specified'
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700296
297 - string:
298 name: oltDebVersion
299 default: '{oltDebVersion}'
300 description: 'OLT Software version to install'
301
302 - string:
303 name: branch
304 default: '{branch}'
305
306 - string:
307 name: profile
308 default: '{profile}'
309 description: 'Technology Profile pushed to the ETCD'
310
311 - string:
312 name: notificationEmail
313 default: 'andy@opennetworking.org'
314 description: ''
315
316 - bool:
317 name: reinstallOlt
318 default: true
319 description: "Re-install OLT software"
320
Andy Bavier19c98a22019-11-11 13:57:11 -0700321 - bool:
322 name: withPatchset
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700323 default: true
324 description: "Build with Gerrit patchset"
Andy Bavier19c98a22019-11-11 13:57:11 -0700325
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700326 project-type: pipeline
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700327 concurrent: true
328
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700329 dsl: !include-raw-escape: pipeline/{pipeline-script}
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700330
Andy Bavier1f465592019-11-06 10:03:56 -0700331 triggers:
332 - gerrit:
333 server-name: '{gerrit-server-name}'
334 dependency-jobs: '{dependency-jobs}'
335 silent-start: false
336 successful-message: "PASSED hardware test"
337 failure-message: "FAILED hardware test"
338 unstable-message: "UNSTABLE hardware test"
339 trigger-on:
340 - comment-added-contains-event:
341 comment-contains-value: '^hardware test$'
Andy Baviercf802552019-12-05 14:14:59 -0700342 - comment-added-event:
343 approval-category: 'Code-Review'
344 approval-value: '+2'
Andy Bavier1f465592019-11-06 10:03:56 -0700345 projects:
346 - project-compare-type: REG_EXP
Zack Williamse65b1ee2019-12-09 15:57:16 -0700347 project-pattern: '^(voltha-go|voltha-openolt-adapter|voltha-openonu-adapter|voltha-api-server|voltha-system-tests|ofagent-py)$'
Andy Bavier1f465592019-11-06 10:03:56 -0700348 branches:
349 - branch-compare-type: PLAIN
350 branch-pattern: 'master'
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700351
352- job-template:
353 name: '{name}'
354 id: build_physical_voltha_manual
355 description: |
356 <!-- Managed by Jenkins Job Builder -->
357 Automated build on POD {config-pod} using {pipeline-script} <br /><br />
358 Created from job-template {id} from ci-management/jjb/voltha-e2e.yaml <br />
359 Created by Andy Bavier, andy@opennetworking.org <br />
360 Copyright (c) 2019 Open Networking Foundation (ONF)
361 project-type: pipeline
362 sandbox: true
Andy Bavier358aa0b2019-11-22 11:55:39 -0700363 pipeline-script: 'voltha-physical-build-and-tests.groovy'
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700364
365 properties:
366 - cord-infra-properties:
367 build-days-to-keep: '{build-days-to-keep}'
368 artifact-num-to-keep: '{artifact-num-to-keep}'
369
370 parameters:
371 - string:
372 name: buildNode
373 default: '{testvm}'
374 description: 'Pod management node'
375
376 - string:
377 name: manifestUrl
378 default: '{gerrit-server-url}/{voltha-test-manifest-repo}'
379 description: 'URL to the repo manifest'
380
381 - string:
382 name: manifestBranch
Andy Bavier06d816c2019-11-19 11:40:48 -0700383 default: 'master'
384 description: 'Name of the repo branch to use (change to $GERRIT_BRANCH if testing a patchset)'
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700385
386 - string:
387 name: gerritProject
388 default: '$GERRIT_PROJECT'
389 description: 'Name of the Gerrit project'
390
391 - string:
392 name: gerritChangeNumber
393 default: '$GERRIT_CHANGE_NUMBER'
394 description: 'Changeset number in Gerrit'
395
396 - string:
397 name: gerritPatchsetNumber
398 default: '$GERRIT_PATCHSET_NUMBER'
399 description: 'PatchSet number in Gerrit'
400
401 - string:
402 name: cordRepoUrl
403 default: '{gerrit-server-url}'
404 description: 'The URL of the CORD Project repository'
405
406 - string:
407 name: podName
408 default: '{config-pod}'
409
410 - string:
411 name: deploymentConfigFile
412 default: 'pod-configs/deployment-configs/{config-pod}.yaml'
413 description: 'Path of deployment config file'
414
415 - string:
416 name: kindVolthaValuesFile
417 default: 'pod-configs/kubernetes-configs/voltha/{config-pod}.yml'
418 description: 'Path of kind-voltha values override file'
419
420 - string:
421 name: sadisConfigFile
422 default: 'voltha/voltha-system-tests/tests/data/{config-pod}-sadis.json'
423 description: 'Path of SADIS config to load'
424
425 - string:
426 name: localConfigDir
427 default: null
428 description: 'If specified, config file paths are relative to this dir; otherwise $WORKSPACE'
429
430 - string:
431 name: configRepo
432 default: 'pod-configs'
433 description: 'A repository containing the config files, will be checked out if specified'
434
435 - string:
436 name: oltDebVersion
437 default: '{oltDebVersion}'
438 description: 'OLT Software version to install'
439
440 - string:
441 name: branch
442 default: '{branch}'
443
444 - string:
445 name: profile
446 default: '{profile}'
447 description: 'Technology Profile pushed to the ETCD'
448
449 - string:
450 name: notificationEmail
451 default: 'andy@opennetworking.org'
452 description: ''
453
454 - bool:
455 name: reinstallOlt
456 default: false
457 description: "Re-install OLT software"
458
459 - bool:
460 name: withPatchset
461 default: false
462 description: "Build with Gerrit patchset"
463
464 project-type: pipeline
465 concurrent: true
466
467 dsl: !include-raw-escape: pipeline/{pipeline-script}