[fuel] Fix missing multiline marker
[releng.git] / jjb / fuel / fuel-daily-jobs.yaml
1 ---
2 # jenkins job templates for Fuel
3 - project:
4
5     name: 'fuel'
6
7     project: '{name}'
8
9     installer: '{name}'
10
11     # -------------------------------
12     # BRANCH ANCHORS
13     # -------------------------------
14     master: &master
15       stream: master
16       branch: '{stream}'
17       disabled: false
18       gs-pathname: ''
19       functest_docker_tag: hunter
20     fraser: &fraser
21       stream: fraser
22       branch: 'stable/{stream}'
23       disabled: false
24       gs-pathname: '/{stream}'
25       functest_docker_tag: '{stream}'
26     gambia: &gambia
27       stream: gambia
28       branch: 'stable/{stream}'
29       disabled: false
30       gs-pathname: '/{stream}'
31       functest_docker_tag: '{stream}'
32     # -------------------------------
33     # POD, INSTALLER, AND BRANCH MAPPING
34     # -------------------------------
35     #        CI PODs
36     # -------------------------------
37     pod:
38       - baremetal:
39           slave-label: fuel-baremetal
40           <<: *master
41       - virtual:
42           slave-label: fuel-virtual
43           <<: *master
44       - baremetal:
45           slave-label: fuel-baremetal
46           <<: *gambia
47       - virtual:
48           slave-label: fuel-virtual
49           <<: *gambia
50       - baremetal:
51           slave-label: fuel-baremetal
52           <<: *fraser
53       # -------------------------------
54       #        None-CI PODs
55       # -------------------------------
56       - zte-pod1:
57           slave-label: zte-pod1
58           <<: *master
59     # -------------------------------
60     #       scenarios
61     # -------------------------------
62     scenario:
63       # HA scenarios
64       - 'os-nosdn-nofeature-ha':
65           auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
66       - 'os-odl-nofeature-ha':
67           auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
68       - 'os-ovn-nofeature-ha':
69           auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
70       - 'os-nosdn-ovs-ha':
71           auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
72       - 'os-nosdn-fdio-ha':
73           auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
74       # NOHA scenarios
75       - 'os-nosdn-nofeature-noha':
76           auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
77       - 'os-odl-nofeature-noha':
78           auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
79       - 'os-odl-sfc-noha':
80           auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
81       - 'os-odl-bgpvpn-noha':
82           auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
83       - 'os-ovn-nofeature-noha':
84           auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
85       - 'os-odl-ovs-noha':
86           auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
87       - 'os-nosdn-ovs-noha':
88           auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
89       - 'os-nosdn-fdio-noha':
90           auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
91
92     exclude:
93       # Dovetail (and only it) should run against Fraser HA baremetal scenarios
94       - scenario: os-nosdn-nofeature-noha
95         stream: fraser
96       - scenario: os-odl-nofeature-noha
97         stream: fraser
98       - scenario: os-odl-sfc-noha
99         stream: fraser
100       - scenario: os-odl-bgpvpn-noha
101         stream: fraser
102       - scenario: os-odl-ovs-noha
103         stream: fraser
104       - scenario: os-ovn-nofeature-noha
105         stream: fraser
106       - scenario: os-nosdn-ovs-noha
107         stream: fraser
108       - scenario: os-nosdn-fdio-noha
109         stream: fraser
110       - scenario: os-ovn-nofeature-ha
111         stream: fraser
112       - scenario: os-nosdn-fdio-ha
113         stream: fraser
114
115     jobs:
116       - 'fuel-{scenario}-{pod}-daily-{stream}'
117       - 'fuel-deploy-{pod}-daily-{stream}'
118       - 'fuel-collect-logs-{pod}-daily-{stream}'
119
120 ########################
121 # job templates
122 ########################
123 - job-template:
124     name: 'fuel-{scenario}-{pod}-daily-{stream}'
125
126     disabled: '{obj:disabled}'
127
128     concurrent: false
129
130     properties:
131       - logrotate-default
132       - throttle:
133           enabled: true
134           max-total: 4
135           max-per-node: 1
136           option: 'project'
137       - build-blocker:
138           use-build-blocker: true
139           blocking-jobs:
140             - 'fuel-os-.*?-{pod}-daily-.*'
141             - 'fuel-verify-.*'
142           blocking-level: 'NODE'
143
144     wrappers:
145       - build-name:
146           name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
147
148     triggers:
149       - '{auto-trigger-name}'
150
151     parameters:
152       - project-parameter:
153           project: '{project}'
154           branch: '{branch}'
155       - '{installer}-defaults':
156           gs-pathname: '{gs-pathname}'
157       - '{slave-label}-defaults':
158           installer: '{installer}'
159       - string:
160           name: DEPLOY_SCENARIO
161           default: '{scenario}'
162
163     builders:
164       - description-setter:
165           description: "Built on $NODE_NAME"
166       - trigger-builds:
167           - project: 'fuel-deploy-{pod}-daily-{stream}'
168             current-parameters: false
169             predefined-parameters:
170               DEPLOY_SCENARIO={scenario}
171             same-node: true
172             block: true
173       - conditional-step:
174           condition-kind: not
175           condition-operand:
176             condition-kind: regex-match
177             regex: 'fraser'
178             label: '{stream}'
179           steps:
180             - trigger-builds:
181                 - project: 'functest-fuel-{pod}-daily-{stream}'
182                   current-parameters: false
183                   predefined-parameters: |
184                     DEPLOY_SCENARIO={scenario}
185                     DOCKER_TAG={functest_docker_tag}
186                   same-node: true
187                   block: true
188                   block-thresholds:
189                     build-step-failure-threshold: 'never'
190                     failure-threshold: 'never'
191                     unstable-threshold: 'FAILURE'
192       - conditional-step:
193           condition-kind: not
194           condition-operand:
195             condition-kind: regex-match
196             regex: 'fraser'
197             label: '{stream}'
198           steps:
199             - trigger-builds:
200                 - project: 'yardstick-fuel-{pod}-daily-{stream}'
201                   current-parameters: false
202                   predefined-parameters:
203                     DEPLOY_SCENARIO={scenario}
204                   block: true
205                   same-node: true
206                   block-thresholds:
207                     build-step-failure-threshold: 'never'
208                     failure-threshold: 'never'
209                     unstable-threshold: 'FAILURE'
210       # 1.here the stream means the SUT stream, dovetail stream is defined in its own job
211       # 2.testsuite default here is for the test cases already added into OVP
212       # 3.run default testsuite mandatory test cases against ha scenario
213       # 4.run default testsuite optional test cases against ha scenario twice one week
214       # 5.not used for release criteria or compliance, only to debug the dovetail tool bugs
215       - conditional-step:
216           condition-kind: and
217           condition-operands:
218             - condition-kind: regex-match
219               regex: '.*-ha'
220               label: '{scenario}'
221           steps:
222             - trigger-builds:
223                 - project: 'dovetail-fuel-{pod}-default-mandatory-{stream}'
224                   current-parameters: false
225                   predefined-parameters:
226                     DEPLOY_SCENARIO={scenario}
227                   block: true
228                   same-node: true
229                   block-thresholds:
230                     build-step-failure-threshold: 'never'
231                     failure-threshold: 'never'
232                     unstable-threshold: 'FAILURE'
233       - conditional-step:
234           condition-kind: and
235           condition-operands:
236             - condition-kind: regex-match
237               regex: '.*-ha'
238               label: '{scenario}'
239             - condition-kind: day-of-week
240               day-selector: select-days
241               days:
242                 MON: true
243                 WED: true
244               use-build-time: true
245           steps:
246             - trigger-builds:
247                 - project: 'dovetail-fuel-{pod}-default-optional-{stream}'
248                   current-parameters: false
249                   predefined-parameters:
250                     DEPLOY_SCENARIO={scenario}
251                   block: true
252                   same-node: true
253                   block-thresholds:
254                     build-step-failure-threshold: 'never'
255                     failure-threshold: 'never'
256                     unstable-threshold: 'FAILURE'
257       - trigger-builds:
258           - project: 'fuel-collect-logs-{pod}-daily-{stream}'
259             current-parameters: false
260             predefined-parameters:
261               DEPLOY_SCENARIO={scenario}
262             block: true
263             same-node: true
264             block-thresholds:
265               build-step-failure-threshold: 'never'
266               failure-threshold: 'never'
267               unstable-threshold: 'FAILURE'
268
269     publishers:
270       - email-fuel-ptl
271       - email-jenkins-admins-on-failure
272
273 - job-template:
274     name: 'fuel-deploy-{pod}-daily-{stream}'
275
276     disabled: '{obj:disabled}'
277
278     concurrent: true
279
280     properties:
281       - logrotate-default
282       - throttle:
283           enabled: true
284           max-total: 4
285           max-per-node: 1
286           option: 'project'
287       - build-blocker:
288           use-build-blocker: true
289           blocking-jobs:
290             - 'fuel-deploy-{pod}-daily-.*'
291           blocking-level: 'NODE'
292
293     parameters:
294       - project-parameter:
295           project: '{project}'
296           branch: '{branch}'
297       - '{installer}-defaults':
298           gs-pathname: '{gs-pathname}'
299       - '{slave-label}-defaults':
300           installer: '{installer}'
301       - testapi-parameter
302       - string:
303           name: DEPLOY_SCENARIO
304           default: 'os-odl-nofeature-ha'
305
306     scm:
307       - git-scm
308
309     wrappers:
310       - build-name:
311           name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
312
313     builders:
314       - description-setter:
315           description: "Built on $NODE_NAME"
316       - track-begin-timestamp
317       - shell:
318           !include-raw-escape: ./fuel-deploy.sh
319
320     publishers:
321       - email-fuel-ptl
322       - email-jenkins-admins-on-failure
323       - report-provision-result
324
325 - job-template:
326     name: 'fuel-collect-logs-{pod}-daily-{stream}'
327
328     disabled: '{obj:disabled}'
329
330     concurrent: true
331
332     properties:
333       - logrotate-default
334
335     parameters:
336       - project-parameter:
337           project: '{project}'
338           branch: '{branch}'
339       - '{installer}-defaults':
340           gs-pathname: '{gs-pathname}'
341       - '{slave-label}-defaults':
342           installer: '{installer}'
343       - string:
344           name: DEPLOY_SCENARIO
345           default: 'os-odl-nofeature-ha'
346
347     scm:
348       - git-scm
349
350     wrappers:
351       - build-name:
352           name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
353
354     builders:
355       - description-setter:
356           description: "Built on $NODE_NAME"
357       - shell:
358           !include-raw-escape: ./fuel-logs.sh
359
360     publishers:
361       - email-jenkins-admins-on-failure
362
363 ########################
364 # trigger macros
365 ########################
366 # ----------------------------------------------
367 # Triggers for job running on fuel-baremetal against master branch
368 # ----------------------------------------------
369 # HA Scenarios
370 - trigger:
371     name: 'fuel-os-nosdn-nofeature-ha-baremetal-daily-master-trigger'
372     triggers:
373       - timed: '5 20 * * 1,2,4,6,7'
374 - trigger:
375     name: 'fuel-os-odl-nofeature-ha-baremetal-daily-master-trigger'
376     triggers:
377       - timed: '5 2 * * *'
378 - trigger:
379     name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-master-trigger'
380     triggers:
381       - timed: '5 5 * * *'
382 - trigger:
383     name: 'fuel-os-ovn-nofeature-ha-baremetal-daily-master-trigger'
384     triggers:
385       - timed: ''
386 - trigger:
387     name: 'fuel-os-nosdn-fdio-ha-baremetal-daily-master-trigger'
388     triggers:
389       - timed: ''
390
391 # NOHA Scenarios
392 - trigger:
393     name: 'fuel-os-nosdn-nofeature-noha-baremetal-daily-master-trigger'
394     triggers:
395       - timed: ''
396 - trigger:
397     name: 'fuel-os-odl-nofeature-noha-baremetal-daily-master-trigger'
398     triggers:
399       - timed: ''
400 - trigger:
401     name: 'fuel-os-odl-sfc-noha-baremetal-daily-master-trigger'
402     triggers:
403       - timed: ''
404 - trigger:
405     name: 'fuel-os-odl-bgpvpn-noha-baremetal-daily-master-trigger'
406     triggers:
407       - timed: ''
408 - trigger:
409     name: 'fuel-os-ovn-nofeature-noha-baremetal-daily-master-trigger'
410     triggers:
411       - timed: ''
412 - trigger:
413     name: 'fuel-os-odl-ovs-noha-baremetal-daily-master-trigger'
414     triggers:
415       - timed: ''
416 - trigger:
417     name: 'fuel-os-nosdn-ovs-noha-baremetal-daily-master-trigger'
418     triggers:
419       - timed: ''
420 - trigger:
421     name: 'fuel-os-nosdn-fdio-noha-baremetal-daily-master-trigger'
422     triggers:
423       - timed: '5 20 * * 3,5'
424 # ----------------------------------------------
425 # Triggers for job running on fuel-baremetal against gambia branch
426 # ----------------------------------------------
427 # HA Scenarios
428 - trigger:
429     name: 'fuel-os-nosdn-nofeature-ha-baremetal-daily-gambia-trigger'
430     triggers:
431       - timed: '0 20 * * 1,2,4,6,7'
432 - trigger:
433     name: 'fuel-os-odl-nofeature-ha-baremetal-daily-gambia-trigger'
434     triggers:
435       - timed: '0 2 * * *'
436 - trigger:
437     name: 'fuel-os-ovn-nofeature-ha-baremetal-daily-gambia-trigger'
438     triggers:
439       - timed: ''
440 - trigger:
441     name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-gambia-trigger'
442     triggers:
443       - timed: '0 5 * * *'
444 - trigger:
445     name: 'fuel-os-nosdn-fdio-ha-baremetal-daily-gambia-trigger'
446     triggers:
447       - timed: ''
448 # NOHA Scenarios
449 - trigger:
450     name: 'fuel-os-nosdn-nofeature-noha-baremetal-daily-gambia-trigger'
451     triggers:
452       - timed: ''
453 - trigger:
454     name: 'fuel-os-odl-nofeature-noha-baremetal-daily-gambia-trigger'
455     triggers:
456       - timed: ''
457 - trigger:
458     name: 'fuel-os-odl-sfc-noha-baremetal-daily-gambia-trigger'
459     triggers:
460       - timed: ''
461 - trigger:
462     name: 'fuel-os-odl-bgpvpn-noha-baremetal-daily-gambia-trigger'
463     triggers:
464       - timed: ''
465 - trigger:
466     name: 'fuel-os-ovn-nofeature-noha-baremetal-daily-gambia-trigger'
467     triggers:
468       - timed: ''
469 - trigger:
470     name: 'fuel-os-odl-ovs-noha-baremetal-daily-gambia-trigger'
471     triggers:
472       - timed: ''
473 - trigger:
474     name: 'fuel-os-nosdn-ovs-noha-baremetal-daily-gambia-trigger'
475     triggers:
476       - timed: ''
477 - trigger:
478     name: 'fuel-os-nosdn-fdio-noha-baremetal-daily-gambia-trigger'
479     triggers:
480       - timed: '0 20 * * 3,5'
481 # ----------------------------------------------
482 # Triggers for job running on fuel-virtual against master branch
483 # ----------------------------------------------
484 - trigger:
485     name: 'fuel-os-nosdn-nofeature-ha-virtual-daily-master-trigger'
486     triggers:
487       - timed: ''
488 - trigger:
489     name: 'fuel-os-odl-nofeature-ha-virtual-daily-master-trigger'
490     triggers:
491       - timed: ''
492 - trigger:
493     name: 'fuel-os-ovn-nofeature-ha-virtual-daily-master-trigger'
494     triggers:
495       - timed: ''
496 - trigger:
497     name: 'fuel-os-nosdn-ovs-ha-virtual-daily-master-trigger'
498     triggers:
499       - timed: ''
500 - trigger:
501     name: 'fuel-os-nosdn-fdio-ha-virtual-daily-master-trigger'
502     triggers:
503       - timed: ''
504 # NOHA Scenarios
505 - trigger:
506     name: 'fuel-os-nosdn-nofeature-noha-virtual-daily-master-trigger'
507     triggers:
508       - timed: '5 13 * * *'
509 - trigger:
510     name: 'fuel-os-odl-nofeature-noha-virtual-daily-master-trigger'
511     triggers:
512       - timed: '5 18 * * *'
513 - trigger:
514     name: 'fuel-os-odl-sfc-noha-virtual-daily-master-trigger'
515     triggers:
516       - timed: '5 4 * * *'
517 - trigger:
518     name: 'fuel-os-odl-bgpvpn-noha-virtual-daily-master-trigger'
519     triggers:
520       - timed: '5 6 * * *'
521 - trigger:
522     name: 'fuel-os-ovn-nofeature-noha-virtual-daily-master-trigger'
523     triggers:
524       - timed: '5 23 * * *'
525 - trigger:
526     name: 'fuel-os-odl-ovs-noha-virtual-daily-master-trigger'
527     triggers:
528       - timed: '5 2 * * *'
529 - trigger:
530     name: 'fuel-os-nosdn-ovs-noha-virtual-daily-master-trigger'
531     triggers:
532       - timed: '5 9 * * *'
533 - trigger:
534     name: 'fuel-os-nosdn-fdio-noha-virtual-daily-master-trigger'
535     triggers:
536       - timed: ''
537 # ----------------------------------------------
538 # Triggers for job running on fuel-baremetal against fraser branch (for Dovetail)
539 # ----------------------------------------------
540 - trigger:
541     name: 'fuel-os-nosdn-nofeature-ha-baremetal-daily-fraser-trigger'
542     triggers:
543       - timed: '5 13 * * 6,7'
544 - trigger:
545     name: 'fuel-os-odl-nofeature-ha-baremetal-daily-fraser-trigger'
546     triggers:
547       - timed: '0 13 * * 6'
548 - trigger:
549     name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-fraser-trigger'
550     triggers:
551       - timed: '0 13 * * 7'
552 # ----------------------------------------------
553 # Triggers for job running on fuel-virtual against gambia branch
554 # ----------------------------------------------
555 - trigger:
556     name: 'fuel-os-nosdn-nofeature-ha-virtual-daily-gambia-trigger'
557     triggers:
558       - timed: ''
559 - trigger:
560     name: 'fuel-os-odl-nofeature-ha-virtual-daily-gambia-trigger'
561     triggers:
562       - timed: ''
563 - trigger:
564     name: 'fuel-os-ovn-nofeature-ha-virtual-daily-gambia-trigger'
565     triggers:
566       - timed: ''
567 - trigger:
568     name: 'fuel-os-nosdn-ovs-ha-virtual-daily-gambia-trigger'
569     triggers:
570       - timed: ''
571 - trigger:
572     name: 'fuel-os-nosdn-fdio-ha-virtual-daily-gambia-trigger'
573     triggers:
574       - timed: ''
575 # NOHA Scenarios
576 - trigger:
577     name: 'fuel-os-nosdn-nofeature-noha-virtual-daily-gambia-trigger'
578     triggers:
579       - timed: '0 13 * * *'
580 - trigger:
581     name: 'fuel-os-odl-nofeature-noha-virtual-daily-gambia-trigger'
582     triggers:
583       - timed: '0 18 * * *'
584 - trigger:
585     name: 'fuel-os-odl-sfc-noha-virtual-daily-gambia-trigger'
586     triggers:
587       - timed: '0 4 * * *'
588 - trigger:
589     name: 'fuel-os-odl-bgpvpn-noha-virtual-daily-gambia-trigger'
590     triggers:
591       - timed: '0 7 * * *'
592 - trigger:
593     name: 'fuel-os-ovn-nofeature-noha-virtual-daily-gambia-trigger'
594     triggers:
595       - timed: '0 23 * * *'
596 - trigger:
597     name: 'fuel-os-odl-ovs-noha-virtual-daily-gambia-trigger'
598     triggers:
599       - timed: '0 2 * * *'
600 - trigger:
601     name: 'fuel-os-nosdn-ovs-noha-virtual-daily-gambia-trigger'
602     triggers:
603       - timed: '0 9 * * *'
604 - trigger:
605     name: 'fuel-os-nosdn-fdio-noha-virtual-daily-gambia-trigger'
606     triggers:
607       - timed: ''
608 # ----------------------------------------------
609 # ZTE POD1 Triggers running against master branch
610 # ----------------------------------------------
611 - trigger:
612     name: 'fuel-os-nosdn-nofeature-ha-zte-pod1-daily-master-trigger'
613     triggers:
614       - timed: '0 10 * * *'
615 - trigger:
616     name: 'fuel-os-odl-nofeature-ha-zte-pod1-daily-master-trigger'
617     triggers:
618       - timed: ''
619 - trigger:
620     name: 'fuel-os-ovn-nofeature-ha-zte-pod1-daily-master-trigger'
621     triggers:
622       - timed: ''
623 - trigger:
624     name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-master-trigger'
625     triggers:
626       - timed: ''
627 - trigger:
628     name: 'fuel-os-nosdn-fdio-ha-zte-pod1-daily-master-trigger'
629     triggers:
630       - timed: ''
631 # NOHA Scenarios
632 - trigger:
633     name: 'fuel-os-nosdn-nofeature-noha-zte-pod1-daily-master-trigger'
634     triggers:
635       - timed: ''
636 - trigger:
637     name: 'fuel-os-odl-nofeature-noha-zte-pod1-daily-master-trigger'
638     triggers:
639       - timed: ''
640 - trigger:
641     name: 'fuel-os-odl-sfc-noha-zte-pod1-daily-master-trigger'
642     triggers:
643       - timed: ''
644 - trigger:
645     name: 'fuel-os-odl-bgpvpn-noha-zte-pod1-daily-master-trigger'
646     triggers:
647       - timed: ''
648 - trigger:
649     name: 'fuel-os-ovn-nofeature-noha-zte-pod1-daily-master-trigger'
650     triggers:
651       - timed: ''
652 - trigger:
653     name: 'fuel-os-odl-ovs-noha-zte-pod1-daily-master-trigger'
654     triggers:
655       - timed: ''
656 - trigger:
657     name: 'fuel-os-nosdn-ovs-noha-zte-pod1-daily-master-trigger'
658     triggers:
659       - timed: ''
660 - trigger:
661     name: 'fuel-os-nosdn-fdio-noha-zte-pod1-daily-master-trigger'
662     triggers:
663       - timed: ''