blob: 608d1d7a61381ececc2885952da663382e971124 [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:
22 name: cordRepoUrl
23 default: '{gerrit-server-url}'
24 description: 'The URL of the CORD Project repository'
25
26 - string:
27 name: configBaseDir
28 default: 'pod-configs'
29 description: 'The directory inside the POD configs repository'
30
31 - string:
32 name: configDeploymentDir
33 default: 'deployment-configs'
34 description: 'The deployment configs folder'
35
36 - string:
37 name: configKubernetesDir
38 default: 'kubernetes-configs'
39 description: 'The kubernetes config folder'
40
41 - string:
42 name: configToscaDir
43 default: 'tosca-configs'
44 description: 'The tosca config folder'
45
46 - string:
47 name: configFileName
48 default: '{config-pod}'
49 description: 'The config file'
50
51 - string:
52 name: profile
53 default: '{profile}'
54 description: 'Technology Profile pushed to the ETCD'
55
56 - string:
57 name: helmRepoUrl
58 default: 'https://charts.opencord.org'
59 description: 'URL where helm-charts are published'
60
61 - string:
62 name: branch
63 default: '{branch}'
64
65 - string:
66 name: notificationEmail
67 default: 'you@opennetworking.org, suchitra@opennetworking.org'
68 description: ''
69
70 - string:
71 name: workFlow
72 default: '{work-flow}'
73 description: 'Installs and uses the specified work flow on the POD'
74
Matteo Scandolod82d1de2021-04-06 14:55:58 -070075 # openonu-go only supports a single replica, remove after 2.8
Matteo Scandolo9973c652020-08-07 15:23:35 -070076 - string:
77 name: NumOfOpenOnu
78 default: '{num-of-openonu}'
79 description: 'Installs the specified Number of OpenOnu Adapters'
80
81 - string:
82 name: NumOfOnos
83 default: '{num-of-onos}'
84 description: 'Installs the specified Number of ONOS instances'
85
Suchitra Vemuridddc3ac2021-02-11 15:40:43 -080086 - bool:
87 name: installBBSim
88 default: false
89 description: "Install the BBSim container"
90
91 - string:
92 name: onuNumber
93 default: '{num-of-onus}'
94 description: "Onus per PonPort"
95
96 - string:
97 name: ponNumber
98 default: '{num-of-ponports}'
99 description: "Number of PON Ports"
100
Matteo Scandolo9973c652020-08-07 15:23:35 -0700101 - string:
102 name: NumOfAtomix
103 default: '{num-of-atomix}'
104 description: 'Installs the specified Number of Atomix Instances'
105
106 - bool:
107 name: configurePod
108 default: true
109 description: "Configure POD via TOSCA post build"
110
111 - bool:
112 name: reinstallOlt
113 default: '{reinstall-olt}'
114 description: "Re-install olt software bringing up CORD"
115
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700116 # withKind is not used in the master branch pipeline, remove after 2.8
Matteo Scandolo9973c652020-08-07 15:23:35 -0700117 - bool:
118 name: withKind
119 default: '{with-kind}'
120 description: "The pods uses kind and a physical fabric thus port forward to the management is needed"
121
122 - string:
123 name: VolthaEtcdPort
124 default: '{VolthaEtcdPort}'
125 description: 'Localhost port that is forwarded to VOLTHA etcd'
126
127 - bool:
128 name: inBandManagement
129 default: '{in-band-management}'
130 description: 'Indicates whether POD is configured for in band management'
131
Matteo Scandolo3dce2a12020-09-15 14:21:14 -0700132 - string:
133 name: volthaSystemTestsChange
134 default: '{volthaSystemTestsChange}'
135 description: 'Download a change for gerrit in the voltha-system-tests repo, example value: "refs/changes/79/18779/13"'
136
137 - string:
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700138 name: volthaHelmChartsChange
139 default: '{volthaHelmChartsChange}'
140 description: 'Download a change for gerrit in the voltha-helm-charts repo, example value: "refs/changes/32/19132/1"'
141
142 # kind-voltha is not used in the master branch pipeline, remove after 2.8
143 - string:
Matteo Scandolo3dce2a12020-09-15 14:21:14 -0700144 name: kindVolthaChange
145 default: '{kindVolthaChange}'
146 description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'
147
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700148 # NOTE is this needed/used?
Matteo Scandolo3dce2a12020-09-15 14:21:14 -0700149 - string:
150 name: cordTesterChange
151 default: '{cordTesterChange}'
152 description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'
153
Matteo Scandolo6eb673e2021-05-06 11:24:39 -0700154 # this is used in the Adtran DT job
Andrea Campanella6dfc0432021-01-12 10:43:16 +0100155 - string:
156 name: openoltAdapterChart
157 default: '{openoltAdapterChart}'
158 description: 'OpenOLT chart name (or location on file system)'
159
Matteo Scandolo9973c652020-08-07 15:23:35 -0700160# defualt properties for the VOLTHA scale jobs
161- voltha-pipe-job-boiler-plate: &voltha-pipe-job-boiler-plate
162 name: voltha-pipe-job-boiler-plate
163
164 project-type: pipeline
165
166 sandbox: true
167
168 properties:
169 - cord-infra-properties:
Matteo Scandoloa0e6f3f2020-11-12 17:13:20 -0800170 build-days-to-keep: '{big-build-days-to-keep}'
171 artifact-num-to-keep: '{big-artifact-num-to-keep}'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700172
173# VOLTHA Build Jobs
174- job-template:
175 name: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}'
176 id: build_voltha_pod_release_timer
Suchitra Vemuri26fe2432020-09-14 19:51:32 -0700177 disabled: '{disable-job}'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700178 description: |
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700179 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 -0700180 Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br />
Matteo Scandolo9973c652020-08-07 15:23:35 -0700181 Created by QA (Suchitra Vemuri - suchitra@opennetworking.org ) <br />
182 Copyright (c) 2018 Open Networking Foundation (ONF)
183
184 <<: *voltha-pipe-job-boiler-plate
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700185 # default values
186 pipeline-script: 'voltha/master/physical-build.groovy'
187 VolthaEtcdPort: 2379
188 num-of-openonu: 1
189 num-of-onos: 3
190 num-of-atomix: 3
191 test-repo: 'voltha-system-tests'
192 release: 'master'
193 name-extension: ''
194 branch: 'master'
195 configurePod: true
196 volthaHelmChartsChange: ''
197 profile: 'Default'
Matteo Scandolo6ddb0152021-05-07 11:25:17 -0700198 logLevel: 'DEBUG'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700199
200 <<: *voltha-build-job-parameters
201
202 concurrent: true
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700203 project-type: pipeline
204 dsl: !include-raw-escape: ../pipeline/{pipeline-script}
Matteo Scandolo9973c652020-08-07 15:23:35 -0700205
206 triggers:
207 - timed: |
208 TZ=America/Los_Angeles
209 H {time} * * *
210
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700211# this job template is defined to support VOLTHA-2.7 builds, remove after 2.8
Matteo Scandolo9973c652020-08-07 15:23:35 -0700212- job-template:
213 name: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}'
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700214 id: build_voltha_pod_release_legacy
Matteo Scandolo38a00b02020-09-15 13:27:06 -0700215 disabled: '{disable-job}'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700216 description: |
217 Automatic Build on POD {config-pod}, using {Jenkinsfile} in {gerrit-server-url}/voltha-system-tests' <br /><br />
Matteo Scandolo16090cd2020-08-12 15:42:42 -0700218 Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br />
Matteo Scandolo9973c652020-08-07 15:23:35 -0700219 Created by QA (Suchitra Vemuri - suchitra@opennetworking.org ) <br />
220 This job is triggered upon completion of a dependent _test job <br />
221 Copyright (c) 2020 Open Networking Foundation (ONF)
222
223 <<: *voltha-pipe-job-boiler-plate
224 VolthaEtcdPort: '2379'
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700225 release: '2.7'
226 branch: 'voltha-2.7'
227 volthaHelmChartsChange: '' # this is not supported in the VOLTHA-2.7 build, but the parameters are shared, ideally we should split them
Matteo Scandolo9973c652020-08-07 15:23:35 -0700228
229 <<: *voltha-build-job-parameters
230
231 concurrent: true
232
233 pipeline-scm:
234 script-path: '{Jenkinsfile}'
235 scm:
236 - git:
237 url: '{gerrit-server-url}/voltha-system-tests'
238 branches:
239 - '{branch}'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700240
Matteo Scandolo218b2dc2021-04-21 13:21:13 -0700241 triggers:
242 - timed: |
243 TZ=America/Los_Angeles
244 H {time} * * *
245
Matteo Scandolo9973c652020-08-07 15:23:35 -0700246# VOLTHA Test Job
247# This job is automatically triggered after a build job has successfully completed
248- job-template:
249 name: 'build_{config-pod}_{profile}_voltha{name-extension}_{release}_test'
250 id: build_voltha_pod_test
Matteo Scandolo38a00b02020-09-15 13:27:06 -0700251 disabled: '{disable-job}'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700252 description: |
253 Post Tests on {config-pod} triggered by build_{config-pod}_{branch}, using {pipeline-script}<br /><br />
Matteo Scandolo16090cd2020-08-12 15:42:42 -0700254 Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br />
Matteo Scandolo9973c652020-08-07 15:23:35 -0700255 Created by Suchitra Vemuri, suchitra@opennetworking.org <br />
256 Copyright (c) 2017 Open Networking Foundation (ONF)
257
258 <<: *voltha-pipe-job-boiler-plate
259 pipeline-script: 'voltha-physical-functional-tests.groovy'
260 manifest-url: 'https://gerrit.opencord.org/voltha-test-manifest.git'
261 manifest-branch: 'master'
262
Andrea Campanella0d3110c2021-01-20 12:25:45 +0100263 oltAdapterAppLabel: 'adapter-open-olt'
264
Matteo Scandolo9973c652020-08-07 15:23:35 -0700265 parameters:
266 - string:
267 name: buildNode
268 default: '{build-node}'
269 description: 'Name of the Jenkins executor node to run the job on'
270
271 - string:
272 name: TestNodeName
273 default: '{build-node}'
274 description: 'DEPRECATED - use buildNode instead'
275
276 - string:
277 name: cordRepoUrl
278 default: '{gerrit-server-url}'
279 description: 'The URL of the CORD Project repository'
280
281 - string:
282 name: configBaseDir
283 default: 'pod-configs'
284 description: 'The directory inside the POD configs repository'
285
286 - string:
287 name: configDeploymentDir
288 default: 'deployment-configs'
289 description: 'The deployment configs folder'
290
291 - string:
292 name: configKubernetesDir
293 default: 'kubernetes-configs'
294 description: 'The kubernetes config folder'
295
296 - string:
297 name: configToscaDir
298 default: 'tosca-configs'
299 description: 'The tosca config folder'
300
301 - string:
302 name: configFileName
303 default: '{config-pod}'
304 description: 'The config file'
305
306 - string:
307 name: profile
308 default: '{profile}'
309 description: 'Technology Profile pushed to the ETCD'
310
311 - string:
312 name: branch
313 default: '{branch}'
314 description: 'Branch of the test libraries to check out'
315
316 - string:
317 name: manifestUrl
318 default: '{manifest-url}'
319 description: 'Repo manifest URL for code checkout (so we can display changes in Jenkins)'
320
321 - string:
322 name: manifestBranch
323 default: '{manifest-branch}'
324 description: 'Repo manifest branch for code checkout (so we can display changes in Jenkins)'
325
326 - string:
327 name: workFlow
328 default: '{work-flow}'
329 description: 'Installs and uses the specified work flow on the POD'
330
331 - bool:
332 name: powerSwitch
333 default: '{power-switch}'
334 description: "Indicate whether POD has power switch to reboot ONUs/OLT remotely"
335
Andrea Campanella6ea62272020-09-16 11:10:52 +0200336 - string:
Andrea Campanella0d3110c2021-01-20 12:25:45 +0100337 name: oltAdapterAppLabel
338 default: '{oltAdapterAppLabel}'
339 description: 'OLT adapter pod name'
340
341 - string:
Andrea Campanella6ea62272020-09-16 11:10:52 +0200342 name: volthaSystemTestsChange
343 default: '{volthaSystemTestsChange}'
344 description: 'Download a change for gerrit in the voltha-system-tests repo, example value: "refs/changes/79/18779/13"'
345
346 - string:
347 name: kindVolthaChange
348 default: '{kindVolthaChange}'
349 description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'
350
351 - string:
352 name: cordTesterChange
353 default: '{cordTesterChange}'
354 description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'
355
Matteo Scandolo9973c652020-08-07 15:23:35 -0700356 concurrent: true
357
358 project-type: pipeline
359 dsl: !include-raw-escape: ../pipeline/{pipeline-script}
360
361 triggers:
362 - reverse:
363 jobs: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}'
364 result: 'success'
Suchitra Vemuri0921c752020-08-31 22:58:50 -0700365
366
Matteo Scandolod82d1de2021-04-06 14:55:58 -0700367# VOLTHA Soak Test Job
368# This job is triggered by a timer defined in the job
Suchitra Vemuri0921c752020-08-31 22:58:50 -0700369- job-template:
370 name: 'build_{config-pod}_{profile}_voltha{name-extension}_{release}_test'
371 id: build_voltha_pod_soak_test
Andrea Campanellab54cabe2020-11-26 14:48:11 +0100372 disabled: '{disable-job}'
Suchitra Vemuri0921c752020-08-31 22:58:50 -0700373 description: |
374 Post Tests on {config-pod} triggered by build_{config-pod}_{branch}, using {pipeline-script}<br /><br />
375 Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br />
376 Created by Suchitra Vemuri, suchitra@opennetworking.org <br />
377 Copyright (c) 2017 Open Networking Foundation (ONF)
378
379 <<: *voltha-pipe-job-boiler-plate
380 pipeline-script: 'voltha-physical-functional-tests.groovy'
381 manifest-url: 'https://gerrit.opencord.org/voltha-test-manifest.git'
382 manifest-branch: 'master'
383
Andrea Campanella0d3110c2021-01-20 12:25:45 +0100384 oltAdapterAppLabel: 'adapter-open-olt'
385
Suchitra Vemuri0921c752020-08-31 22:58:50 -0700386 parameters:
387 - string:
388 name: buildNode
389 default: '{build-node}'
390 description: 'Name of the Jenkins executor node to run the job on'
391
392 - string:
393 name: TestNodeName
394 default: '{build-node}'
395 description: 'DEPRECATED - use buildNode instead'
396
397 - string:
398 name: cordRepoUrl
399 default: '{gerrit-server-url}'
400 description: 'The URL of the CORD Project repository'
401
402 - string:
403 name: configBaseDir
404 default: 'pod-configs'
405 description: 'The directory inside the POD configs repository'
406
407 - string:
408 name: configDeploymentDir
409 default: 'deployment-configs'
410 description: 'The deployment configs folder'
411
412 - string:
413 name: configKubernetesDir
414 default: 'kubernetes-configs'
415 description: 'The kubernetes config folder'
416
417 - string:
418 name: configToscaDir
419 default: 'tosca-configs'
420 description: 'The tosca config folder'
421
422 - string:
423 name: configFileName
424 default: '{config-pod}'
425 description: 'The config file'
426
427 - string:
428 name: profile
429 default: '{profile}'
430 description: 'Technology Profile pushed to the ETCD'
431
432 - string:
433 name: branch
434 default: '{branch}'
435 description: 'Branch of the test libraries to check out'
436
437 - string:
438 name: manifestUrl
439 default: '{manifest-url}'
440 description: 'Repo manifest URL for code checkout (so we can display changes in Jenkins)'
441
442 - string:
443 name: manifestBranch
444 default: '{manifest-branch}'
445 description: 'Repo manifest branch for code checkout (so we can display changes in Jenkins)'
446
447 - string:
448 name: workFlow
449 default: '{work-flow}'
450 description: 'Installs and uses the specified work flow on the POD'
451
452 - bool:
453 name: powerSwitch
454 default: '{power-switch}'
455 description: "Indicate whether POD has power switch to reboot ONUs/OLT remotely"
456
Suchitra Vemurie6625222020-09-01 17:12:56 -0700457 - string:
Andrea Campanella0d3110c2021-01-20 12:25:45 +0100458 name: oltAdapterAppLabel
459 default: '{oltAdapterAppLabel}'
460 description: 'OLT adapter pod name'
461
462 - string:
Suchitra Vemurie6625222020-09-01 17:12:56 -0700463 name: testType
464 default: '{test-type}'
465 description: 'Passes the required test category to the groovy script'
466
Suchitra Vemurie3bb90d2020-09-15 17:15:50 -0700467 - string:
468 name: volthaSystemTestsChange
469 default: '{volthaSystemTestsChange}'
470 description: 'Download a change for gerrit in the voltha-system-tests repo, example value: "refs/changes/79/18779/13"'
471
472 - string:
473 name: kindVolthaChange
474 default: '{kindVolthaChange}'
475 description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'
476
477 - string:
478 name: cordTesterChange
479 default: '{cordTesterChange}'
480 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 -0700481 concurrent: true
482
483 project-type: pipeline
484 dsl: !include-raw-escape: ../pipeline/{pipeline-script}
485
486 triggers:
487 - timed: |
488 TZ=America/Los_Angeles
489 {time-trigger}