aa5a72751ec11b6c6ab73853d0e99e61b6c43500
[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         gs-pathname: ''
17 #--------------------------------
18 # POD, INSTALLER, AND BRANCH MAPPING
19 #--------------------------------
20 #        CI PODs
21 #--------------------------------
22     pod:
23         - baremetal:
24             slave-label: fuel-baremetal
25             <<: *master
26         - virtual:
27             slave-label: fuel-virtual
28             <<: *master
29 #--------------------------------
30 #        None-CI PODs
31 #--------------------------------
32         - zte-pod1:
33             slave-label: zte-pod1
34             <<: *master
35 #--------------------------------
36 #       scenarios
37 #--------------------------------
38     scenario:
39         # HA scenarios
40         - 'os-nosdn-nofeature-ha':
41             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
42         - 'os-odl_l2-nofeature-ha':
43             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
44         - 'os-odl_l3-nofeature-ha':
45             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
46         - 'os-onos-sfc-ha':
47             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
48         - 'os-onos-nofeature-ha':
49             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
50         - 'os-odl_l2-sfc-ha':
51             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
52         - 'os-odl_l2-bgpvpn-ha':
53             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
54         - 'os-nosdn-kvm-ha':
55             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
56         - 'os-nosdn-ovs-ha':
57             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
58         - 'os-nosdn-kvm_ovs-ha':
59             auto-trigger-name: 'daily-trigger-disabled'
60         # NOHA scenarios
61         - 'os-nosdn-nofeature-noha':
62             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
63         - 'os-odl_l2-nofeature-noha':
64             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
65         - 'os-odl_l3-nofeature-noha':
66             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
67         - 'os-onos-sfc-noha':
68             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
69         - 'os-onos-nofeature-noha':
70             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
71         - 'os-odl_l2-sfc-noha':
72             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
73         - 'os-odl_l2-bgpvpn-noha':
74             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
75         - 'os-nosdn-kvm-noha':
76             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
77         - 'os-nosdn-ovs-noha':
78             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
79
80     jobs:
81         - 'fuel-{scenario}-{pod}-daily-{stream}'
82         - 'fuel-deploy-{pod}-daily-{stream}'
83
84 ########################
85 # job templates
86 ########################
87 - job-template:
88     name: 'fuel-{scenario}-{pod}-daily-{stream}'
89
90     concurrent: false
91
92     properties:
93         - throttle:
94             enabled: true
95             max-total: 4
96             max-per-node: 1
97             option: 'project'
98         - build-blocker:
99             use-build-blocker: true
100             blocking-jobs:
101                 - 'fuel-os-.*?-{pod}-daily-{stream}'
102             block-level: 'NODE'
103
104     wrappers:
105         - build-name:
106             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
107
108     triggers:
109         - '{auto-trigger-name}'
110
111     parameters:
112         - project-parameter:
113             project: '{project}'
114         - '{installer}-defaults'
115         - '{slave-label}-defaults':
116             installer: '{installer}'
117         - string:
118             name: DEPLOY_SCENARIO
119             default: '{scenario}'
120         - fuel-ci-parameter:
121             gs-pathname: '{gs-pathname}'
122
123     builders:
124         - description-setter:
125             description: "POD: $NODE_NAME"
126         - trigger-builds:
127             - project: 'fuel-deploy-{pod}-daily-{stream}'
128               current-parameters: false
129               predefined-parameters:
130                 DEPLOY_SCENARIO={scenario}
131               same-node: true
132               block: true
133         - trigger-builds:
134             - project: 'yardstick-fuel-{pod}-daily-{stream}'
135               current-parameters: false
136               predefined-parameters:
137                 DEPLOY_SCENARIO={scenario}
138               same-node: true
139               block: true
140               block-thresholds:
141                 build-step-failure-threshold: 'never'
142                 failure-threshold: 'never'
143                 unstable-threshold: 'FAILURE'
144         - trigger-builds:
145             - project: 'functest-fuel-{pod}-daily-{stream}'
146               current-parameters: false
147               predefined-parameters:
148                 DEPLOY_SCENARIO={scenario}
149               block: true
150               same-node: true
151               block-thresholds:
152                 build-step-failure-threshold: 'never'
153                 failure-threshold: 'never'
154                 unstable-threshold: 'FAILURE'
155
156     publishers:
157         - email:
158             recipients: peter.barabas@ericsson.com
159
160 - job-template:
161     name: 'fuel-deploy-{pod}-daily-{stream}'
162
163     concurrent: true
164
165     properties:
166         - throttle:
167             enabled: true
168             max-total: 4
169             max-per-node: 1
170             option: 'project'
171         - build-blocker:
172             use-build-blocker: true
173             blocking-jobs:
174                 - 'fuel-deploy-{pod}-daily-{stream}'
175                 - 'fuel-deploy-generic-daily-.*'
176             block-level: 'NODE'
177
178     parameters:
179         - project-parameter:
180             project: '{project}'
181         - '{installer}-defaults'
182         - '{slave-label}-defaults':
183             installer: '{installer}'
184         - string:
185             name: DEPLOY_SCENARIO
186             default: 'os-odl_l2-nofeature-ha'
187         - fuel-ci-parameter:
188             gs-pathname: '{gs-pathname}'
189
190     scm:
191         - git-scm:
192             credentials-id: '{ssh-credentials}'
193             refspec: ''
194             branch: '{branch}'
195
196     wrappers:
197         - build-name:
198             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
199
200     builders:
201         - description-setter:
202             description: "POD: $NODE_NAME"
203         - shell:
204             !include-raw-escape: ./fuel-download-artifact.sh
205         - shell:
206             !include-raw-escape: ./fuel-deploy.sh
207
208     publishers:
209         - email:
210             recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com peter.barabas@ericsson.com
211
212 ########################
213 # parameter macros
214 ########################
215 - parameter:
216     name: fuel-ci-parameter
217     parameters:
218         - string:
219             name: BUILD_DIRECTORY
220             default: $WORKSPACE/build_output
221             description: "Directory where the build artifact will be located upon the completion of the build."
222         - string:
223             name: CACHE_DIRECTORY
224             default: $HOME/opnfv/cache/$INSTALLER_TYPE
225             description: "Directory where the cache to be used during the build is located."
226         - string:
227             name: GS_URL
228             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
229             description: "URL to Google Storage."
230 ########################
231 # trigger macros
232 ########################
233 # os-nosdn-nofeature-ha trigger
234 # CI PODs
235 #-----------------------------------------------
236 # Triggers for job running on fuel-baremetal against master branch
237 #-----------------------------------------------
238
239 # HA Scenarios
240 - trigger:
241     name: 'fuel-os-nosdn-nofeature-ha-baremetal-daily-master-trigger'
242     triggers:
243         - timed: '0 20 * * *'
244 - trigger:
245     name: 'fuel-os-odl_l2-nofeature-ha-baremetal-daily-master-trigger'
246     triggers:
247         - timed: '0 23 * * *'
248 - trigger:
249     name: 'fuel-os-odl_l3-nofeature-ha-baremetal-daily-master-trigger'
250     triggers:
251         - timed: '0 2 * * *'
252 - trigger:
253     name: 'fuel-os-onos-sfc-ha-baremetal-daily-master-trigger'
254     triggers:
255         - timed: '0 5 * * *'
256 - trigger:
257     name: 'fuel-os-onos-nofeature-ha-baremetal-daily-master-trigger'
258     triggers:
259         - timed: '0 8 * * *'
260 - trigger:
261     name: 'fuel-os-odl_l2-sfc-ha-baremetal-daily-master-trigger'
262     triggers:
263         - timed: '0 11 * * *'
264 - trigger:
265     name: 'fuel-os-odl_l2-bgpvpn-ha-baremetal-daily-master-trigger'
266     triggers:
267         - timed: '0 14 * * *'
268 - trigger:
269     name: 'fuel-os-nosdn-kvm-ha-baremetal-daily-master-trigger'
270     triggers:
271         - timed: '0 17 * * *'
272 - trigger:
273     name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-master-trigger'
274     triggers:
275         - timed: ''
276
277 # NOHA Scenarios
278 - trigger:
279     name: 'fuel-os-nosdn-nofeature-noha-baremetal-daily-master-trigger'
280     triggers:
281         - timed: ''
282 - trigger:
283     name: 'fuel-os-odl_l2-nofeature-noha-baremetal-daily-master-trigger'
284     triggers:
285         - timed: ''
286 - trigger:
287     name: 'fuel-os-odl_l3-nofeature-noha-baremetal-daily-master-trigger'
288     triggers:
289         - timed: ''
290 - trigger:
291     name: 'fuel-os-onos-sfc-noha-baremetal-daily-master-trigger'
292     triggers:
293         - timed: ''
294 - trigger:
295     name: 'fuel-os-onos-nofeature-noha-baremetal-daily-master-trigger'
296     triggers:
297         - timed: ''
298 - trigger:
299     name: 'fuel-os-odl_l2-sfc-noha-baremetal-daily-master-trigger'
300     triggers:
301         - timed: ''
302 - trigger:
303     name: 'fuel-os-odl_l2-bgpvpn-noha-baremetal-daily-master-trigger'
304     triggers:
305         - timed: ''
306 - trigger:
307     name: 'fuel-os-nosdn-kvm-noha-baremetal-daily-master-trigger'
308     triggers:
309         - timed: ''
310 - trigger:
311     name: 'fuel-os-nosdn-ovs-noha-baremetal-daily-master-trigger'
312     triggers:
313         - timed: ''
314 #-----------------------------------------------
315 # Triggers for job running on fuel-virtual against master branch
316 #-----------------------------------------------
317 - trigger:
318     name: 'fuel-os-nosdn-nofeature-ha-virtual-daily-master-trigger'
319     triggers:
320         - timed: ''
321 - trigger:
322     name: 'fuel-os-odl_l2-nofeature-ha-virtual-daily-master-trigger'
323     triggers:
324         - timed: ''
325 - trigger:
326     name: 'fuel-os-odl_l3-nofeature-ha-virtual-daily-master-trigger'
327     triggers:
328         - timed: ''
329 - trigger:
330     name: 'fuel-os-onos-sfc-ha-virtual-daily-master-trigger'
331     triggers:
332         - timed: ''
333 - trigger:
334     name: 'fuel-os-onos-nofeature-ha-virtual-daily-master-trigger'
335     triggers:
336         - timed: ''
337 - trigger:
338     name: 'fuel-os-odl_l2-bgpvpn-ha-virtual-daily-master-trigger'
339     triggers:
340         - timed: ''
341 - trigger:
342     name: 'fuel-os-odl_l2-sfc-ha-virtual-daily-master-trigger'
343     triggers:
344         - timed: ''
345 - trigger:
346     name: 'fuel-os-nosdn-kvm-ha-virtual-daily-master-trigger'
347     triggers:
348         - timed: ''
349 - trigger:
350     name: 'fuel-os-nosdn-ovs-ha-virtual-daily-master-trigger'
351     triggers:
352         - timed: ''
353
354 # NOHA Scenarios
355 - trigger:
356     name: 'fuel-os-nosdn-nofeature-noha-virtual-daily-master-trigger'
357     triggers:
358         - timed: '0 13 * * *'
359 - trigger:
360     name: 'fuel-os-odl_l2-nofeature-noha-virtual-daily-master-trigger'
361     triggers:
362         - timed: '30 15 * * *'
363 - trigger:
364     name: 'fuel-os-odl_l3-nofeature-noha-virtual-daily-master-trigger'
365     triggers:
366         - timed: '0 18 * * *'
367 - trigger:
368     name: 'fuel-os-onos-sfc-noha-virtual-daily-master-trigger'
369     triggers:
370         - timed: '30 20 * * *'
371 - trigger:
372     name: 'fuel-os-onos-nofeature-noha-virtual-daily-master-trigger'
373     triggers:
374         - timed: '0 23 * * *'
375 - trigger:
376     name: 'fuel-os-odl_l2-sfc-noha-virtual-daily-master-trigger'
377     triggers:
378         - timed: '30 1 * * *'
379 - trigger:
380     name: 'fuel-os-odl_l2-bgpvpn-noha-virtual-daily-master-trigger'
381     triggers:
382         - timed: '0 4 * * *'
383 - trigger:
384     name: 'fuel-os-nosdn-kvm-noha-virtual-daily-master-trigger'
385     triggers:
386         - timed: '30 6 * * *'
387 - trigger:
388     name: 'fuel-os-nosdn-ovs-noha-virtual-daily-master-trigger'
389     triggers:
390         - timed: '0 9 * * *'
391 #-----------------------------------------------
392 # ZTE POD1 Triggers running against master branch
393 #-----------------------------------------------
394 - trigger:
395     name: 'fuel-os-nosdn-nofeature-ha-zte-pod1-daily-master-trigger'
396     triggers:
397         - timed: ''
398 - trigger:
399     name: 'fuel-os-odl_l2-nofeature-ha-zte-pod1-daily-master-trigger'
400     triggers:
401         - timed: '0 10 * * *'
402 - trigger:
403     name: 'fuel-os-odl_l3-nofeature-ha-zte-pod1-daily-master-trigger'
404     triggers:
405         - timed: ''
406 - trigger:
407     name: 'fuel-os-onos-sfc-ha-zte-pod1-daily-master-trigger'
408     triggers:
409         - timed: ''
410 - trigger:
411     name: 'fuel-os-onos-nofeature-ha-zte-pod1-daily-master-trigger'
412     triggers:
413         - timed: ''
414 - trigger:
415     name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod1-daily-master-trigger'
416     triggers:
417         - timed: ''
418 - trigger:
419     name: 'fuel-os-odl_l2-sfc-ha-zte-pod1-daily-master-trigger'
420     triggers:
421         - timed: ''
422 - trigger:
423     name: 'fuel-os-nosdn-kvm-ha-zte-pod1-daily-master-trigger'
424     triggers:
425         - timed: ''
426 - trigger:
427     name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-master-trigger'
428     triggers:
429         - timed: ''
430 # NOHA Scenarios
431 - trigger:
432     name: 'fuel-os-nosdn-nofeature-noha-zte-pod1-daily-master-trigger'
433     triggers:
434         - timed: ''
435 - trigger:
436     name: 'fuel-os-odl_l2-nofeature-noha-zte-pod1-daily-master-trigger'
437     triggers:
438         - timed: ''
439 - trigger:
440     name: 'fuel-os-odl_l3-nofeature-noha-zte-pod1-daily-master-trigger'
441     triggers:
442         - timed: ''
443 - trigger:
444     name: 'fuel-os-onos-sfc-noha-zte-pod1-daily-master-trigger'
445     triggers:
446         - timed: ''
447 - trigger:
448     name: 'fuel-os-onos-nofeature-noha-zte-pod1-daily-master-trigger'
449     triggers:
450         - timed: ''
451 - trigger:
452     name: 'fuel-os-odl_l2-sfc-noha-zte-pod1-daily-master-trigger'
453     triggers:
454         - timed: ''
455 - trigger:
456     name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod1-daily-master-trigger'
457     triggers:
458         - timed: ''
459 - trigger:
460     name: 'fuel-os-nosdn-kvm-noha-zte-pod1-daily-master-trigger'
461     triggers:
462         - timed: ''
463 - trigger:
464     name: 'fuel-os-nosdn-ovs-noha-zte-pod1-daily-master-trigger'
465     triggers:
466         - timed: ''