blob: c6355dc7f854b3dc57b3af6b7fdbae896d9197ec [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"
Jon Hall9017d2e2018-06-11 12:04:52 -070013 SRHA: "SRHAclusterRestart\nSRHAfullNetPartition\nSRHAkillNodes\nSRHAsanity\nSRHAscaling\nSRHAsingleInstanceRestart\nSRHAstopNodes\nSRHAswapNodes\nSRHAupgrade\nSRHAupgradeRollback"
14
Devin Lim38d14062018-01-11 17:08:00 -080015
Devin Lim49200ec2018-01-19 16:17:41 -080016- test-pipe-job-boiler-plate: &test-pipe-job-boiler-plate
17 name: test-pipe-job-boiler-plate
Devin Lim38d14062018-01-11 17:08:00 -080018
19 project-type: pipeline
20
21 sandbox: true
22
Devin Lim38d14062018-01-11 17:08:00 -080023 properties:
24
25 - build-discarder:
26 num-to-keep: 20
Devin Limca864a12018-02-09 11:25:30 -080027 gitURL: https://gerrit.onosproject.org/OnosSystemTest
Devin Lim38d14062018-01-11 17:08:00 -080028
Devin Lim49200ec2018-01-19 16:17:41 -080029- test-pipe-init-procedure-plate: &test-pipe-init-procedure-plate
30 name: test-pipe-init-procedure-plate
Devin Lim7a877872018-01-16 14:50:57 -080031 project: OnosSystemTest
32 stream: 'master'
33 jenkins-path: 'TestON/JenkinsFile'
34
35- job-version-plate: &job-version-plate
36 name: job-version-plate
37 version:
You Wang5efd7592018-08-02 21:49:51 +000038 - '1.12'
39 - '1.13'
Devin Lim7a877872018-01-16 14:50:57 -080040 - 'master'
41 - 'manually'
42
43- job-type-plate: &job-type-plate
44 name: job-type-plate
45 type:
46 - 'FUNC'
47 - 'HA'
48 - 'SCPF'
49 - 'USECASE'
Devin Lim323c9872018-01-30 19:57:58 -080050 - 'SR'
Jon Hall9017d2e2018-06-11 12:04:52 -070051 - 'SRHA'
Devin Lim7a877872018-01-16 14:50:57 -080052
Devin Lim74cf6cb2018-01-12 15:03:34 -080053- job-template:
Devin Lim38d14062018-01-11 17:08:00 -080054 name: all-pipeline-trigger
Jeremy Ronquillo34e993b2018-02-07 10:43:15 -080055 description: |
56 <!-- Managed by Jenkins Job Builder -->
Devin Lim1c4753e2018-03-23 15:31:38 -070057 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 -080058 This pipeline is triggered by timer for the nightly builds. <br />
Jeremy Ronquillo34e993b2018-02-07 10:43:15 -080059 Created by Devin Lim - devin@opennetworking.org<br />
60 Copyright (c) 2017 Open Networking Foundation (ONF)
Devin Lim38d14062018-01-11 17:08:00 -080061
Devin Lim49200ec2018-01-19 16:17:41 -080062 <<: *test-pipe-job-boiler-plate
Devin Lim38d14062018-01-11 17:08:00 -080063
Devin Lim7a877872018-01-16 14:50:57 -080064 parameters:
Devin Lim74cf6cb2018-01-12 15:03:34 -080065
Devin Limd0700312018-05-10 14:49:38 -070066 - bool:
67 name: manual_run
68 default: false
69 description: |
70 Check this option if you are manually running this job (you most likely are). <br />
71
Devin Lim74cf6cb2018-01-12 15:03:34 -080072 - text:
Devin Lim3e15df62018-05-09 17:45:51 -070073 name: machines
Devin Lim7a877872018-01-16 14:50:57 -080074 default: |
Devin Lim3e15df62018-05-09 17:45:51 -070075 vm
76 bm
77 fabric
78 description: 'Specify the machine-trigger you want to run.'
Devin Lim38d14062018-01-11 17:08:00 -080079
Devin Lim7a877872018-01-16 14:50:57 -080080 - lf-infra-parameters:
81 project: 'OnosSystemTest'
82 branch: 'master'
83 stream: 'master'
84 lftools-version: '<1.0.0'
85
Devin Lim3e15df62018-05-09 17:45:51 -070086 concurrent: true
Devin Lim38d14062018-01-11 17:08:00 -080087
Devin Lim2b5ef2e2018-02-27 14:05:08 -080088 triggers:
89 - timed: |
Devin Lime625f9a2018-03-26 12:04:47 -070090 TZ=America/Los_Angeles
91 30 19 * * 1,2,3,4,5
92 30 11 * * 6,7
Devin Lim38d14062018-01-11 17:08:00 -080093
94 pipeline-scm:
Devin Lim7a877872018-01-16 14:50:57 -080095 script-path: '{jenkins-path}/JenkinsfileTrigger'
96 scm:
97 - git:
Devin Limca864a12018-02-09 11:25:30 -080098 url: '{gitURL}'
Devin Lim7a877872018-01-16 14:50:57 -080099 branches:
100 - 'master'
101
102- job-template:
Devin Lim3e15df62018-05-09 17:45:51 -0700103 name: '{machine}-pipeline-trigger'
104 id: pipeline-trigger
Devin Lim1c4753e2018-03-23 15:31:38 -0700105 description: |
106 <!-- Managed by Jenkins Job Builder -->
Devin Lim3e15df62018-05-09 17:45:51 -0700107 {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 -0700108 This pipeline is triggered by timer for the nightly builds. <br />
109 You may manually trigger this pipeline as well - provide the tests to run and the branch of ONOS and TestON. <br /> <br />
110 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 -0700111 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 -0700112 Created by Devin Lim - devin@opennetworking.org<br />
113 Copyright (c) 2017 Open Networking Foundation (ONF)
114
Devin Lim1c4753e2018-03-23 15:31:38 -0700115 <<: *test-pipe-job-boiler-plate
116
117 parameters:
118
119 - bool:
120 name: manual_run
121 default: false
122 description: |
123 Check this option if you are manually running this job (you most likely are). <br />
124 You must specify which tests to run in the text field below.
125
126 - bool:
127 name: PostResult
128 default: false
129 description: |
130 Check this option if you want to update the results on the wiki. <br />
131 When manually run, this will update the wiki pages corresponding to the tests that were run. <br />
132 This option will always be selected during nightly builds.
133
134 - bool:
135 name: isOldFlow
136 default: true
137 description: |
138 Check this option if you prefer to run the old flow rule over the new one. <br />
139 * This only applies to SCPF tests.
140
141 - choice:
142 name: ONOSVersion
143 choices:
144 - 'master'
Devin Lim7550e022018-04-13 18:31:02 -0700145 - '1.13'
Devin Lim1c4753e2018-03-23 15:31:38 -0700146 - '1.12'
Devin Lim1c4753e2018-03-23 15:31:38 -0700147 description: "ONOS and TestON versions to run on."
148
149 - string:
150 name: ONOSJVMHeap
151 default: "\"${{JAVA_OPTS:--Xms8G -Xmx8G}}\""
152 description: 'ONOS cell JVM heap size setting.'
153
154 - string:
155 name: ONOSTag
156 default: ''
157 desciption: 'specific branch trying to checkout'
158
159 - text:
160 name: Tests
161 default: |
Devin Lim3e15df62018-05-09 17:45:51 -0700162 {testList}
Devin Lim1c4753e2018-03-23 15:31:38 -0700163
164 description: 'Specify the tests you want to run, if manual_run is selected.'
165
166 - lf-infra-parameters:
167 project: 'OnosSystemTest'
168 branch: 'master'
169 stream: 'master'
170 lftools-version: '<1.0.0'
171
172 concurrent: false
173
Devin Lim1c4753e2018-03-23 15:31:38 -0700174 pipeline-scm:
Devin Lim3e15df62018-05-09 17:45:51 -0700175 script-path: '{jenkins-path}/{fileName}JenkinsfileTrigger'
Devin Lim1c4753e2018-03-23 15:31:38 -0700176 scm:
177 - git:
178 url: '{gitURL}'
179 branches:
180 - 'master'
181
182- job-template:
Devin Lim7a877872018-01-16 14:50:57 -0800183 name: '{type}-pipeline-{version}'
Jeremy Ronquilloae3c7692018-03-05 08:47:05 -0800184 description: '<!-- Managed by Jenkins Job Builder -->
185 This pipeline contains the test results and logs of {type} on ONOS {version}. <br /><br />
Jeremy Ronquillo34e993b2018-02-07 10:43:15 -0800186 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 />
187 <font color="red">Unless debugging, DO NOT MANUALLY BUILD THIS PIPELINE.</font><br /><br />
188 Created by Devin Lim - devin@opennetworking.org<br />
Jeremy Ronquilloae3c7692018-03-05 08:47:05 -0800189 Copyright (c) 2017 Open Networking Foundation (ONF)'
Devin Lim7a877872018-01-16 14:50:57 -0800190
Devin Lim49200ec2018-01-19 16:17:41 -0800191 <<: *test-pipe-job-boiler-plate
Devin Lim7a877872018-01-16 14:50:57 -0800192
193 parameters:
194
195 - string:
196 name: TRIGGER_ONLY_WHEN_PREVIOUS_JOB_WAS_BUILT_HERE
197 default: 'DO_NOT_MANUALLY_TRIGGER_A_BUILD_HERE'
198 description: |
Jeremy Ronquillo34e993b2018-02-07 10:43:15 -0800199 <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 -0800200
201 - lf-infra-parameters:
202 project: 'OnosSystemTest'
203 branch: 'master'
204 stream: 'master'
205 lftools-version: '<1.0.0'
206
207 concurrent: false
208
209 pipeline-scm:
210 script-path: '{jenkins-path}/{type}JenkinsFile'
211 scm:
212 - git:
Devin Limca864a12018-02-09 11:25:30 -0800213 url: '{gitURL}'
Devin Lim7a877872018-01-16 14:50:57 -0800214 branches:
215 - 'master'
216
217- job-template:
218 name: 'manual-graph-generator-SCPF'
Jeremy Ronquillo34e993b2018-02-07 10:43:15 -0800219 description: |
220 <!-- Managed by Jenkins Job Builder -->
221 Refresh the wiki graphs here. Useful when there is a change in the graph scripts.<br />
222 <br />
223 You may also generate a graph trend that displays any number of builds here.<br />
224 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 >
225 <br >
226 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 -0800227
228 <<: *var-init-boiler-plate
Devin Lim49200ec2018-01-19 16:17:41 -0800229 <<: *test-pipe-job-boiler-plate
Devin Lim7a877872018-01-16 14:50:57 -0800230
231 parameters:
232
Devin Lim7a877872018-01-16 14:50:57 -0800233 - choice:
234 name: ONOSbranch
235 choices:
236 - 'master'
Devin Lim7550e022018-04-13 18:31:02 -0700237 - 'onos-1.13'
Devin Lim7a877872018-01-16 14:50:57 -0800238 - 'onos-1.12'
239 - 'onos-1.11'
240 description: "Possible branches (may vary depending on test)"
241
242 - bool:
Devin Lim397fa7c2018-04-13 16:25:01 -0700243 name: isOldFlow
Devin Lim7a877872018-01-16 14:50:57 -0800244 default: false
245 description: 'Check if it is using the old flow rules'
246
247 - text:
248 name: Test
249 default: '{SCPF}'
250 description: 'List of the tests to generate.'
251
252 - lf-infra-parameters:
253 project: 'OnosSystemTest'
254 branch: 'master'
255 stream: 'master'
256 lftools-version: '<1.0.0'
257
258 pipeline-scm:
259 script-path: '{jenkins-path}/SCPF_Graph_Generator'
260 scm:
261 - git:
Devin Limca864a12018-02-09 11:25:30 -0800262 url: '{gitURL}'
Devin Lim7a877872018-01-16 14:50:57 -0800263 branches:
264 - 'master'
265
266- job-template:
267 name: 'manual-graph-generator-trend'
Jeremy Ronquillo34e993b2018-02-07 10:43:15 -0800268 description: |
269 <!-- Managed by Jenkins Job Builder -->
270 Refresh the trend graphs here. Useful when there is a change in the graph scripts. <br />
271 Graphs are stored in their respective Postjob pipeline.
272
Devin Lim7a877872018-01-16 14:50:57 -0800273
274 <<: *var-init-boiler-plate
Devin Lim49200ec2018-01-19 16:17:41 -0800275 <<: *test-pipe-job-boiler-plate
Devin Lim7a877872018-01-16 14:50:57 -0800276
277 parameters:
278
279 - choice:
280 name: ONOSbranch
281 choices:
282 - 'master'
Devin Lim7550e022018-04-13 18:31:02 -0700283 - 'onos-1.13'
Devin Lim7a877872018-01-16 14:50:57 -0800284 - 'onos-1.12'
285 - 'onos-1.11'
286 description: "Possible branches (may vary depending on test)"
287
288 - choice:
289 name: NodeCluster
290 choices:
291 - VM
292 - BM
Devin Lim80546912018-03-23 17:49:39 -0700293 - Fabric
Devin Lim7a877872018-01-16 14:50:57 -0800294 description: |
Jeremy Ronquillo34e993b2018-02-07 10:43:15 -0800295 Node cluster where the test graphs in the list are located. <br />
Devin Lim7a877872018-01-16 14:50:57 -0800296 List of the tests will be refreshed depends on the node cluster.
297
298 - text:
299 name: Test
300 default: |
301 VM:
302 {FUNC}
303 {HA}
304 BM:
305 {USECASE}
Devin Lim80546912018-03-23 17:49:39 -0700306 Fabric:
307 {SR}
Jon Hall9017d2e2018-06-11 12:04:52 -0700308 {SRHA}
Devin Lim7a877872018-01-16 14:50:57 -0800309 description: 'List of the tests to generate.'
310
311 - string:
312 name: Builds
Devin Lim72caaba2018-03-02 15:15:46 -0800313 default: '20'
Devin Lim7a877872018-01-16 14:50:57 -0800314 description: 'Builds to show in the graph.'
315
316 - lf-infra-parameters:
317 project: 'OnosSystemTest'
318 branch: 'master'
319 stream: 'master'
320 lftools-version: '<1.0.0'
321
322 pipeline-scm:
323 script-path: '{jenkins-path}/Trend_Graph_Generator'
Devin Lim38d14062018-01-11 17:08:00 -0800324 scm:
325 - git:
Devin Limca864a12018-02-09 11:25:30 -0800326 url: '{gitURL}'
Devin Lim38d14062018-01-11 17:08:00 -0800327 branches:
Devin Lim74cf6cb2018-01-12 15:03:34 -0800328 - 'master'
Devin Lim38d14062018-01-11 17:08:00 -0800329
Jeremy Ronquillo3dbd8e82018-03-05 10:23:25 -0800330- job-template:
331 name: 'manual-graph-generator-overall'
332 description: |
333 <!-- Managed by Jenkins Job Builder -->
334 Refresh the overall graphs here. Useful when there is a change in the graph scripts. <br />
335 Graphs are stored in pipeline-postjob-vm.
336
337 <<: *test-pipe-job-boiler-plate
338
339 parameters:
340 - choice:
341 name: ONOSbranch
342 choices:
343 - 'master'
Devin Lim7550e022018-04-13 18:31:02 -0700344 - 'onos-1.13'
Jeremy Ronquillo3dbd8e82018-03-05 10:23:25 -0800345 - 'onos-1.12'
Jeremy Ronquillo3dbd8e82018-03-05 10:23:25 -0800346 description: "Possible branches (may vary depending on test)"
347
348 - lf-infra-parameters:
349 project: 'OnosSystemTest'
350 branch: 'master'
351 stream: 'master'
352 lftools-version: '<1.0.0'
353
354 pipeline-scm:
355 script-path: '{jenkins-path}/Overall_Graph_Generator'
356 scm:
357 - git:
358 url: '{gitURL}'
359 branches:
360 - 'master'
361
Devin Lim02197b22018-05-10 17:09:38 -0700362- job-template:
363 name: 'graph-generator-CHO'
364 description: |
365 <!-- Managed by Jenkins Job Builder -->
366 Generates the CHO graphs. <br />
367 Graphs are stored in pipeline-postjob-cho.
368
369 <<: *test-pipe-job-boiler-plate
370
371 parameters:
372 - text:
373 name: ONOSbranch
374 default: |
375 master
376 description: "Branch of the onos"
377
Devin Lime48c6dd2018-05-14 13:58:21 -0700378 - choice:
379 name: hours
380 choices:
381 - '168'
382 - '72'
383 description: "Hours of data to display."
384
Devin Lim02197b22018-05-10 17:09:38 -0700385 - lf-infra-parameters:
386 project: 'OnosSystemTest'
387 branch: 'master'
388 stream: 'master'
389 lftools-version: '<1.0.0'
Devin Lime91edd42018-05-11 15:50:09 -0700390 triggers:
391 - timed: 'H/60 * * * *'
Devin Lim02197b22018-05-10 17:09:38 -0700392 pipeline-scm:
393 script-path: '{jenkins-path}/CHO_Graph_Generator'
394 scm:
395 - git:
396 url: '{gitURL}'
397 branches:
398 - 'master'
399
Devin Lim38d14062018-01-11 17:08:00 -0800400- project:
Devin Lim1c4753e2018-03-23 15:31:38 -0700401 name: pipeline-trigger
402 project-name: pipeline-trigger
Devin Lim7a877872018-01-16 14:50:57 -0800403
Devin Lim49200ec2018-01-19 16:17:41 -0800404 <<: *test-pipe-init-procedure-plate
Devin Lim3e15df62018-05-09 17:45:51 -0700405 <<: *var-init-boiler-plate
Devin Lim7a877872018-01-16 14:50:57 -0800406
Devin Lim38d14062018-01-11 17:08:00 -0800407 jobs:
408 - 'all-pipeline-trigger'
Devin Lim3e15df62018-05-09 17:45:51 -0700409 - 'pipeline-trigger':
410 machine: 'vm'
Devin Lim781a7552018-05-10 14:24:55 -0700411 testList: |
412 {FUNC}
413 {HA}
Devin Lim3e15df62018-05-09 17:45:51 -0700414 fileName: 'VM_BM'
415
416 - 'pipeline-trigger':
417 machine: 'bm'
Devin Lim781a7552018-05-10 14:24:55 -0700418 testList: |
419 {SCPF}
420 {USECASE}
Devin Lim3e15df62018-05-09 17:45:51 -0700421 fileName: 'VM_BM'
422
423 - 'pipeline-trigger':
424 machine: 'fabric'
Jon Hall9017d2e2018-06-11 12:04:52 -0700425 testList: |
426 {SR}
427 {SRHA}
Devin Lim3e15df62018-05-09 17:45:51 -0700428 fileName: 'Fabric'
Devin Lim7a877872018-01-16 14:50:57 -0800429
430- project:
431 name: build-pipeline
432
433 <<: *job-type-plate
434
435 project-name: '{type}-pipeline'
436
Devin Lim49200ec2018-01-19 16:17:41 -0800437 <<: *test-pipe-init-procedure-plate
Devin Lim7a877872018-01-16 14:50:57 -0800438 <<: *job-version-plate
439
440 jobs:
441 - '{type}-pipeline-{version}'
442
443- project:
444 name: graph-generator
445
446 project-name: 'graph-generator'
447
Devin Lim49200ec2018-01-19 16:17:41 -0800448 <<: *test-pipe-init-procedure-plate
Devin Lim7a877872018-01-16 14:50:57 -0800449
450 jobs:
451 - 'manual-graph-generator-SCPF'
452 - 'manual-graph-generator-trend'
Jeremy Ronquillo3dbd8e82018-03-05 10:23:25 -0800453 - 'manual-graph-generator-overall'
Devin Lim02197b22018-05-10 17:09:38 -0700454 - 'graph-generator-CHO'