blob: 4dae83d137d1c515073525bf787a88eb41be87ba [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
7 parameters:
8 - string:
9 name: buildNode
10 default: '{build-node}'
11 description: 'Name of the Jenkins executor node to run the job on'
12
13 - string:
14 name: TestNodeName
15 default: '{build-node}'
16 description: 'DEPRECATED - use buildNode instead'
17
18 - string:
19 name: cordRepoUrl
20 default: '{gerrit-server-url}'
21 description: 'The URL of the CORD Project repository'
22
23 - string:
24 name: configBaseDir
25 default: 'pod-configs'
26 description: 'The directory inside the POD configs repository'
27
28 - string:
29 name: configDeploymentDir
30 default: 'deployment-configs'
31 description: 'The deployment configs folder'
32
33 - string:
34 name: configKubernetesDir
35 default: 'kubernetes-configs'
36 description: 'The kubernetes config folder'
37
38 - string:
39 name: configToscaDir
40 default: 'tosca-configs'
41 description: 'The tosca config folder'
42
43 - string:
44 name: configFileName
45 default: '{config-pod}'
46 description: 'The config file'
47
48 - string:
49 name: profile
50 default: '{profile}'
51 description: 'Technology Profile pushed to the ETCD'
52
53 - string:
54 name: helmRepoUrl
55 default: 'https://charts.opencord.org'
56 description: 'URL where helm-charts are published'
57
58 - string:
59 name: branch
60 default: '{branch}'
61
62 - string:
63 name: notificationEmail
64 default: 'you@opennetworking.org, suchitra@opennetworking.org'
65 description: ''
66
67 - string:
68 name: workFlow
69 default: '{work-flow}'
70 description: 'Installs and uses the specified work flow on the POD'
71
72 - string:
73 name: NumOfOpenOnu
74 default: '{num-of-openonu}'
75 description: 'Installs the specified Number of OpenOnu Adapters'
76
77 - string:
78 name: NumOfOnos
79 default: '{num-of-onos}'
80 description: 'Installs the specified Number of ONOS instances'
81
82 - string:
83 name: NumOfAtomix
84 default: '{num-of-atomix}'
85 description: 'Installs the specified Number of Atomix Instances'
86
87 - bool:
88 name: configurePod
89 default: true
90 description: "Configure POD via TOSCA post build"
91
92 - bool:
93 name: reinstallOlt
94 default: '{reinstall-olt}'
95 description: "Re-install olt software bringing up CORD"
96
97 - bool:
98 name: withKind
99 default: '{with-kind}'
100 description: "The pods uses kind and a physical fabric thus port forward to the management is needed"
101
102 - string:
103 name: VolthaEtcdPort
104 default: '{VolthaEtcdPort}'
105 description: 'Localhost port that is forwarded to VOLTHA etcd'
106
107 - bool:
108 name: inBandManagement
109 default: '{in-band-management}'
110 description: 'Indicates whether POD is configured for in band management'
111
Matteo Scandolo3dce2a12020-09-15 14:21:14 -0700112 - string:
113 name: volthaSystemTestsChange
114 default: '{volthaSystemTestsChange}'
115 description: 'Download a change for gerrit in the voltha-system-tests repo, example value: "refs/changes/79/18779/13"'
116
117 - string:
118 name: kindVolthaChange
119 default: '{kindVolthaChange}'
120 description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'
121
122 - string:
123 name: cordTesterChange
124 default: '{cordTesterChange}'
125 description: 'Download a change for gerrit in the kind-voltha repo, example value: "refs/changes/32/19132/1"'
126
Matteo Scandolo9973c652020-08-07 15:23:35 -0700127# defualt properties for the VOLTHA scale jobs
128- voltha-pipe-job-boiler-plate: &voltha-pipe-job-boiler-plate
129 name: voltha-pipe-job-boiler-plate
130
131 project-type: pipeline
132
133 sandbox: true
134
135 properties:
136 - cord-infra-properties:
137 build-days-to-keep: 30
138 artifact-num-to-keep: 15
139
140# VOLTHA Build Jobs
141- job-template:
142 name: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}'
143 id: build_voltha_pod_release_timer
Suchitra Vemuri26fe2432020-09-14 19:51:32 -0700144 disabled: '{disable-job}'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700145 description: |
146 Manual Build on POD {config-pod}, using {Jenkinsfile} in {gerrit-server-url}/voltha-system-tests' <br /><br />
Matteo Scandolo16090cd2020-08-12 15:42:42 -0700147 Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br />
Matteo Scandolo9973c652020-08-07 15:23:35 -0700148 Created by QA (Suchitra Vemuri - suchitra@opennetworking.org ) <br />
149 Copyright (c) 2018 Open Networking Foundation (ONF)
150
151 <<: *voltha-pipe-job-boiler-plate
152 VolthaEtcdPort: '2379'
153
154 <<: *voltha-build-job-parameters
155
156 concurrent: true
157
158 pipeline-scm:
159 script-path: '{Jenkinsfile}'
160 scm:
161 - git:
162 url: '{gerrit-server-url}/voltha-system-tests'
163 branches:
164 - '{branch}'
165
166 triggers:
167 - timed: |
168 TZ=America/Los_Angeles
169 H {time} * * *
170
171- job-template:
172 name: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}'
173 id: build_voltha_pod_release_dependent
Matteo Scandolo38a00b02020-09-15 13:27:06 -0700174 disabled: '{disable-job}'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700175 description: |
176 Automatic Build on POD {config-pod}, using {Jenkinsfile} in {gerrit-server-url}/voltha-system-tests' <br /><br />
Matteo Scandolo16090cd2020-08-12 15:42:42 -0700177 Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br />
Matteo Scandolo9973c652020-08-07 15:23:35 -0700178 Created by QA (Suchitra Vemuri - suchitra@opennetworking.org ) <br />
179 This job is triggered upon completion of a dependent _test job <br />
180 Copyright (c) 2020 Open Networking Foundation (ONF)
181
182 <<: *voltha-pipe-job-boiler-plate
183 VolthaEtcdPort: '2379'
184
185 <<: *voltha-build-job-parameters
186
187 concurrent: true
188
189 pipeline-scm:
190 script-path: '{Jenkinsfile}'
191 scm:
192 - git:
193 url: '{gerrit-server-url}/voltha-system-tests'
194 branches:
195 - '{branch}'
196 triggers:
197 - reverse:
198 jobs: '{trigger-after}'
199 result: 'success'
200
201# VOLTHA Test Job
202# This job is automatically triggered after a build job has successfully completed
203- job-template:
204 name: 'build_{config-pod}_{profile}_voltha{name-extension}_{release}_test'
205 id: build_voltha_pod_test
Matteo Scandolo38a00b02020-09-15 13:27:06 -0700206 disabled: '{disable-job}'
Matteo Scandolo9973c652020-08-07 15:23:35 -0700207 description: |
208 Post Tests on {config-pod} triggered by build_{config-pod}_{branch}, using {pipeline-script}<br /><br />
Matteo Scandolo16090cd2020-08-12 15:42:42 -0700209 Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br />
Matteo Scandolo9973c652020-08-07 15:23:35 -0700210 Created by Suchitra Vemuri, suchitra@opennetworking.org <br />
211 Copyright (c) 2017 Open Networking Foundation (ONF)
212
213 <<: *voltha-pipe-job-boiler-plate
214 pipeline-script: 'voltha-physical-functional-tests.groovy'
215 manifest-url: 'https://gerrit.opencord.org/voltha-test-manifest.git'
216 manifest-branch: 'master'
217
218 parameters:
219 - string:
220 name: buildNode
221 default: '{build-node}'
222 description: 'Name of the Jenkins executor node to run the job on'
223
224 - string:
225 name: TestNodeName
226 default: '{build-node}'
227 description: 'DEPRECATED - use buildNode instead'
228
229 - string:
230 name: cordRepoUrl
231 default: '{gerrit-server-url}'
232 description: 'The URL of the CORD Project repository'
233
234 - string:
235 name: configBaseDir
236 default: 'pod-configs'
237 description: 'The directory inside the POD configs repository'
238
239 - string:
240 name: configDeploymentDir
241 default: 'deployment-configs'
242 description: 'The deployment configs folder'
243
244 - string:
245 name: configKubernetesDir
246 default: 'kubernetes-configs'
247 description: 'The kubernetes config folder'
248
249 - string:
250 name: configToscaDir
251 default: 'tosca-configs'
252 description: 'The tosca config folder'
253
254 - string:
255 name: configFileName
256 default: '{config-pod}'
257 description: 'The config file'
258
259 - string:
260 name: profile
261 default: '{profile}'
262 description: 'Technology Profile pushed to the ETCD'
263
264 - string:
265 name: branch
266 default: '{branch}'
267 description: 'Branch of the test libraries to check out'
268
269 - string:
270 name: manifestUrl
271 default: '{manifest-url}'
272 description: 'Repo manifest URL for code checkout (so we can display changes in Jenkins)'
273
274 - string:
275 name: manifestBranch
276 default: '{manifest-branch}'
277 description: 'Repo manifest branch for code checkout (so we can display changes in Jenkins)'
278
279 - string:
280 name: workFlow
281 default: '{work-flow}'
282 description: 'Installs and uses the specified work flow on the POD'
283
284 - bool:
285 name: powerSwitch
286 default: '{power-switch}'
287 description: "Indicate whether POD has power switch to reboot ONUs/OLT remotely"
288
289 concurrent: true
290
291 project-type: pipeline
292 dsl: !include-raw-escape: ../pipeline/{pipeline-script}
293
294 triggers:
295 - reverse:
296 jobs: 'build_{config-pod}_{profile}{name-extension}_voltha_{release}'
297 result: 'success'
Suchitra Vemuri0921c752020-08-31 22:58:50 -0700298
299
300# VOLTHA Test Job
301# This job is automatically triggered after a build job has successfully completed
302- job-template:
303 name: 'build_{config-pod}_{profile}_voltha{name-extension}_{release}_test'
304 id: build_voltha_pod_soak_test
305 description: |
306 Post Tests on {config-pod} triggered by build_{config-pod}_{branch}, using {pipeline-script}<br /><br />
307 Created from job-template {id} from ci-management/jjb/voltha-test/voltha-nightly-jobs.yaml <br />
308 Created by Suchitra Vemuri, suchitra@opennetworking.org <br />
309 Copyright (c) 2017 Open Networking Foundation (ONF)
310
311 <<: *voltha-pipe-job-boiler-plate
312 pipeline-script: 'voltha-physical-functional-tests.groovy'
313 manifest-url: 'https://gerrit.opencord.org/voltha-test-manifest.git'
314 manifest-branch: 'master'
315
316 parameters:
317 - string:
318 name: buildNode
319 default: '{build-node}'
320 description: 'Name of the Jenkins executor node to run the job on'
321
322 - string:
323 name: TestNodeName
324 default: '{build-node}'
325 description: 'DEPRECATED - use buildNode instead'
326
327 - string:
328 name: cordRepoUrl
329 default: '{gerrit-server-url}'
330 description: 'The URL of the CORD Project repository'
331
332 - string:
333 name: configBaseDir
334 default: 'pod-configs'
335 description: 'The directory inside the POD configs repository'
336
337 - string:
338 name: configDeploymentDir
339 default: 'deployment-configs'
340 description: 'The deployment configs folder'
341
342 - string:
343 name: configKubernetesDir
344 default: 'kubernetes-configs'
345 description: 'The kubernetes config folder'
346
347 - string:
348 name: configToscaDir
349 default: 'tosca-configs'
350 description: 'The tosca config folder'
351
352 - string:
353 name: configFileName
354 default: '{config-pod}'
355 description: 'The config file'
356
357 - string:
358 name: profile
359 default: '{profile}'
360 description: 'Technology Profile pushed to the ETCD'
361
362 - string:
363 name: branch
364 default: '{branch}'
365 description: 'Branch of the test libraries to check out'
366
367 - string:
368 name: manifestUrl
369 default: '{manifest-url}'
370 description: 'Repo manifest URL for code checkout (so we can display changes in Jenkins)'
371
372 - string:
373 name: manifestBranch
374 default: '{manifest-branch}'
375 description: 'Repo manifest branch for code checkout (so we can display changes in Jenkins)'
376
377 - string:
378 name: workFlow
379 default: '{work-flow}'
380 description: 'Installs and uses the specified work flow on the POD'
381
382 - bool:
383 name: powerSwitch
384 default: '{power-switch}'
385 description: "Indicate whether POD has power switch to reboot ONUs/OLT remotely"
386
Suchitra Vemurie6625222020-09-01 17:12:56 -0700387 - string:
388 name: testType
389 default: '{test-type}'
390 description: 'Passes the required test category to the groovy script'
391
Suchitra Vemuri0921c752020-08-31 22:58:50 -0700392 concurrent: true
393
394 project-type: pipeline
395 dsl: !include-raw-escape: ../pipeline/{pipeline-script}
396
397 triggers:
398 - timed: |
399 TZ=America/Los_Angeles
400 {time-trigger}