blob: 66e736acadd23583e8b9f9ce14a1d36adeb3bd1f [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'
23 default-image-tag: 'master'
hwchiuc9189b72019-12-02 15:12:29 -080024 code-branch: 'master'
hwchiufdc49242019-11-18 16:37:22 -080025 make-target: sanity-multi-kind
26 onus: 2
27 pons: 2
28 time-trigger: "H H/12 * * *"
29
30 - 'voltha-periodic-test':
Andy Bavier218385e2019-11-13 09:51:38 -070031 name: 'periodic-voltha-scale-test'
Andy Bavier4c8b3232019-11-22 16:17:47 -070032 build-node: 'qct-pod4-node2'
Andy Bavier218385e2019-11-13 09:51:38 -070033 default-image-tag: 'master'
Andy Bavier4c8b3232019-11-22 16:17:47 -070034 code-branch: 'master'
Andy Bavier218385e2019-11-13 09:51:38 -070035 make-target: scale-multi-kind
36 onus: 2
37 pons: 8
38 time-trigger: "H H/3 * * *"
Kailashaad71012019-08-27 10:36:53 -070039
Andy Bavierbf68c5e2019-10-25 15:05:28 -070040 # Per-patchset Pod builds on Tucson pod
Andy Baviere9916452019-11-06 12:32:47 -070041 - 'verify_physical_voltha_patchset':
Andy Bavier19c98a22019-11-11 13:57:11 -070042 name: 'verify_physical_voltha_patchset'
Andy Bavierbf68c5e2019-10-25 15:05:28 -070043 testvm: 'tucson-pod'
44 config-pod: 'tucson-pod'
45 branch: 'master'
Andy Bavierfc4dcc42019-11-18 15:33:52 -070046 oltDebVersion: 'openolt_asfvolt16.deb'
Andy Bavierbf68c5e2019-10-25 15:05:28 -070047 profile: 'Default'
Andy Bavier19c98a22019-11-11 13:57:11 -070048 withPatchset: true
49
50 # Manual build job for Tucson pod
51 # Allow local testing without disrupting above job
Andy Bavier61c5b2a2019-11-12 12:08:19 -070052 - 'build_physical_voltha_manual':
Andy Bavier19c98a22019-11-11 13:57:11 -070053 name: 'build_tucson-pod_manual'
54 testvm: 'tucson-pod'
55 config-pod: 'tucson-pod'
56 branch: 'master'
Andy Bavierfc4dcc42019-11-18 15:33:52 -070057 oltDebVersion: 'openolt_asfvolt16.deb'
Andy Bavier19c98a22019-11-11 13:57:11 -070058 profile: 'Default'
59 withPatchset: false
Andy Bavierbf68c5e2019-10-25 15:05:28 -070060
Kailash8b8de742019-07-30 08:54:51 -070061- job-template:
Kailashaad71012019-08-27 10:36:53 -070062 id: 'voltha-periodic-test'
63 name: '{name}'
Andy Bavier4c8b3232019-11-22 16:17:47 -070064 pipeline-script: 'voltha-go-tests.groovy'
Kailash8b8de742019-07-30 08:54:51 -070065
66 description: |
67 <!-- Managed by Jenkins Job Builder -->
68 Created by {id} job-template from ci-management/jjb/voltha-e2e.yaml <br /><br />
69 E2E Validation for Voltha 2.X
70
71 properties:
72 - cord-infra-properties:
73 build-days-to-keep: '{build-days-to-keep}'
74 artifact-num-to-keep: '{artifact-num-to-keep}'
75
76 wrappers:
77 - lf-infra-wrappers:
78 build-timeout: '{build-timeout}'
79 jenkins-ssh-credential: '{jenkins-ssh-credential}'
80
81 parameters:
82 - string:
Zack Williamsb3292082019-10-11 17:15:18 -070083 name: buildNode
Andy Bavier833b78e2019-11-22 17:01:31 -070084 default: '{build-node}'
Kailash8b8de742019-07-30 08:54:51 -070085 description: 'Name of the Jenkins node to run the job on'
86
87 - string:
Andy Bavierea26c5c2019-09-18 08:09:17 -070088 name: extraHelmFlags
Andy Bavier218385e2019-11-13 09:51:38 -070089 default: '--set defaults.image_tag={default-image-tag},onu={onus},pon={pons}'
Andy Bavierea26c5c2019-09-18 08:09:17 -070090 description: 'Helm flags to pass to ./voltha up'
91
Andy Bavierdabe9fc2019-10-24 17:10:48 -070092 - string:
Andy Bavier218385e2019-11-13 09:51:38 -070093 name: makeTarget
94 default: '{make-target}'
95 description: 'Makefile target to invoke during test'
Andy Bavierdabe9fc2019-10-24 17:10:48 -070096
Andy Bavier4c8b3232019-11-22 16:17:47 -070097 - string:
98 name: manifestUrl
99 default: '{gerrit-server-url}/{voltha-test-manifest-repo}'
100 description: 'Repo manifest URL for code checkout (so we can display changes in Jenkins)'
101
102 - string:
103 name: manifestBranch
104 default: '{code-branch}'
105 description: 'Repo manifest branch for code checkout (so we can display changes in Jenkins)'
106
Kailash8b8de742019-07-30 08:54:51 -0700107 project-type: pipeline
Andy Bavier358aa0b2019-11-22 11:55:39 -0700108 concurrent: true
Kailash8b8de742019-07-30 08:54:51 -0700109
Zack Williamsb3292082019-10-11 17:15:18 -0700110 dsl: !include-raw-escape: pipeline/{pipeline-script}
Kailash6be1aa92019-08-05 18:11:11 -0700111
112 triggers:
hwchiu14f97852019-10-08 10:51:11 -0700113 - timed: |
Kailash6be1aa92019-08-05 18:11:11 -0700114 TZ=America/Los_Angeles
Andy Bavier218385e2019-11-13 09:51:38 -0700115 {time-trigger}
Kailashaad71012019-08-27 10:36:53 -0700116
117- job-template:
118 id: 'voltha-patch-test'
Andy Bavier4f7fbea2019-11-21 14:38:47 -0700119 name: 'verify_{project}_sanity-test'
120 extra-helm-flags: '--set defaults.image_tag=$GERRIT_BRANCH'
Kailashaad71012019-08-27 10:36:53 -0700121
122 description: |
123 <!-- Managed by Jenkins Job Builder -->
124 Created by {id} job-template from ci-management/jjb/voltha-e2e.yaml <br /><br />
125 E2E Validation for Voltha 2.X
126
127 properties:
128 - cord-infra-properties:
129 build-days-to-keep: '{build-days-to-keep}'
130 artifact-num-to-keep: '{artifact-num-to-keep}'
131
132 wrappers:
133 - lf-infra-wrappers:
134 build-timeout: '{build-timeout}'
135 jenkins-ssh-credential: '{jenkins-ssh-credential}'
136
137 parameters:
138 - string:
Zack Williamsb3292082019-10-11 17:15:18 -0700139 name: buildNode
Kailashaad71012019-08-27 10:36:53 -0700140 default: 'ubuntu16.04-basebuild-4c-8g'
141 description: 'Name of the Jenkins node to run the job on'
142
143 - string:
144 name: manifestUrl
145 default: '{gerrit-server-url}/{voltha-test-manifest-repo}'
146 description: 'URL to the repo manifest'
147
148 - string:
hwchiu14f97852019-10-08 10:51:11 -0700149 name: manifestBranch
150 default: '$GERRIT_BRANCH'
151 description: 'Name of the repo branch to use'
Kailashaad71012019-08-27 10:36:53 -0700152
153 - string:
hwchiu14f97852019-10-08 10:51:11 -0700154 name: gerritProject
155 default: '$GERRIT_PROJECT'
156 description: 'Name of the Gerrit project'
Kailashaad71012019-08-27 10:36:53 -0700157
158 - string:
hwchiu14f97852019-10-08 10:51:11 -0700159 name: gerritChangeNumber
160 default: '$GERRIT_CHANGE_NUMBER'
161 description: 'Changeset number in Gerrit'
Kailashaad71012019-08-27 10:36:53 -0700162
163 - string:
hwchiu14f97852019-10-08 10:51:11 -0700164 name: gerritPatchsetNumber
165 default: '$GERRIT_PATCHSET_NUMBER'
166 description: 'PatchSet number in Gerrit'
Kailashaad71012019-08-27 10:36:53 -0700167
168 - string:
Andy Bavierbedd0392019-10-16 13:58:18 -0700169 name: extraHelmFlags
Andy Bavier4f7fbea2019-11-21 14:38:47 -0700170 default: '{extra-helm-flags}'
Andy Bavierbedd0392019-10-16 13:58:18 -0700171 description: 'Helm flags to pass to ./voltha up'
172
Kailashaad71012019-08-27 10:36:53 -0700173 project-type: pipeline
Kailashb59bc7f2019-09-03 13:13:27 -0700174 concurrent: true
Kailashaad71012019-08-27 10:36:53 -0700175
Zack Williamsb3292082019-10-11 17:15:18 -0700176 dsl: !include-raw-escape: pipeline/{pipeline-script}
Kailashaad71012019-08-27 10:36:53 -0700177
178 triggers:
179 - cord-infra-gerrit-trigger-patchset:
180 gerrit-server-name: '{gerrit-server-name}'
Kailash53d86722019-09-05 09:08:41 -0700181 project-regexp: '^{project}$'
182 branch-regexp: '{branch-regexp}'
Kailashaad71012019-08-27 10:36:53 -0700183 dependency-jobs: '{dependency-jobs}'
184 file-include-regexp: '{all-files-regexp}'
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700185
186# POD Per Patchset Pipeline Jobs
187
188- job-template:
Andy Bavier19c98a22019-11-11 13:57:11 -0700189 name: '{name}'
Andy Baviere9916452019-11-06 12:32:47 -0700190 id: verify_physical_voltha_patchset
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700191 description: |
192 <!-- Managed by Jenkins Job Builder -->
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700193 Automated build on POD {config-pod} using {pipeline-script} <br /><br />
Andy Baviere9916452019-11-06 12:32:47 -0700194 Created from job-template {id} from ci-management/jjb/voltha-e2e.yaml <br />
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700195 Created by Andy Bavier, andy@opennetworking.org <br />
196 Copyright (c) 2019 Open Networking Foundation (ONF)
197 project-type: pipeline
198 sandbox: true
Andy Bavier358aa0b2019-11-22 11:55:39 -0700199 pipeline-script: 'voltha-physical-build-and-tests.groovy'
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700200
201 properties:
202 - cord-infra-properties:
203 build-days-to-keep: '{build-days-to-keep}'
204 artifact-num-to-keep: '{artifact-num-to-keep}'
205
206 parameters:
207 - string:
Andy Bavier97ebbba2019-11-08 10:47:46 -0700208 name: buildNode
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700209 default: '{testvm}'
Andy Bavier97ebbba2019-11-08 10:47:46 -0700210 description: 'Pod management node'
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700211
212 - string:
213 name: manifestUrl
214 default: '{gerrit-server-url}/{voltha-test-manifest-repo}'
215 description: 'URL to the repo manifest'
216
217 - string:
218 name: manifestBranch
219 default: '$GERRIT_BRANCH'
220 description: 'Name of the repo branch to use'
221
222 - string:
223 name: gerritProject
224 default: '$GERRIT_PROJECT'
225 description: 'Name of the Gerrit project'
226
227 - string:
228 name: gerritChangeNumber
229 default: '$GERRIT_CHANGE_NUMBER'
230 description: 'Changeset number in Gerrit'
231
232 - string:
233 name: gerritPatchsetNumber
234 default: '$GERRIT_PATCHSET_NUMBER'
235 description: 'PatchSet number in Gerrit'
236
237 - string:
238 name: cordRepoUrl
239 default: '{gerrit-server-url}'
240 description: 'The URL of the CORD Project repository'
241
242 - string:
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700243 name: podName
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700244 default: '{config-pod}'
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700245
246 - string:
247 name: deploymentConfigFile
248 default: 'pod-configs/deployment-configs/{config-pod}.yaml'
249 description: 'Path of deployment config file'
250
251 - string:
252 name: kindVolthaValuesFile
253 default: 'pod-configs/kubernetes-configs/voltha/{config-pod}.yml'
254 description: 'Path of kind-voltha values override file'
255
256 - string:
257 name: sadisConfigFile
258 default: 'voltha/voltha-system-tests/tests/data/{config-pod}-sadis.json'
259 description: 'Path of SADIS config to load'
260
261 - string:
262 name: localConfigDir
263 default: null
264 description: 'If specified, config file paths are relative to this dir; otherwise $WORKSPACE'
265
266 - string:
267 name: configRepo
268 default: 'pod-configs'
269 description: 'A repository containing the config files, will be checked out if specified'
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700270
271 - string:
272 name: oltDebVersion
273 default: '{oltDebVersion}'
274 description: 'OLT Software version to install'
275
276 - string:
277 name: branch
278 default: '{branch}'
279
280 - string:
281 name: profile
282 default: '{profile}'
283 description: 'Technology Profile pushed to the ETCD'
284
285 - string:
286 name: notificationEmail
287 default: 'andy@opennetworking.org'
288 description: ''
289
290 - bool:
291 name: reinstallOlt
292 default: true
293 description: "Re-install OLT software"
294
Andy Bavier19c98a22019-11-11 13:57:11 -0700295 - bool:
296 name: withPatchset
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700297 default: true
298 description: "Build with Gerrit patchset"
Andy Bavier19c98a22019-11-11 13:57:11 -0700299
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700300 project-type: pipeline
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700301 concurrent: true
302
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700303 dsl: !include-raw-escape: pipeline/{pipeline-script}
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700304
Andy Bavier1f465592019-11-06 10:03:56 -0700305 triggers:
306 - gerrit:
307 server-name: '{gerrit-server-name}'
308 dependency-jobs: '{dependency-jobs}'
309 silent-start: false
310 successful-message: "PASSED hardware test"
311 failure-message: "FAILED hardware test"
312 unstable-message: "UNSTABLE hardware test"
313 trigger-on:
314 - comment-added-contains-event:
315 comment-contains-value: '^hardware test$'
316 projects:
317 - project-compare-type: REG_EXP
Andy Baviere9916452019-11-06 12:32:47 -0700318 project-pattern: '^(voltha-go|voltha-openolt-adapter|voltha-openonu-adapter|voltha-api-server|voltha-system-tests)$'
Andy Bavier1f465592019-11-06 10:03:56 -0700319 branches:
320 - branch-compare-type: PLAIN
321 branch-pattern: 'master'
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700322
323- job-template:
324 name: '{name}'
325 id: build_physical_voltha_manual
326 description: |
327 <!-- Managed by Jenkins Job Builder -->
328 Automated build on POD {config-pod} using {pipeline-script} <br /><br />
329 Created from job-template {id} from ci-management/jjb/voltha-e2e.yaml <br />
330 Created by Andy Bavier, andy@opennetworking.org <br />
331 Copyright (c) 2019 Open Networking Foundation (ONF)
332 project-type: pipeline
333 sandbox: true
Andy Bavier358aa0b2019-11-22 11:55:39 -0700334 pipeline-script: 'voltha-physical-build-and-tests.groovy'
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700335
336 properties:
337 - cord-infra-properties:
338 build-days-to-keep: '{build-days-to-keep}'
339 artifact-num-to-keep: '{artifact-num-to-keep}'
340
341 parameters:
342 - string:
343 name: buildNode
344 default: '{testvm}'
345 description: 'Pod management node'
346
347 - string:
348 name: manifestUrl
349 default: '{gerrit-server-url}/{voltha-test-manifest-repo}'
350 description: 'URL to the repo manifest'
351
352 - string:
353 name: manifestBranch
Andy Bavier06d816c2019-11-19 11:40:48 -0700354 default: 'master'
355 description: 'Name of the repo branch to use (change to $GERRIT_BRANCH if testing a patchset)'
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700356
357 - string:
358 name: gerritProject
359 default: '$GERRIT_PROJECT'
360 description: 'Name of the Gerrit project'
361
362 - string:
363 name: gerritChangeNumber
364 default: '$GERRIT_CHANGE_NUMBER'
365 description: 'Changeset number in Gerrit'
366
367 - string:
368 name: gerritPatchsetNumber
369 default: '$GERRIT_PATCHSET_NUMBER'
370 description: 'PatchSet number in Gerrit'
371
372 - string:
373 name: cordRepoUrl
374 default: '{gerrit-server-url}'
375 description: 'The URL of the CORD Project repository'
376
377 - string:
378 name: podName
379 default: '{config-pod}'
380
381 - string:
382 name: deploymentConfigFile
383 default: 'pod-configs/deployment-configs/{config-pod}.yaml'
384 description: 'Path of deployment config file'
385
386 - string:
387 name: kindVolthaValuesFile
388 default: 'pod-configs/kubernetes-configs/voltha/{config-pod}.yml'
389 description: 'Path of kind-voltha values override file'
390
391 - string:
392 name: sadisConfigFile
393 default: 'voltha/voltha-system-tests/tests/data/{config-pod}-sadis.json'
394 description: 'Path of SADIS config to load'
395
396 - string:
397 name: localConfigDir
398 default: null
399 description: 'If specified, config file paths are relative to this dir; otherwise $WORKSPACE'
400
401 - string:
402 name: configRepo
403 default: 'pod-configs'
404 description: 'A repository containing the config files, will be checked out if specified'
405
406 - string:
407 name: oltDebVersion
408 default: '{oltDebVersion}'
409 description: 'OLT Software version to install'
410
411 - string:
412 name: branch
413 default: '{branch}'
414
415 - string:
416 name: profile
417 default: '{profile}'
418 description: 'Technology Profile pushed to the ETCD'
419
420 - string:
421 name: notificationEmail
422 default: 'andy@opennetworking.org'
423 description: ''
424
425 - bool:
426 name: reinstallOlt
427 default: false
428 description: "Re-install OLT software"
429
430 - bool:
431 name: withPatchset
432 default: false
433 description: "Build with Gerrit patchset"
434
435 project-type: pipeline
436 concurrent: true
437
438 dsl: !include-raw-escape: pipeline/{pipeline-script}