blob: e5ac6bc1e86524677b1f63a3b1c6020c0ac81ca5 [file] [log] [blame]
Matteo Scandolo9973c652020-08-07 15:23:35 -07001---
2# list of parameters for the VOLTHA Jobs,
3# used as anchor so that can be shared across multiple jobs
4# to use in a job: `parameters: *voltha-build-job-parameters`
5- voltha-build-job-parameters: &voltha-build-job-parameters
6 name: voltha-build-job-parameters
Andrea Campanella6dfc0432021-01-12 10:43:16 +01007
8 openoltAdapterChart: onf/voltha-adapter-openolt
9
Matteo Scandolo9973c652020-08-07 15:23:35 -070010 parameters:
11 - string:
12 name: buildNode
13 default: '{build-node}'
14 description: 'Name of the Jenkins executor node to run the job on'
15
16 - string:
17 name: TestNodeName
18 default: '{build-node}'
19 description: 'DEPRECATED - use buildNode instead'
20
21 - string:
Matteo Scandolo982b69d2021-05-10 12:01:57 -070022 name: logLevel
23 default: '{logLevel}'
24 description: 'Log level for all the components'
25
26 - string:
Matteo Scandolo9973c652020-08-07 15:23:35 -070027 name: cordRepoUrl
28 default: '{gerrit-server-url}'
29 description: 'The URL of the CORD Project repository'
30
31 - string:
32 name: configBaseDir
33 default: 'pod-configs'
34 description: 'The directory inside the POD configs repository'
35
36 - string:
37 name: configDeploymentDir
38 default: 'deployment-configs'
39 description: 'The deployment configs folder'
40
41 - string:
42 name: configKubernetesDir
43 default: 'kubernetes-configs'
44 description: 'The kubernetes config folder'
45
46 - string:
47 name: configToscaDir
48 default: 'tosca-configs'
49 description: 'The tosca config folder'
50
51 - string:
52 name: configFileName
53 default: '{config-pod}'
54 description: 'The config file'
55
56 - string:
57 name: profile
58 default: '{profile}'
59 description: 'Technology Profile pushed to the ETCD'
60
61 - string:
62 name: helmRepoUrl
63 default: 'https://charts.opencord.org'
64 description: 'URL where helm-charts are published'
65
66 - string:
67 name: branch
68 default: '{branch}'
69
70 - string:
71 name: notificationEmail
72 default: 'you@opennetworking.org, suchitra@opennetworking.org'
73 description: ''
74
75 - string:
76 name: workFlow
77 default: '{work-flow}'
78 description: 'Installs and uses the specified work flow on the POD'
79
Matteo Scandolod82d1de2021-04-06 14:55:58 -070080 # openonu-go only supports a single replica, remove after 2.8
Matteo Scandolo9973c652020-08-07 15:23:35 -070081 - string:
82 name: NumOfOpenOnu
83 default: '{num-of-openonu}'
84 description: 'Installs the specified Number of OpenOnu Adapters'
85
86 - string:
87 name: NumOfOnos
88 default: '{num-of-onos}'
89 description: 'Installs the specified Number of ONOS instances'
90
Suchitra Vemuridddc3ac2021-02-11 15:40:43 -080091 - bool:
92 name: installBBSim
93 default: false
94 description: "Install the BBSim container"
95
96 - string:
97 name: onuNumber
98 default: '{num-of-onus}'
99 description: "Onus per PonPort"
100
101 - string:
102 name: ponNumber
103 default: '{num-of-ponports}'
104 description: "Number of PON Ports"
105
Matteo Scandolo9973c652020-08-07 15:23:35 -0700106 - string:
107 name: NumOfAtomix
108 default: '{num-of-atomix}'
109 description: 'Installs the specified Number of Atomix Instances'
110
111 - bool:
112 name: configurePod
113 default: true
114 description: "Configure POD via TOSCA post build"
115
116 - bool:
117 name: reinstallOlt
118 default: '{reinstall-olt}'
119 description: "Re-install olt software bringing up CORD"
120
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700121 # withKind is not used in the master branch pipeline, remove after 2.8
Matteo Scandolo9973c652020-08-07 15:23:35 -0700122 - bool:
123 name: withKind
124 default: '{with-kind}'
125 description: "The pods uses kind and a physical fabric thus port forward to the management is needed"
126
127 - string:
128 name: VolthaEtcdPort
129 default: '{VolthaEtcdPort}'
130 description: 'Localhost port that is forwarded to VOLTHA etcd'
131
132 - bool:
133 name: inBandManagement
134 default: '{in-band-management}'
135 description: 'Indicates whether POD is configured for in band management'
136
Matteo Scandolo3dce2a12020-09-15 14:21:14 -0700137 - string:
138 name: volthaSystemTestsChange
139 default: '{volthaSystemTestsChange}'
140 description: 'Download a change for gerrit in the voltha-system-tests repo, example value: "refs/changes/79/18779/13"'
141
142 - string:
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700143 name: volthaHelmChartsChange
144 default: '{volthaHelmChartsChange}'
145 description: 'Download a change for gerrit in the voltha-helm-charts repo, example value: "refs/changes/32/19132/1"'
146
147 # kind-voltha is not used in the master branch pipeline, remove after 2.8
148 - string:
Matteo Scandolo3dce2a12020-09-15 14:21:14 -0700149 name: kindVolthaChange
150 default: '{kindVolthaChange}'
151 description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'
152
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700153 # NOTE is this needed/used?
Matteo Scandolo3dce2a12020-09-15 14:21:14 -0700154 - string:
155 name: cordTesterChange
156 default: '{cordTesterChange}'
157 description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'
158
Matteo Scandolo6eb673e2021-05-06 11:24:39 -0700159 # this is used in the Adtran DT job
Andrea Campanella6dfc0432021-01-12 10:43:16 +0100160 - string:
161 name: openoltAdapterChart
162 default: '{openoltAdapterChart}'
163 description: 'OpenOLT chart name (or location on file system)'
164
Matteo Scandolo9973c652020-08-07 15:23:35 -0700165# defualt properties for the VOLTHA scale jobs
166- voltha-pipe-job-boiler-plate: &voltha-pipe-job-boiler-plate
167 name: voltha-pipe-job-boiler-plate
168
169 project-type: pipeline
170
171 sandbox: true
172
173 properties:
174 - cord-infra-properties:
Matteo Scandoloa0e6f3f2020-11-12 17:13:20 -0800175 build-days-to-keep: '{big-build-days-to-keep}'
176 artifact-num-to-keep: '{big-artifact-num-to-keep}'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700177
178# VOLTHA Build Jobs
179- job-template:
180 name: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}'
181 id: build_voltha_pod_release_timer
Suchitra Vemuri26fe2432020-09-14 19:51:32 -0700182 disabled: '{disable-job}'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700183 description: |
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700184 Manual Build on POD {config-pod}, using pipeline/{pipeline-script} in {gerrit-server-url}/ci-management' <br /><br />
Matteo Scandolo16090cd2020-08-12 15:42:42 -0700185 Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br />
Matteo Scandolo9973c652020-08-07 15:23:35 -0700186 Created by QA (Suchitra Vemuri - suchitra@opennetworking.org ) <br />
187 Copyright (c) 2018 Open Networking Foundation (ONF)
188
189 <<: *voltha-pipe-job-boiler-plate
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700190 # default values
191 pipeline-script: 'voltha/master/physical-build.groovy'
192 VolthaEtcdPort: 2379
193 num-of-openonu: 1
194 num-of-onos: 3
195 num-of-atomix: 3
196 test-repo: 'voltha-system-tests'
197 release: 'master'
198 name-extension: ''
199 branch: 'master'
200 configurePod: true
201 volthaHelmChartsChange: ''
202 profile: 'Default'
Matteo Scandolo6ddb0152021-05-07 11:25:17 -0700203 logLevel: 'DEBUG'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700204
205 <<: *voltha-build-job-parameters
206
207 concurrent: true
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700208 project-type: pipeline
209 dsl: !include-raw-escape: ../pipeline/{pipeline-script}
Matteo Scandolo9973c652020-08-07 15:23:35 -0700210
211 triggers:
212 - timed: |
213 TZ=America/Los_Angeles
214 H {time} * * *
215
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700216# this job template is defined to support VOLTHA-2.7 builds, remove after 2.8
Matteo Scandolo9973c652020-08-07 15:23:35 -0700217- job-template:
218 name: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}'
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700219 id: build_voltha_pod_release_legacy
Matteo Scandolo38a00b02020-09-15 13:27:06 -0700220 disabled: '{disable-job}'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700221 description: |
222 Automatic Build on POD {config-pod}, using {Jenkinsfile} in {gerrit-server-url}/voltha-system-tests' <br /><br />
Matteo Scandolo16090cd2020-08-12 15:42:42 -0700223 Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br />
Matteo Scandolo9973c652020-08-07 15:23:35 -0700224 Created by QA (Suchitra Vemuri - suchitra@opennetworking.org ) <br />
225 This job is triggered upon completion of a dependent _test job <br />
226 Copyright (c) 2020 Open Networking Foundation (ONF)
227
228 <<: *voltha-pipe-job-boiler-plate
229 VolthaEtcdPort: '2379'
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700230 release: '2.7'
231 branch: 'voltha-2.7'
232 volthaHelmChartsChange: '' # this is not supported in the VOLTHA-2.7 build, but the parameters are shared, ideally we should split them
Matteo Scandolo982b69d2021-05-10 12:01:57 -0700233 logLevel: 'DEBUG'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700234
235 <<: *voltha-build-job-parameters
236
237 concurrent: true
238
239 pipeline-scm:
240 script-path: '{Jenkinsfile}'
241 scm:
242 - git:
243 url: '{gerrit-server-url}/voltha-system-tests'
244 branches:
245 - '{branch}'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700246
Matteo Scandolo218b2dc2021-04-21 13:21:13 -0700247 triggers:
248 - timed: |
249 TZ=America/Los_Angeles
250 H {time} * * *
251
Matteo Scandolo9973c652020-08-07 15:23:35 -0700252# VOLTHA Test Job
253# This job is automatically triggered after a build job has successfully completed
254- job-template:
255 name: 'build_{config-pod}_{profile}_voltha{name-extension}_{release}_test'
256 id: build_voltha_pod_test
Matteo Scandolo38a00b02020-09-15 13:27:06 -0700257 disabled: '{disable-job}'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700258 description: |
259 Post Tests on {config-pod} triggered by build_{config-pod}_{branch}, using {pipeline-script}<br /><br />
Matteo Scandolo16090cd2020-08-12 15:42:42 -0700260 Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br />
Matteo Scandolo9973c652020-08-07 15:23:35 -0700261 Created by Suchitra Vemuri, suchitra@opennetworking.org <br />
262 Copyright (c) 2017 Open Networking Foundation (ONF)
263
264 <<: *voltha-pipe-job-boiler-plate
265 pipeline-script: 'voltha-physical-functional-tests.groovy'
266 manifest-url: 'https://gerrit.opencord.org/voltha-test-manifest.git'
267 manifest-branch: 'master'
268
Andrea Campanella0d3110c2021-01-20 12:25:45 +0100269 oltAdapterAppLabel: 'adapter-open-olt'
270
Matteo Scandolo9973c652020-08-07 15:23:35 -0700271 parameters:
272 - string:
273 name: buildNode
274 default: '{build-node}'
275 description: 'Name of the Jenkins executor node to run the job on'
276
277 - string:
278 name: TestNodeName
279 default: '{build-node}'
280 description: 'DEPRECATED - use buildNode instead'
281
282 - string:
283 name: cordRepoUrl
284 default: '{gerrit-server-url}'
285 description: 'The URL of the CORD Project repository'
286
287 - string:
288 name: configBaseDir
289 default: 'pod-configs'
290 description: 'The directory inside the POD configs repository'
291
292 - string:
293 name: configDeploymentDir
294 default: 'deployment-configs'
295 description: 'The deployment configs folder'
296
297 - string:
298 name: configKubernetesDir
299 default: 'kubernetes-configs'
300 description: 'The kubernetes config folder'
301
302 - string:
303 name: configToscaDir
304 default: 'tosca-configs'
305 description: 'The tosca config folder'
306
307 - string:
308 name: configFileName
309 default: '{config-pod}'
310 description: 'The config file'
311
312 - string:
313 name: profile
314 default: '{profile}'
315 description: 'Technology Profile pushed to the ETCD'
316
317 - string:
318 name: branch
319 default: '{branch}'
320 description: 'Branch of the test libraries to check out'
321
322 - string:
323 name: manifestUrl
324 default: '{manifest-url}'
325 description: 'Repo manifest URL for code checkout (so we can display changes in Jenkins)'
326
327 - string:
328 name: manifestBranch
329 default: '{manifest-branch}'
330 description: 'Repo manifest branch for code checkout (so we can display changes in Jenkins)'
331
332 - string:
333 name: workFlow
334 default: '{work-flow}'
335 description: 'Installs and uses the specified work flow on the POD'
336
337 - bool:
338 name: powerSwitch
339 default: '{power-switch}'
340 description: "Indicate whether POD has power switch to reboot ONUs/OLT remotely"
341
Andrea Campanella6ea62272020-09-16 11:10:52 +0200342 - string:
Andrea Campanella0d3110c2021-01-20 12:25:45 +0100343 name: oltAdapterAppLabel
344 default: '{oltAdapterAppLabel}'
345 description: 'OLT adapter pod name'
346
347 - string:
Andrea Campanella6ea62272020-09-16 11:10:52 +0200348 name: volthaSystemTestsChange
349 default: '{volthaSystemTestsChange}'
350 description: 'Download a change for gerrit in the voltha-system-tests repo, example value: "refs/changes/79/18779/13"'
351
352 - string:
353 name: kindVolthaChange
354 default: '{kindVolthaChange}'
355 description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'
356
357 - string:
358 name: cordTesterChange
359 default: '{cordTesterChange}'
360 description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'
361
Matteo Scandolo9973c652020-08-07 15:23:35 -0700362 concurrent: true
363
364 project-type: pipeline
365 dsl: !include-raw-escape: ../pipeline/{pipeline-script}
366
367 triggers:
368 - reverse:
369 jobs: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}'
370 result: 'success'
Suchitra Vemuri0921c752020-08-31 22:58:50 -0700371
372
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700373# VOLTHA Soak Test Job
374# This job is triggered by a timer defined in the job
Suchitra Vemuri0921c752020-08-31 22:58:50 -0700375- job-template:
376 name: 'build_{config-pod}_{profile}_voltha{name-extension}_{release}_test'
377 id: build_voltha_pod_soak_test
Andrea Campanellab54cabe2020-11-26 14:48:11 +0100378 disabled: '{disable-job}'
Suchitra Vemuri0921c752020-08-31 22:58:50 -0700379 description: |
380 Post Tests on {config-pod} triggered by build_{config-pod}_{branch}, using {pipeline-script}<br /><br />
381 Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br />
382 Created by Suchitra Vemuri, suchitra@opennetworking.org <br />
383 Copyright (c) 2017 Open Networking Foundation (ONF)
384
385 <<: *voltha-pipe-job-boiler-plate
386 pipeline-script: 'voltha-physical-functional-tests.groovy'
387 manifest-url: 'https://gerrit.opencord.org/voltha-test-manifest.git'
388 manifest-branch: 'master'
389
Andrea Campanella0d3110c2021-01-20 12:25:45 +0100390 oltAdapterAppLabel: 'adapter-open-olt'
391
Suchitra Vemuri0921c752020-08-31 22:58:50 -0700392 parameters:
393 - string:
394 name: buildNode
395 default: '{build-node}'
396 description: 'Name of the Jenkins executor node to run the job on'
397
398 - string:
399 name: TestNodeName
400 default: '{build-node}'
401 description: 'DEPRECATED - use buildNode instead'
402
403 - string:
404 name: cordRepoUrl
405 default: '{gerrit-server-url}'
406 description: 'The URL of the CORD Project repository'
407
408 - string:
409 name: configBaseDir
410 default: 'pod-configs'
411 description: 'The directory inside the POD configs repository'
412
413 - string:
414 name: configDeploymentDir
415 default: 'deployment-configs'
416 description: 'The deployment configs folder'
417
418 - string:
419 name: configKubernetesDir
420 default: 'kubernetes-configs'
421 description: 'The kubernetes config folder'
422
423 - string:
424 name: configToscaDir
425 default: 'tosca-configs'
426 description: 'The tosca config folder'
427
428 - string:
429 name: configFileName
430 default: '{config-pod}'
431 description: 'The config file'
432
433 - string:
434 name: profile
435 default: '{profile}'
436 description: 'Technology Profile pushed to the ETCD'
437
438 - string:
439 name: branch
440 default: '{branch}'
441 description: 'Branch of the test libraries to check out'
442
443 - string:
444 name: manifestUrl
445 default: '{manifest-url}'
446 description: 'Repo manifest URL for code checkout (so we can display changes in Jenkins)'
447
448 - string:
449 name: manifestBranch
450 default: '{manifest-branch}'
451 description: 'Repo manifest branch for code checkout (so we can display changes in Jenkins)'
452
453 - string:
454 name: workFlow
455 default: '{work-flow}'
456 description: 'Installs and uses the specified work flow on the POD'
457
458 - bool:
459 name: powerSwitch
460 default: '{power-switch}'
461 description: "Indicate whether POD has power switch to reboot ONUs/OLT remotely"
462
Suchitra Vemurie6625222020-09-01 17:12:56 -0700463 - string:
Andrea Campanella0d3110c2021-01-20 12:25:45 +0100464 name: oltAdapterAppLabel
465 default: '{oltAdapterAppLabel}'
466 description: 'OLT adapter pod name'
467
468 - string:
Suchitra Vemurie6625222020-09-01 17:12:56 -0700469 name: testType
470 default: '{test-type}'
471 description: 'Passes the required test category to the groovy script'
472
Suchitra Vemurie3bb90d2020-09-15 17:15:50 -0700473 - string:
474 name: volthaSystemTestsChange
475 default: '{volthaSystemTestsChange}'
476 description: 'Download a change for gerrit in the voltha-system-tests repo, example value: "refs/changes/79/18779/13"'
477
478 - string:
479 name: kindVolthaChange
480 default: '{kindVolthaChange}'
481 description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'
482
483 - string:
484 name: cordTesterChange
485 default: '{cordTesterChange}'
486 description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'
Suchitra Vemuri0921c752020-08-31 22:58:50 -0700487 concurrent: true
488
489 project-type: pipeline
490 dsl: !include-raw-escape: ../pipeline/{pipeline-script}
491
492 triggers:
493 - timed: |
494 TZ=America/Los_Angeles
495 {time-trigger}