blob: 22d4eab2eaaaf5c49b005f1b70aaf558b368432f [file] [log] [blame]
Devin Lim38d14062018-01-11 17:08:00 -08001---
2# ONOS System Test Pipeline jobs
3
Devin Lim7a877872018-01-16 14:50:57 -08004# TODO: for some reason, lf-* types of macro cannot access to the variable. I think it is typical problem to pipeline job type.
5
Devin Lim38d14062018-01-11 17:08:00 -08006- var-init-boiler-plate: &var-init-boiler-plate
7 name: var-init-boiler-plate
8 FUNC: "FUNCgroup\nFUNCflow\nFUNCintent\nFUNCintentRest\nFUNCipv6Intent\nFUNCnetCfg\nFUNCnetconf\nFUNCoptical\nFUNCovsdbtest\nFUNCformCluster"
9 HA: "HAclusterRestart\nHAfullNetPartition\nHAkillNodes\nHAsanity\nHAscaling\nHAsingleInstanceRestart\nHAstopNodes\nHAswapNodes\nHAupgrade\nHAupgradeRollback"
10 SCPF: "SCPFcbench\nSCPFflowTp1g\nSCPFhostLat\nSCPFintentEventTp\nSCPFintentInstallWithdrawLat\nSCPFintentRerouteLat\nSCPFmastershipFailoverLat\nSCPFbatchFlowResp\nSCPFportLat\nSCPFscaleTopo\nSCPFscalingMaxIntents\nSCPFswitchLat\nSCPFflowTp1gWithFlowObj\nSCPFintentEventTpWithFlowObj\nSCPFintentRerouteLatWithFlowObj\nSCPFscalingMaxIntentsWithFlowObj\nSCPFintentInstallWithdrawLatWithFlowObj"
Devin Lim80546912018-03-23 17:49:39 -070011 USECASE: "FUNCbgpls\nFUNCvirNetNB\nPLATdockertest\nVPLSBasic\nVPLSfailsafe\nUSECASE_SdnipFunction\nUSECASE_SdnipFunctionCluster"
12 SR: "SRRouting\nSRBridging\nSRDhcprelay\nSRDynamicConf\nSRMulticast\nSRClusterRestart\nSRDynamic\nSRHighAvailability\nSRLinkFailure\nSROnosFailure\nSRSanity\nSRSwitchFailure"
Devin Lim38d14062018-01-11 17:08:00 -080013
Devin Lim49200ec2018-01-19 16:17:41 -080014- test-pipe-job-boiler-plate: &test-pipe-job-boiler-plate
15 name: test-pipe-job-boiler-plate
Devin Lim38d14062018-01-11 17:08:00 -080016
17 project-type: pipeline
18
19 sandbox: true
20
Devin Lim38d14062018-01-11 17:08:00 -080021 properties:
22
23 - build-discarder:
24 num-to-keep: 20
Devin Limca864a12018-02-09 11:25:30 -080025 gitURL: https://gerrit.onosproject.org/OnosSystemTest
Devin Lim38d14062018-01-11 17:08:00 -080026
Devin Lim49200ec2018-01-19 16:17:41 -080027- test-pipe-init-procedure-plate: &test-pipe-init-procedure-plate
28 name: test-pipe-init-procedure-plate
Devin Lim7a877872018-01-16 14:50:57 -080029 project: OnosSystemTest
30 stream: 'master'
31 jenkins-path: 'TestON/JenkinsFile'
32
33- job-version-plate: &job-version-plate
34 name: job-version-plate
35 version:
36 - '1.11'
37 - '1.12'
Devin Lim7550e022018-04-13 18:31:02 -070038 - '1.13'
Devin Lim7a877872018-01-16 14:50:57 -080039 - 'master'
40 - 'manually'
41
42- job-type-plate: &job-type-plate
43 name: job-type-plate
44 type:
45 - 'FUNC'
46 - 'HA'
47 - 'SCPF'
48 - 'USECASE'
Devin Lim323c9872018-01-30 19:57:58 -080049 - 'SR'
Devin Lim7a877872018-01-16 14:50:57 -080050
Devin Lim74cf6cb2018-01-12 15:03:34 -080051- job-template:
Devin Lim38d14062018-01-11 17:08:00 -080052 name: all-pipeline-trigger
Jeremy Ronquillo34e993b2018-02-07 10:43:15 -080053 description: |
54 <!-- Managed by Jenkins Job Builder -->
Devin Lim1c4753e2018-03-23 15:31:38 -070055 all-pipeline-trigger can trigger any TestON test on any branch of ONOS and TestON, by running the test category pipeline that contains the test. <br />
Jeremy Ronquillo34e993b2018-02-07 10:43:15 -080056 This pipeline is triggered by timer for the nightly builds. <br />
Jeremy Ronquillo34e993b2018-02-07 10:43:15 -080057 Created by Devin Lim - devin@opennetworking.org<br />
58 Copyright (c) 2017 Open Networking Foundation (ONF)
Devin Lim38d14062018-01-11 17:08:00 -080059
Devin Lim49200ec2018-01-19 16:17:41 -080060 <<: *test-pipe-job-boiler-plate
Devin Lim38d14062018-01-11 17:08:00 -080061
Devin Lim7a877872018-01-16 14:50:57 -080062 parameters:
Devin Lim74cf6cb2018-01-12 15:03:34 -080063
Devin Limd0700312018-05-10 14:49:38 -070064 - bool:
65 name: manual_run
66 default: false
67 description: |
68 Check this option if you are manually running this job (you most likely are). <br />
69
Devin Lim74cf6cb2018-01-12 15:03:34 -080070 - text:
Devin Lim3e15df62018-05-09 17:45:51 -070071 name: machines
Devin Lim7a877872018-01-16 14:50:57 -080072 default: |
Devin Lim3e15df62018-05-09 17:45:51 -070073 vm
74 bm
75 fabric
76 description: 'Specify the machine-trigger you want to run.'
Devin Lim38d14062018-01-11 17:08:00 -080077
Devin Lim7a877872018-01-16 14:50:57 -080078 - lf-infra-parameters:
79 project: 'OnosSystemTest'
80 branch: 'master'
81 stream: 'master'
82 lftools-version: '<1.0.0'
83
Devin Lim3e15df62018-05-09 17:45:51 -070084 concurrent: true
Devin Lim38d14062018-01-11 17:08:00 -080085
Devin Lim2b5ef2e2018-02-27 14:05:08 -080086 triggers:
87 - timed: |
Devin Lime625f9a2018-03-26 12:04:47 -070088 TZ=America/Los_Angeles
89 30 19 * * 1,2,3,4,5
90 30 11 * * 6,7
Devin Lim38d14062018-01-11 17:08:00 -080091
92 pipeline-scm:
Devin Lim7a877872018-01-16 14:50:57 -080093 script-path: '{jenkins-path}/JenkinsfileTrigger'
94 scm:
95 - git:
Devin Limca864a12018-02-09 11:25:30 -080096 url: '{gitURL}'
Devin Lim7a877872018-01-16 14:50:57 -080097 branches:
98 - 'master'
99
100- job-template:
Devin Lim3e15df62018-05-09 17:45:51 -0700101 name: '{machine}-pipeline-trigger'
102 id: pipeline-trigger
Devin Lim1c4753e2018-03-23 15:31:38 -0700103 description: |
104 <!-- Managed by Jenkins Job Builder -->
Devin Lim3e15df62018-05-09 17:45:51 -0700105 {machine}-pipeline-trigger can trigger Segment Routing TestON test on any branch of ONOS and TestON, by running the test category pipeline that contains the test. <br />
Devin Lim1c4753e2018-03-23 15:31:38 -0700106 This pipeline is triggered by timer for the nightly builds. <br />
107 You may manually trigger this pipeline as well - provide the tests to run and the branch of ONOS and TestON. <br /> <br />
108 Note: <i>The console output for this job does <b>not</b> contain any test result logs.</i><br />
Devin Lim3e15df62018-05-09 17:45:51 -0700109 Visit the test category pipelines (such as <a href="https://jenkins.onosproject.org/view/QA/job/FUNC-pipeline-master/">FUNC-pipeline-master</a>) to view the test logs. <br /> <br />
Devin Lim1c4753e2018-03-23 15:31:38 -0700110 Created by Devin Lim - devin@opennetworking.org<br />
111 Copyright (c) 2017 Open Networking Foundation (ONF)
112
Devin Lim1c4753e2018-03-23 15:31:38 -0700113 <<: *test-pipe-job-boiler-plate
114
115 parameters:
116
117 - bool:
118 name: manual_run
119 default: false
120 description: |
121 Check this option if you are manually running this job (you most likely are). <br />
122 You must specify which tests to run in the text field below.
123
124 - bool:
125 name: PostResult
126 default: false
127 description: |
128 Check this option if you want to update the results on the wiki. <br />
129 When manually run, this will update the wiki pages corresponding to the tests that were run. <br />
130 This option will always be selected during nightly builds.
131
132 - bool:
133 name: isOldFlow
134 default: true
135 description: |
136 Check this option if you prefer to run the old flow rule over the new one. <br />
137 * This only applies to SCPF tests.
138
139 - choice:
140 name: ONOSVersion
141 choices:
142 - 'master'
Devin Lim7550e022018-04-13 18:31:02 -0700143 - '1.13'
Devin Lim1c4753e2018-03-23 15:31:38 -0700144 - '1.12'
145 - '1.11'
146 description: "ONOS and TestON versions to run on."
147
148 - string:
149 name: ONOSJVMHeap
150 default: "\"${{JAVA_OPTS:--Xms8G -Xmx8G}}\""
151 description: 'ONOS cell JVM heap size setting.'
152
153 - string:
154 name: ONOSTag
155 default: ''
156 desciption: 'specific branch trying to checkout'
157
158 - text:
159 name: Tests
160 default: |
Devin Lim3e15df62018-05-09 17:45:51 -0700161 {testList}
Devin Lim1c4753e2018-03-23 15:31:38 -0700162
163 description: 'Specify the tests you want to run, if manual_run is selected.'
164
165 - lf-infra-parameters:
166 project: 'OnosSystemTest'
167 branch: 'master'
168 stream: 'master'
169 lftools-version: '<1.0.0'
170
171 concurrent: false
172
Devin Lim1c4753e2018-03-23 15:31:38 -0700173 pipeline-scm:
Devin Lim3e15df62018-05-09 17:45:51 -0700174 script-path: '{jenkins-path}/{fileName}JenkinsfileTrigger'
Devin Lim1c4753e2018-03-23 15:31:38 -0700175 scm:
176 - git:
177 url: '{gitURL}'
178 branches:
179 - 'master'
180
181- job-template:
Devin Lim7a877872018-01-16 14:50:57 -0800182 name: '{type}-pipeline-{version}'
Jeremy Ronquilloae3c7692018-03-05 08:47:05 -0800183 description: '<!-- Managed by Jenkins Job Builder -->
184 This pipeline contains the test results and logs of {type} on ONOS {version}. <br /><br />
Jeremy Ronquillo34e993b2018-02-07 10:43:15 -0800185 Visit <a href="https://jenkins.onosproject.org/view/QA/job/all-pipeline-trigger/">all-pipeline-trigger</a> to trigger a build in this pipeline.<br />
186 <font color="red">Unless debugging, DO NOT MANUALLY BUILD THIS PIPELINE.</font><br /><br />
187 Created by Devin Lim - devin@opennetworking.org<br />
Jeremy Ronquilloae3c7692018-03-05 08:47:05 -0800188 Copyright (c) 2017 Open Networking Foundation (ONF)'
Devin Lim7a877872018-01-16 14:50:57 -0800189
Devin Lim49200ec2018-01-19 16:17:41 -0800190 <<: *test-pipe-job-boiler-plate
Devin Lim7a877872018-01-16 14:50:57 -0800191
192 parameters:
193
194 - string:
195 name: TRIGGER_ONLY_WHEN_PREVIOUS_JOB_WAS_BUILT_HERE
196 default: 'DO_NOT_MANUALLY_TRIGGER_A_BUILD_HERE'
197 description: |
Jeremy Ronquillo34e993b2018-02-07 10:43:15 -0800198 <a href="https://jenkins.onosproject.org/view/QA/job/all-pipeline-trigger/">all-pipeline-trigger</a> triggers this pipeline automatically.
Devin Lim7a877872018-01-16 14:50:57 -0800199
200 - lf-infra-parameters:
201 project: 'OnosSystemTest'
202 branch: 'master'
203 stream: 'master'
204 lftools-version: '<1.0.0'
205
206 concurrent: false
207
208 pipeline-scm:
209 script-path: '{jenkins-path}/{type}JenkinsFile'
210 scm:
211 - git:
Devin Limca864a12018-02-09 11:25:30 -0800212 url: '{gitURL}'
Devin Lim7a877872018-01-16 14:50:57 -0800213 branches:
214 - 'master'
215
216- job-template:
217 name: 'manual-graph-generator-SCPF'
Jeremy Ronquillo34e993b2018-02-07 10:43:15 -0800218 description: |
219 <!-- Managed by Jenkins Job Builder -->
220 Refresh the wiki graphs here. Useful when there is a change in the graph scripts.<br />
221 <br />
222 You may also generate a graph trend that displays any number of builds here.<br />
223 However, keep in mind that only the 50 build graphs will be displayed on the wiki, unless they are manually changed on the wiki.<br >
224 <br >
225 Graphs are stored in the <a href="https://jenkins.onosproject.org/view/QA/job/postjob-BM/">postjob-BM<a> workspace.
Devin Lim7a877872018-01-16 14:50:57 -0800226
227 <<: *var-init-boiler-plate
Devin Lim49200ec2018-01-19 16:17:41 -0800228 <<: *test-pipe-job-boiler-plate
Devin Lim7a877872018-01-16 14:50:57 -0800229
230 parameters:
231
Devin Lim7a877872018-01-16 14:50:57 -0800232 - choice:
233 name: ONOSbranch
234 choices:
235 - 'master'
Devin Lim7550e022018-04-13 18:31:02 -0700236 - 'onos-1.13'
Devin Lim7a877872018-01-16 14:50:57 -0800237 - 'onos-1.12'
238 - 'onos-1.11'
239 description: "Possible branches (may vary depending on test)"
240
241 - bool:
Devin Lim397fa7c2018-04-13 16:25:01 -0700242 name: isOldFlow
Devin Lim7a877872018-01-16 14:50:57 -0800243 default: false
244 description: 'Check if it is using the old flow rules'
245
246 - text:
247 name: Test
248 default: '{SCPF}'
249 description: 'List of the tests to generate.'
250
251 - lf-infra-parameters:
252 project: 'OnosSystemTest'
253 branch: 'master'
254 stream: 'master'
255 lftools-version: '<1.0.0'
256
257 pipeline-scm:
258 script-path: '{jenkins-path}/SCPF_Graph_Generator'
259 scm:
260 - git:
Devin Limca864a12018-02-09 11:25:30 -0800261 url: '{gitURL}'
Devin Lim7a877872018-01-16 14:50:57 -0800262 branches:
263 - 'master'
264
265- job-template:
266 name: 'manual-graph-generator-trend'
Jeremy Ronquillo34e993b2018-02-07 10:43:15 -0800267 description: |
268 <!-- Managed by Jenkins Job Builder -->
269 Refresh the trend graphs here. Useful when there is a change in the graph scripts. <br />
270 Graphs are stored in their respective Postjob pipeline.
271
Devin Lim7a877872018-01-16 14:50:57 -0800272
273 <<: *var-init-boiler-plate
Devin Lim49200ec2018-01-19 16:17:41 -0800274 <<: *test-pipe-job-boiler-plate
Devin Lim7a877872018-01-16 14:50:57 -0800275
276 parameters:
277
278 - choice:
279 name: ONOSbranch
280 choices:
281 - 'master'
Devin Lim7550e022018-04-13 18:31:02 -0700282 - 'onos-1.13'
Devin Lim7a877872018-01-16 14:50:57 -0800283 - 'onos-1.12'
284 - 'onos-1.11'
285 description: "Possible branches (may vary depending on test)"
286
287 - choice:
288 name: NodeCluster
289 choices:
290 - VM
291 - BM
Devin Lim80546912018-03-23 17:49:39 -0700292 - Fabric
Devin Lim7a877872018-01-16 14:50:57 -0800293 description: |
Jeremy Ronquillo34e993b2018-02-07 10:43:15 -0800294 Node cluster where the test graphs in the list are located. <br />
Devin Lim7a877872018-01-16 14:50:57 -0800295 List of the tests will be refreshed depends on the node cluster.
296
297 - text:
298 name: Test
299 default: |
300 VM:
301 {FUNC}
302 {HA}
303 BM:
304 {USECASE}
Devin Lim80546912018-03-23 17:49:39 -0700305 Fabric:
306 {SR}
Devin Lim7a877872018-01-16 14:50:57 -0800307 description: 'List of the tests to generate.'
308
309 - string:
310 name: Builds
Devin Lim72caaba2018-03-02 15:15:46 -0800311 default: '20'
Devin Lim7a877872018-01-16 14:50:57 -0800312 description: 'Builds to show in the graph.'
313
314 - lf-infra-parameters:
315 project: 'OnosSystemTest'
316 branch: 'master'
317 stream: 'master'
318 lftools-version: '<1.0.0'
319
320 pipeline-scm:
321 script-path: '{jenkins-path}/Trend_Graph_Generator'
Devin Lim38d14062018-01-11 17:08:00 -0800322 scm:
323 - git:
Devin Limca864a12018-02-09 11:25:30 -0800324 url: '{gitURL}'
Devin Lim38d14062018-01-11 17:08:00 -0800325 branches:
Devin Lim74cf6cb2018-01-12 15:03:34 -0800326 - 'master'
Devin Lim38d14062018-01-11 17:08:00 -0800327
Jeremy Ronquillo3dbd8e82018-03-05 10:23:25 -0800328- job-template:
329 name: 'manual-graph-generator-overall'
330 description: |
331 <!-- Managed by Jenkins Job Builder -->
332 Refresh the overall graphs here. Useful when there is a change in the graph scripts. <br />
333 Graphs are stored in pipeline-postjob-vm.
334
335 <<: *test-pipe-job-boiler-plate
336
337 parameters:
338 - choice:
339 name: ONOSbranch
340 choices:
341 - 'master'
Devin Lim7550e022018-04-13 18:31:02 -0700342 - 'onos-1.13'
Jeremy Ronquillo3dbd8e82018-03-05 10:23:25 -0800343 - 'onos-1.12'
344 - 'onos-1.11'
345 description: "Possible branches (may vary depending on test)"
346
347 - lf-infra-parameters:
348 project: 'OnosSystemTest'
349 branch: 'master'
350 stream: 'master'
351 lftools-version: '<1.0.0'
352
353 pipeline-scm:
354 script-path: '{jenkins-path}/Overall_Graph_Generator'
355 scm:
356 - git:
357 url: '{gitURL}'
358 branches:
359 - 'master'
360
Devin Lim02197b22018-05-10 17:09:38 -0700361- job-template:
362 name: 'graph-generator-CHO'
363 description: |
364 <!-- Managed by Jenkins Job Builder -->
365 Generates the CHO graphs. <br />
366 Graphs are stored in pipeline-postjob-cho.
367
368 <<: *test-pipe-job-boiler-plate
369
370 parameters:
371 - text:
372 name: ONOSbranch
373 default: |
374 master
375 description: "Branch of the onos"
376
Devin Lime48c6dd2018-05-14 13:58:21 -0700377 - choice:
378 name: hours
379 choices:
380 - '168'
381 - '72'
382 description: "Hours of data to display."
383
Devin Lim02197b22018-05-10 17:09:38 -0700384 - lf-infra-parameters:
385 project: 'OnosSystemTest'
386 branch: 'master'
387 stream: 'master'
388 lftools-version: '<1.0.0'
Devin Lime91edd42018-05-11 15:50:09 -0700389 triggers:
390 - timed: 'H/60 * * * *'
Devin Lim02197b22018-05-10 17:09:38 -0700391 pipeline-scm:
392 script-path: '{jenkins-path}/CHO_Graph_Generator'
393 scm:
394 - git:
395 url: '{gitURL}'
396 branches:
397 - 'master'
398
Devin Lim38d14062018-01-11 17:08:00 -0800399- project:
Devin Lim1c4753e2018-03-23 15:31:38 -0700400 name: pipeline-trigger
401 project-name: pipeline-trigger
Devin Lim7a877872018-01-16 14:50:57 -0800402
Devin Lim49200ec2018-01-19 16:17:41 -0800403 <<: *test-pipe-init-procedure-plate
Devin Lim3e15df62018-05-09 17:45:51 -0700404 <<: *var-init-boiler-plate
Devin Lim7a877872018-01-16 14:50:57 -0800405
Devin Lim38d14062018-01-11 17:08:00 -0800406 jobs:
407 - 'all-pipeline-trigger'
Devin Lim3e15df62018-05-09 17:45:51 -0700408 - 'pipeline-trigger':
409 machine: 'vm'
Devin Lim781a7552018-05-10 14:24:55 -0700410 testList: |
411 {FUNC}
412 {HA}
Devin Lim3e15df62018-05-09 17:45:51 -0700413 fileName: 'VM_BM'
414
415 - 'pipeline-trigger':
416 machine: 'bm'
Devin Lim781a7552018-05-10 14:24:55 -0700417 testList: |
418 {SCPF}
419 {USECASE}
Devin Lim3e15df62018-05-09 17:45:51 -0700420 fileName: 'VM_BM'
421
422 - 'pipeline-trigger':
423 machine: 'fabric'
424 testList: '{SR}'
425 fileName: 'Fabric'
Devin Lim7a877872018-01-16 14:50:57 -0800426
427- project:
428 name: build-pipeline
429
430 <<: *job-type-plate
431
432 project-name: '{type}-pipeline'
433
Devin Lim49200ec2018-01-19 16:17:41 -0800434 <<: *test-pipe-init-procedure-plate
Devin Lim7a877872018-01-16 14:50:57 -0800435 <<: *job-version-plate
436
437 jobs:
438 - '{type}-pipeline-{version}'
439
440- project:
441 name: graph-generator
442
443 project-name: 'graph-generator'
444
Devin Lim49200ec2018-01-19 16:17:41 -0800445 <<: *test-pipe-init-procedure-plate
Devin Lim7a877872018-01-16 14:50:57 -0800446
447 jobs:
448 - 'manual-graph-generator-SCPF'
449 - 'manual-graph-generator-trend'
Jeremy Ronquillo3dbd8e82018-03-05 10:23:25 -0800450 - 'manual-graph-generator-overall'
Devin Lim02197b22018-05-10 17:09:38 -0700451 - 'graph-generator-CHO'