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