blob: e95cca06f4e31037d2657790821d4cfd5b3a46ec [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'
Zack Williamsb3292082019-10-11 17:15:18 -070012 pipeline-script: 'voltha-go-tests.groovy'
Andy Bavieraaa60f72019-09-20 09:11:21 -070013 default-image-tag: 'master'
Andy Bavier218385e2019-11-13 09:51:38 -070014 make-target: sanity-multi-kind
15 onus: 2
16 pons: 2
17 time-trigger: "H H/3 * * *"
18
19 - 'voltha-periodic-test':
20 name: 'periodic-voltha-scale-test'
21 pipeline-script: 'voltha-go-tests.groovy'
22 default-image-tag: 'master'
23 make-target: scale-multi-kind
24 onus: 2
25 pons: 8
26 time-trigger: "H H/3 * * *"
Kailashaad71012019-08-27 10:36:53 -070027
Andy Bavierbf68c5e2019-10-25 15:05:28 -070028 # Per-patchset Pod builds on Tucson pod
Andy Baviere9916452019-11-06 12:32:47 -070029 - 'verify_physical_voltha_patchset':
Andy Bavier19c98a22019-11-11 13:57:11 -070030 name: 'verify_physical_voltha_patchset'
Andy Bavierbf68c5e2019-10-25 15:05:28 -070031 testvm: 'tucson-pod'
32 config-pod: 'tucson-pod'
33 branch: 'master'
Andy Bavier61c5b2a2019-11-12 12:08:19 -070034 pipeline-script: 'voltha-physical-tests.groovy'
Andy Bavierfc4dcc42019-11-18 15:33:52 -070035 oltDebVersion: 'openolt_asfvolt16.deb'
Andy Bavierbf68c5e2019-10-25 15:05:28 -070036 profile: 'Default'
Andy Bavier19c98a22019-11-11 13:57:11 -070037 withPatchset: true
38
39 # Manual build job for Tucson pod
40 # Allow local testing without disrupting above job
Andy Bavier61c5b2a2019-11-12 12:08:19 -070041 - 'build_physical_voltha_manual':
Andy Bavier19c98a22019-11-11 13:57:11 -070042 name: 'build_tucson-pod_manual'
43 testvm: 'tucson-pod'
44 config-pod: 'tucson-pod'
45 branch: 'master'
Andy Bavier61c5b2a2019-11-12 12:08:19 -070046 pipeline-script: 'voltha-physical-tests.groovy'
Andy Bavierfc4dcc42019-11-18 15:33:52 -070047 oltDebVersion: 'openolt_asfvolt16.deb'
Andy Bavier19c98a22019-11-11 13:57:11 -070048 profile: 'Default'
49 withPatchset: false
Andy Bavierbf68c5e2019-10-25 15:05:28 -070050
Kailash8b8de742019-07-30 08:54:51 -070051- job-template:
Kailashaad71012019-08-27 10:36:53 -070052 id: 'voltha-periodic-test'
53 name: '{name}'
Kailash8b8de742019-07-30 08:54:51 -070054
55 description: |
56 <!-- Managed by Jenkins Job Builder -->
57 Created by {id} job-template from ci-management/jjb/voltha-e2e.yaml <br /><br />
58 E2E Validation for Voltha 2.X
59
60 properties:
61 - cord-infra-properties:
62 build-days-to-keep: '{build-days-to-keep}'
63 artifact-num-to-keep: '{artifact-num-to-keep}'
64
65 wrappers:
66 - lf-infra-wrappers:
67 build-timeout: '{build-timeout}'
68 jenkins-ssh-credential: '{jenkins-ssh-credential}'
69
70 parameters:
71 - string:
Zack Williamsb3292082019-10-11 17:15:18 -070072 name: buildNode
Kailash8b8de742019-07-30 08:54:51 -070073 default: 'ubuntu16.04-basebuild-4c-8g'
74 description: 'Name of the Jenkins node to run the job on'
75
76 - string:
Andy Bavierea26c5c2019-09-18 08:09:17 -070077 name: extraHelmFlags
Andy Bavier218385e2019-11-13 09:51:38 -070078 default: '--set defaults.image_tag={default-image-tag},onu={onus},pon={pons}'
Andy Bavierea26c5c2019-09-18 08:09:17 -070079 description: 'Helm flags to pass to ./voltha up'
80
Andy Bavierdabe9fc2019-10-24 17:10:48 -070081 - string:
Andy Bavier218385e2019-11-13 09:51:38 -070082 name: makeTarget
83 default: '{make-target}'
84 description: 'Makefile target to invoke during test'
Andy Bavierdabe9fc2019-10-24 17:10:48 -070085
Kailash8b8de742019-07-30 08:54:51 -070086 project-type: pipeline
87 concurrent: false
88
Zack Williamsb3292082019-10-11 17:15:18 -070089 dsl: !include-raw-escape: pipeline/{pipeline-script}
Kailash6be1aa92019-08-05 18:11:11 -070090
91 triggers:
hwchiu14f97852019-10-08 10:51:11 -070092 - timed: |
Kailash6be1aa92019-08-05 18:11:11 -070093 TZ=America/Los_Angeles
Andy Bavier218385e2019-11-13 09:51:38 -070094 {time-trigger}
Kailashaad71012019-08-27 10:36:53 -070095
96- job-template:
97 id: 'voltha-patch-test'
Andy Bavier4f7fbea2019-11-21 14:38:47 -070098 name: 'verify_{project}_sanity-test'
99 extra-helm-flags: '--set defaults.image_tag=$GERRIT_BRANCH'
Kailashaad71012019-08-27 10:36:53 -0700100
101 description: |
102 <!-- Managed by Jenkins Job Builder -->
103 Created by {id} job-template from ci-management/jjb/voltha-e2e.yaml <br /><br />
104 E2E Validation for Voltha 2.X
105
106 properties:
107 - cord-infra-properties:
108 build-days-to-keep: '{build-days-to-keep}'
109 artifact-num-to-keep: '{artifact-num-to-keep}'
110
111 wrappers:
112 - lf-infra-wrappers:
113 build-timeout: '{build-timeout}'
114 jenkins-ssh-credential: '{jenkins-ssh-credential}'
115
116 parameters:
117 - string:
Zack Williamsb3292082019-10-11 17:15:18 -0700118 name: buildNode
Kailashaad71012019-08-27 10:36:53 -0700119 default: 'ubuntu16.04-basebuild-4c-8g'
120 description: 'Name of the Jenkins node to run the job on'
121
122 - string:
123 name: manifestUrl
124 default: '{gerrit-server-url}/{voltha-test-manifest-repo}'
125 description: 'URL to the repo manifest'
126
127 - string:
hwchiu14f97852019-10-08 10:51:11 -0700128 name: manifestBranch
129 default: '$GERRIT_BRANCH'
130 description: 'Name of the repo branch to use'
Kailashaad71012019-08-27 10:36:53 -0700131
132 - string:
hwchiu14f97852019-10-08 10:51:11 -0700133 name: gerritProject
134 default: '$GERRIT_PROJECT'
135 description: 'Name of the Gerrit project'
Kailashaad71012019-08-27 10:36:53 -0700136
137 - string:
hwchiu14f97852019-10-08 10:51:11 -0700138 name: gerritChangeNumber
139 default: '$GERRIT_CHANGE_NUMBER'
140 description: 'Changeset number in Gerrit'
Kailashaad71012019-08-27 10:36:53 -0700141
142 - string:
hwchiu14f97852019-10-08 10:51:11 -0700143 name: gerritPatchsetNumber
144 default: '$GERRIT_PATCHSET_NUMBER'
145 description: 'PatchSet number in Gerrit'
Kailashaad71012019-08-27 10:36:53 -0700146
147 - string:
Andy Bavierbedd0392019-10-16 13:58:18 -0700148 name: extraHelmFlags
Andy Bavier4f7fbea2019-11-21 14:38:47 -0700149 default: '{extra-helm-flags}'
Andy Bavierbedd0392019-10-16 13:58:18 -0700150 description: 'Helm flags to pass to ./voltha up'
151
Kailashaad71012019-08-27 10:36:53 -0700152 project-type: pipeline
Kailashb59bc7f2019-09-03 13:13:27 -0700153 concurrent: true
Kailashaad71012019-08-27 10:36:53 -0700154
Zack Williamsb3292082019-10-11 17:15:18 -0700155 dsl: !include-raw-escape: pipeline/{pipeline-script}
Kailashaad71012019-08-27 10:36:53 -0700156
157 triggers:
158 - cord-infra-gerrit-trigger-patchset:
159 gerrit-server-name: '{gerrit-server-name}'
Kailash53d86722019-09-05 09:08:41 -0700160 project-regexp: '^{project}$'
161 branch-regexp: '{branch-regexp}'
Kailashaad71012019-08-27 10:36:53 -0700162 dependency-jobs: '{dependency-jobs}'
163 file-include-regexp: '{all-files-regexp}'
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700164
165# POD Per Patchset Pipeline Jobs
166
167- job-template:
Andy Bavier19c98a22019-11-11 13:57:11 -0700168 name: '{name}'
Andy Baviere9916452019-11-06 12:32:47 -0700169 id: verify_physical_voltha_patchset
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700170 description: |
171 <!-- Managed by Jenkins Job Builder -->
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700172 Automated build on POD {config-pod} using {pipeline-script} <br /><br />
Andy Baviere9916452019-11-06 12:32:47 -0700173 Created from job-template {id} from ci-management/jjb/voltha-e2e.yaml <br />
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700174 Created by Andy Bavier, andy@opennetworking.org <br />
175 Copyright (c) 2019 Open Networking Foundation (ONF)
176 project-type: pipeline
177 sandbox: true
178
179 properties:
180 - cord-infra-properties:
181 build-days-to-keep: '{build-days-to-keep}'
182 artifact-num-to-keep: '{artifact-num-to-keep}'
183
184 parameters:
185 - string:
Andy Bavier97ebbba2019-11-08 10:47:46 -0700186 name: buildNode
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700187 default: '{testvm}'
Andy Bavier97ebbba2019-11-08 10:47:46 -0700188 description: 'Pod management node'
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700189
190 - string:
191 name: manifestUrl
192 default: '{gerrit-server-url}/{voltha-test-manifest-repo}'
193 description: 'URL to the repo manifest'
194
195 - string:
196 name: manifestBranch
197 default: '$GERRIT_BRANCH'
198 description: 'Name of the repo branch to use'
199
200 - string:
201 name: gerritProject
202 default: '$GERRIT_PROJECT'
203 description: 'Name of the Gerrit project'
204
205 - string:
206 name: gerritChangeNumber
207 default: '$GERRIT_CHANGE_NUMBER'
208 description: 'Changeset number in Gerrit'
209
210 - string:
211 name: gerritPatchsetNumber
212 default: '$GERRIT_PATCHSET_NUMBER'
213 description: 'PatchSet number in Gerrit'
214
215 - string:
216 name: cordRepoUrl
217 default: '{gerrit-server-url}'
218 description: 'The URL of the CORD Project repository'
219
220 - string:
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700221 name: podName
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700222 default: '{config-pod}'
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700223
224 - string:
225 name: deploymentConfigFile
226 default: 'pod-configs/deployment-configs/{config-pod}.yaml'
227 description: 'Path of deployment config file'
228
229 - string:
230 name: kindVolthaValuesFile
231 default: 'pod-configs/kubernetes-configs/voltha/{config-pod}.yml'
232 description: 'Path of kind-voltha values override file'
233
234 - string:
235 name: sadisConfigFile
236 default: 'voltha/voltha-system-tests/tests/data/{config-pod}-sadis.json'
237 description: 'Path of SADIS config to load'
238
239 - string:
240 name: localConfigDir
241 default: null
242 description: 'If specified, config file paths are relative to this dir; otherwise $WORKSPACE'
243
244 - string:
245 name: configRepo
246 default: 'pod-configs'
247 description: 'A repository containing the config files, will be checked out if specified'
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700248
249 - string:
250 name: oltDebVersion
251 default: '{oltDebVersion}'
252 description: 'OLT Software version to install'
253
254 - string:
255 name: branch
256 default: '{branch}'
257
258 - string:
259 name: profile
260 default: '{profile}'
261 description: 'Technology Profile pushed to the ETCD'
262
263 - string:
264 name: notificationEmail
265 default: 'andy@opennetworking.org'
266 description: ''
267
268 - bool:
269 name: reinstallOlt
270 default: true
271 description: "Re-install OLT software"
272
Andy Bavier19c98a22019-11-11 13:57:11 -0700273 - bool:
274 name: withPatchset
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700275 default: true
276 description: "Build with Gerrit patchset"
Andy Bavier19c98a22019-11-11 13:57:11 -0700277
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700278 project-type: pipeline
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700279 concurrent: true
280
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700281 dsl: !include-raw-escape: pipeline/{pipeline-script}
Andy Bavierbf68c5e2019-10-25 15:05:28 -0700282
Andy Bavier1f465592019-11-06 10:03:56 -0700283 triggers:
284 - gerrit:
285 server-name: '{gerrit-server-name}'
286 dependency-jobs: '{dependency-jobs}'
287 silent-start: false
288 successful-message: "PASSED hardware test"
289 failure-message: "FAILED hardware test"
290 unstable-message: "UNSTABLE hardware test"
291 trigger-on:
292 - comment-added-contains-event:
293 comment-contains-value: '^hardware test$'
294 projects:
295 - project-compare-type: REG_EXP
Andy Baviere9916452019-11-06 12:32:47 -0700296 project-pattern: '^(voltha-go|voltha-openolt-adapter|voltha-openonu-adapter|voltha-api-server|voltha-system-tests)$'
Andy Bavier1f465592019-11-06 10:03:56 -0700297 branches:
298 - branch-compare-type: PLAIN
299 branch-pattern: 'master'
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700300
301- job-template:
302 name: '{name}'
303 id: build_physical_voltha_manual
304 description: |
305 <!-- Managed by Jenkins Job Builder -->
306 Automated build on POD {config-pod} using {pipeline-script} <br /><br />
307 Created from job-template {id} from ci-management/jjb/voltha-e2e.yaml <br />
308 Created by Andy Bavier, andy@opennetworking.org <br />
309 Copyright (c) 2019 Open Networking Foundation (ONF)
310 project-type: pipeline
311 sandbox: true
312
313 properties:
314 - cord-infra-properties:
315 build-days-to-keep: '{build-days-to-keep}'
316 artifact-num-to-keep: '{artifact-num-to-keep}'
317
318 parameters:
319 - string:
320 name: buildNode
321 default: '{testvm}'
322 description: 'Pod management node'
323
324 - string:
325 name: manifestUrl
326 default: '{gerrit-server-url}/{voltha-test-manifest-repo}'
327 description: 'URL to the repo manifest'
328
329 - string:
330 name: manifestBranch
Andy Bavier06d816c2019-11-19 11:40:48 -0700331 default: 'master'
332 description: 'Name of the repo branch to use (change to $GERRIT_BRANCH if testing a patchset)'
Andy Bavier61c5b2a2019-11-12 12:08:19 -0700333
334 - string:
335 name: gerritProject
336 default: '$GERRIT_PROJECT'
337 description: 'Name of the Gerrit project'
338
339 - string:
340 name: gerritChangeNumber
341 default: '$GERRIT_CHANGE_NUMBER'
342 description: 'Changeset number in Gerrit'
343
344 - string:
345 name: gerritPatchsetNumber
346 default: '$GERRIT_PATCHSET_NUMBER'
347 description: 'PatchSet number in Gerrit'
348
349 - string:
350 name: cordRepoUrl
351 default: '{gerrit-server-url}'
352 description: 'The URL of the CORD Project repository'
353
354 - string:
355 name: podName
356 default: '{config-pod}'
357
358 - string:
359 name: deploymentConfigFile
360 default: 'pod-configs/deployment-configs/{config-pod}.yaml'
361 description: 'Path of deployment config file'
362
363 - string:
364 name: kindVolthaValuesFile
365 default: 'pod-configs/kubernetes-configs/voltha/{config-pod}.yml'
366 description: 'Path of kind-voltha values override file'
367
368 - string:
369 name: sadisConfigFile
370 default: 'voltha/voltha-system-tests/tests/data/{config-pod}-sadis.json'
371 description: 'Path of SADIS config to load'
372
373 - string:
374 name: localConfigDir
375 default: null
376 description: 'If specified, config file paths are relative to this dir; otherwise $WORKSPACE'
377
378 - string:
379 name: configRepo
380 default: 'pod-configs'
381 description: 'A repository containing the config files, will be checked out if specified'
382
383 - string:
384 name: oltDebVersion
385 default: '{oltDebVersion}'
386 description: 'OLT Software version to install'
387
388 - string:
389 name: branch
390 default: '{branch}'
391
392 - string:
393 name: profile
394 default: '{profile}'
395 description: 'Technology Profile pushed to the ETCD'
396
397 - string:
398 name: notificationEmail
399 default: 'andy@opennetworking.org'
400 description: ''
401
402 - bool:
403 name: reinstallOlt
404 default: false
405 description: "Re-install OLT software"
406
407 - bool:
408 name: withPatchset
409 default: false
410 description: "Build with Gerrit patchset"
411
412 project-type: pipeline
413 concurrent: true
414
415 dsl: !include-raw-escape: pipeline/{pipeline-script}