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