8c7e72f25366aa8f965ea5c54ce109f810d16989
[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     brahmaputra: &brahmaputra
18         stream: brahmaputra
19         branch: 'stable/{stream}'
20         gs-pathname: '/{stream}'
21         auto-trigger-name: 'daily-trigger-disabled'
22 #--------------------------------
23 # POD, INSTALLER, AND BRANCH MAPPING
24 #--------------------------------
25 #        CI PODs
26 #--------------------------------
27     pod:
28         - baremetal:
29             slave-label: fuel-baremetal
30             <<: *master
31         - virtual:
32             slave-label: fuel-virtual
33             <<: *master
34         - baremetal:
35             slave-label: fuel-baremetal
36             <<: *brahmaputra
37         - virtual:
38             slave-label: fuel-virtual
39             <<: *brahmaputra
40 #--------------------------------
41 #        None-CI PODs
42 #--------------------------------
43         - zte-pod1:
44             slave-label: zte-pod1
45             <<: *master
46 #--------------------------------
47 #       scenarios
48 #--------------------------------
49     scenario:
50         # HA scenarios
51         - 'os-nosdn-nofeature-ha':
52             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
53         - 'os-odl_l2-nofeature-ha':
54             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
55         - 'os-odl_l3-nofeature-ha':
56             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
57         - 'os-onos-sfc-ha':
58             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
59         - 'os-onos-nofeature-ha':
60             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
61         - 'os-odl_l2-sfc-ha':
62             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
63         - 'os-odl_l2-bgpvpn-ha':
64             auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
65         - 'os-nosdn-kvm-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-kvm_ovs-ha':
70             auto-trigger-name: 'daily-trigger-disabled'
71
72     jobs:
73         - 'fuel-{scenario}-{pod}-daily-{stream}'
74         - 'fuel-deploy-{pod}-daily-{stream}'
75
76 ########################
77 # job templates
78 ########################
79 - job-template:
80     name: 'fuel-{scenario}-{pod}-daily-{stream}'
81
82     concurrent: false
83
84     properties:
85         - throttle:
86             enabled: true
87             max-total: 4
88             max-per-node: 1
89         - build-blocker:
90             use-build-blocker: true
91             blocking-jobs:
92                 - 'fuel-os-.*?-{pod}-daily-{stream}'
93             block-level: 'NODE'
94
95     wrappers:
96         - build-name:
97             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
98
99     triggers:
100         - '{auto-trigger-name}'
101
102     parameters:
103         - project-parameter:
104             project: '{project}'
105         - '{installer}-defaults'
106         - '{slave-label}-defaults':
107             installer: '{installer}'
108         - string:
109             name: DEPLOY_SCENARIO
110             default: '{scenario}'
111         - fuel-ci-parameter:
112             gs-pathname: '{gs-pathname}'
113
114     builders:
115         - trigger-builds:
116             - project: 'fuel-deploy-{pod}-daily-{stream}'
117               current-parameters: false
118               predefined-parameters:
119                 DEPLOY_SCENARIO={scenario}
120               same-node: true
121               block: true
122         - trigger-builds:
123             - project: 'yardstick-fuel-{pod}-daily-{stream}'
124               current-parameters: false
125               predefined-parameters:
126                 DEPLOY_SCENARIO={scenario}
127               same-node: true
128               block: true
129               block-thresholds:
130                 build-step-failure-threshold: 'never'
131                 failure-threshold: 'never'
132                 unstable-threshold: 'FAILURE'
133         - trigger-builds:
134             - project: 'functest-fuel-{pod}-daily-{stream}'
135               current-parameters: false
136               predefined-parameters:
137                 DEPLOY_SCENARIO={scenario}
138               block: true
139               same-node: true
140               block-thresholds:
141                 build-step-failure-threshold: 'never'
142                 failure-threshold: 'never'
143                 unstable-threshold: 'FAILURE'
144
145     publishers:
146         - email:
147             recipients: peter.barabas@ericsson.com
148
149 - job-template:
150     name: 'fuel-deploy-{pod}-daily-{stream}'
151
152     concurrent: true
153
154     properties:
155         - throttle:
156             enabled: true
157             max-total: 4
158             max-per-node: 1
159         - build-blocker:
160             use-build-blocker: true
161             blocking-jobs:
162                 - 'fuel-deploy-{pod}-daily-{stream}'
163                 - 'fuel-deploy-generic-daily-.*'
164             block-level: 'NODE'
165
166     parameters:
167         - project-parameter:
168             project: '{project}'
169         - '{installer}-defaults'
170         - '{slave-label}-defaults':
171             installer: '{installer}'
172         - string:
173             name: DEPLOY_SCENARIO
174             default: 'os-odl_l2-nofeature-ha'
175         - fuel-ci-parameter:
176             gs-pathname: '{gs-pathname}'
177
178     scm:
179         - git-scm:
180             credentials-id: '{ssh-credentials}'
181             refspec: ''
182             branch: '{branch}'
183
184     wrappers:
185         - build-name:
186             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
187
188     builders:
189         - shell:
190             !include-raw-escape: ./fuel-download-artifact.sh
191         - shell:
192             !include-raw-escape: ./fuel-deploy.sh
193
194     publishers:
195         - email:
196             recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com peter.barabas@ericsson.com
197
198 ########################
199 # parameter macros
200 ########################
201 - parameter:
202     name: fuel-ci-parameter
203     parameters:
204         - string:
205             name: BUILD_DIRECTORY
206             default: $WORKSPACE/build_output
207             description: "Directory where the build artifact will be located upon the completion of the build."
208         - string:
209             name: CACHE_DIRECTORY
210             default: $HOME/opnfv/cache/$INSTALLER_TYPE
211             description: "Directory where the cache to be used during the build is located."
212         - string:
213             name: GS_URL
214             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
215             description: "URL to Google Storage."
216 ########################
217 # trigger macros
218 ########################
219 # os-nosdn-nofeature-ha trigger
220 # CI PODs
221 #-----------------------------------------------
222 # Triggers for job running on fuel-baremetal against master branch
223 #-----------------------------------------------
224 - trigger:
225     name: 'fuel-os-nosdn-nofeature-ha-baremetal-daily-master-trigger'
226     triggers:
227         - timed: '0 20 * * *'
228 - trigger:
229     name: 'fuel-os-odl_l2-nofeature-ha-baremetal-daily-master-trigger'
230     triggers:
231         - timed: '0 0 * * *'
232 - trigger:
233     name: 'fuel-os-odl_l3-nofeature-ha-baremetal-daily-master-trigger'
234     triggers:
235         - timed: '0 4 * * *'
236 - trigger:
237     name: 'fuel-os-onos-sfc-ha-baremetal-daily-master-trigger'
238     triggers:
239         - timed: '0 8 * * *'
240 - trigger:
241     name: 'fuel-os-onos-nofeature-ha-baremetal-daily-master-trigger'
242     triggers:
243         - timed: '0 12 * * *'
244 - trigger:
245     name: 'fuel-os-odl_l2-sfc-ha-baremetal-daily-master-trigger'
246     triggers:
247         - timed: '0 16 * * *'
248 - trigger:
249     name: 'fuel-os-odl_l2-bgpvpn-ha-baremetal-daily-master-trigger'
250     triggers:
251         - timed: ''
252 - trigger:
253     name: 'fuel-os-nosdn-kvm-ha-baremetal-daily-master-trigger'
254     triggers:
255         - timed: ''
256 - trigger:
257     name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-master-trigger'
258     triggers:
259         - timed: ''
260 - trigger:
261     name: 'fuel-os-nosdn-kvm-noha-baremetal-daily-master-trigger'
262     triggers:
263         - timed: ''
264 #-----------------------------------------------
265 # Triggers for job running on fuel-virtual against master branch
266 #-----------------------------------------------
267 - trigger:
268     name: 'fuel-os-nosdn-nofeature-ha-virtual-daily-master-trigger'
269     triggers:
270         - timed: ''
271 - trigger:
272     name: 'fuel-os-odl_l2-nofeature-ha-virtual-daily-master-trigger'
273     triggers:
274         - timed: ''
275 - trigger:
276     name: 'fuel-os-odl_l3-nofeature-ha-virtual-daily-master-trigger'
277     triggers:
278         - timed: ''
279 - trigger:
280     name: 'fuel-os-onos-sfc-ha-virtual-daily-master-trigger'
281     triggers:
282         - timed: ''
283 - trigger:
284     name: 'fuel-os-onos-nofeature-ha-virtual-daily-master-trigger'
285     triggers:
286         - timed: ''
287 - trigger:
288     name: 'fuel-os-odl_l2-bgpvpn-ha-virtual-daily-master-trigger'
289     triggers:
290         - timed: ''
291 - trigger:
292     name: 'fuel-os-odl_l2-sfc-ha-virtual-daily-master-trigger'
293     triggers:
294         - timed: ''
295 - trigger:
296     name: 'fuel-os-nosdn-kvm-ha-virtual-daily-master-trigger'
297     triggers:
298         - timed: ''
299 - trigger:
300     name: 'fuel-os-nosdn-ovs-ha-virtual-daily-master-trigger'
301     triggers:
302         - timed: ''
303 - trigger:
304     name: 'fuel-os-nosdn-kvm-noha-virtual-daily-master-trigger'
305     triggers:
306         - timed: ''
307 #-----------------------------------------------
308 # ZTE POD1 Triggers running against master branch
309 #-----------------------------------------------
310 - trigger:
311     name: 'fuel-os-nosdn-nofeature-ha-zte-pod1-daily-master-trigger'
312     triggers:
313         - timed: ''
314 - trigger:
315     name: 'fuel-os-odl_l2-nofeature-ha-zte-pod1-daily-master-trigger'
316     triggers:
317         - timed: '0 12 * * *'
318 - trigger:
319     name: 'fuel-os-odl_l3-nofeature-ha-zte-pod1-daily-master-trigger'
320     triggers:
321         - timed: ''
322 - trigger:
323     name: 'fuel-os-onos-sfc-ha-zte-pod1-daily-master-trigger'
324     triggers:
325         - timed: ''
326 - trigger:
327     name: 'fuel-os-onos-nofeature-ha-zte-pod1-daily-master-trigger'
328     triggers:
329         - timed: ''
330 - trigger:
331     name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod1-daily-master-trigger'
332     triggers:
333         - timed: ''
334 - trigger:
335     name: 'fuel-os-odl_l2-sfc-ha-zte-pod1-daily-master-trigger'
336     triggers:
337         - timed: ''
338 - trigger:
339     name: 'fuel-os-nosdn-kvm-ha-zte-pod1-daily-master-trigger'
340     triggers:
341         - timed: ''
342 - trigger:
343     name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-master-trigger'
344     triggers:
345         - timed: ''