91fcc88147dbb314058dd6145dd63b30d58075f3
[releng.git] / jjb / joid / joid-daily-jobs.yml
1 ########################
2 # Job configuration for joid
3 ########################
4 - project:
5
6     name: 'joid'
7
8     project: '{name}'
9
10     installer: '{name}'
11
12 #--------------------------------
13 # BRANCH ANCHORS
14 #--------------------------------
15     master: &master
16         stream: master
17         branch: '{stream}'
18         disabled: false
19         gs-pathname: ''
20     danube: &danube
21         stream: danube
22         branch: 'stable/{stream}'
23         disabled: true
24         gs-pathname: '/{stream}'
25 #--------------------------------
26 # POD, INSTALLER, AND BRANCH MAPPING
27 #--------------------------------
28 #        CI PODs
29 #--------------------------------
30     pod:
31         - baremetal:
32             slave-label: joid-baremetal
33             <<: *master
34         - virtual:
35             slave-label: joid-virtual
36             <<: *master
37         - baremetal:
38             slave-label: joid-baremetal
39             <<: *danube
40         - virtual:
41             slave-label: joid-virtual
42             <<: *danube
43 #--------------------------------
44 #        None-CI PODs
45 #--------------------------------
46         - orange-pod1:
47             slave-label: orange-pod1
48             <<: *master
49 #--------------------------------
50 # scenarios
51 #--------------------------------
52     scenario:
53         - 'os-nosdn-nofeature-noha':
54             auto-trigger-name: 'joid-{scenario}-{pod}-{stream}-trigger'
55         - 'os-nosdn-nofeature-ha':
56             auto-trigger-name: 'joid-{scenario}-{pod}-{stream}-trigger'
57         - 'os-nosdn-lxd-ha':
58             auto-trigger-name: 'joid-{scenario}-{pod}-{stream}-trigger'
59         - 'os-nosdn-lxd-noha':
60             auto-trigger-name: 'joid-{scenario}-{pod}-{stream}-trigger'
61         - 'os-odl_l2-nofeature-ha':
62             auto-trigger-name: 'joid-{scenario}-{pod}-{stream}-trigger'
63         - 'os-onos-nofeature-ha':
64             auto-trigger-name: 'joid-{scenario}-{pod}-{stream}-trigger'
65         - 'os-odl_l2-nofeature-noha':
66             auto-trigger-name: 'daily-trigger-disabled'
67         - 'os-onos-nofeature-noha':
68             auto-trigger-name: 'daily-trigger-disabled'
69         - 'os-onos-sfc-ha':
70             auto-trigger-name: 'joid-{scenario}-{pod}-{stream}-trigger'
71         - 'os-ocl-nofeature-ha':
72             auto-trigger-name: 'daily-trigger-disabled'
73         - 'os-ocl-nofeature-noha':
74             auto-trigger-name: 'daily-trigger-disabled'
75
76     jobs:
77         - 'joid-{scenario}-{pod}-daily-{stream}'
78         - 'joid-deploy-{pod}-daily-{stream}'
79
80 ########################
81 # job templates
82 ########################
83 - job-template:
84     name: 'joid-{scenario}-{pod}-daily-{stream}'
85
86     disabled: '{obj:disabled}'
87
88     concurrent: false
89
90     properties:
91         - throttle:
92             enabled: true
93             max-total: 4
94             max-per-node: 1
95             option: 'project'
96         - build-blocker:
97             use-build-blocker: true
98             blocking-jobs:
99                 - 'joid-os-.*?-{pod}-daily-.*'
100             block-level: 'NODE'
101
102     wrappers:
103         - build-name:
104             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
105
106     triggers:
107         - '{auto-trigger-name}'
108
109     parameters:
110         - project-parameter:
111             project: '{project}'
112         - '{installer}-defaults'
113         - '{slave-label}-defaults':
114             installer: '{installer}'
115         - string:
116             name: DEPLOY_SCENARIO
117             default: '{scenario}'
118
119     builders:
120         - description-setter:
121             description: "POD: $NODE_NAME"
122         - trigger-builds:
123             - project: 'joid-deploy-{pod}-daily-{stream}'
124               current-parameters: true
125               predefined-parameters:
126                 DEPLOY_SCENARIO={scenario}
127               same-node: true
128               block: true
129         - trigger-builds:
130             - project: 'functest-joid-{pod}-daily-{stream}'
131               current-parameters: false
132               predefined-parameters:
133                 DEPLOY_SCENARIO={scenario}
134               block: true
135               same-node: true
136               block-thresholds:
137                 build-step-failure-threshold: 'never'
138                 failure-threshold: 'never'
139                 unstable-threshold: 'FAILURE'
140         - trigger-builds:
141             - project: 'yardstick-joid-{pod}-daily-{stream}'
142               current-parameters: false
143               predefined-parameters:
144                 DEPLOY_SCENARIO={scenario}
145               block: true
146               same-node: true
147               block-thresholds:
148                 build-step-failure-threshold: 'never'
149                 failure-threshold: 'never'
150                 unstable-threshold: 'FAILURE'
151
152 - job-template:
153     name: 'joid-deploy-{pod}-daily-{stream}'
154
155     disabled: '{obj:disabled}'
156
157     concurrent: true
158
159     properties:
160         - throttle:
161             enabled: true
162             max-total: 4
163             max-per-node: 1
164             option: 'project'
165         - build-blocker:
166             use-build-blocker: true
167             blocking-jobs:
168                 - 'joid-deploy-{pod}-daily-.*'
169             block-level: 'NODE'
170
171     wrappers:
172         - build-name:
173             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
174         - timeout:
175             timeout: 180
176             fail: true
177
178     parameters:
179         - project-parameter:
180             project: '{project}'
181         - gerrit-parameter:
182             branch: '{branch}'
183         - '{installer}-defaults'
184         - '{slave-label}-defaults':
185             installer: '{installer}'
186         - string:
187             name: DEPLOY_SCENARIO
188             default: 'os-odl_l2-nofeature-ha'
189
190     scm:
191         - git-scm
192
193     builders:
194         - description-setter:
195             description: "POD: $NODE_NAME"
196         - 'builder-macro'
197 ########################
198 # builder macros
199 ########################
200 - builder:
201     name: 'builder-macro'
202     builders:
203         - shell: |
204             #!/bin/bash
205             echo "Running $INSTALLER_TYPE with controller $SDN_CONTROLLER"
206             echo
207             echo "------ First Executing clean.sh ------"
208             cd $WORKSPACE/ci
209             ./clean.sh
210         - shell:
211             !include-raw: ./joid-deploy.sh
212
213 ########################
214 # trigger macros
215 ########################
216 # os-nosdn-nofeature-ha trigger - branch: master
217 - trigger:
218     name: 'joid-os-nosdn-nofeature-ha-baremetal-master-trigger'
219     triggers:
220         - timed: '5 2 * * *'
221 - trigger:
222     name: 'joid-os-nosdn-nofeature-ha-virtual-master-trigger'
223     triggers:
224         - timed: ''
225 - trigger:
226     name: 'joid-os-nosdn-nofeature-ha-orange-pod1-master-trigger'
227     triggers:
228         - timed: ''
229 # os-nosdn-nofeature-ha trigger - branch: danube
230 - trigger:
231     name: 'joid-os-nosdn-nofeature-ha-baremetal-danube-trigger'
232     triggers:
233         - timed: '0 2 * * *'
234 - trigger:
235     name: 'joid-os-nosdn-nofeature-ha-virtual-danube-trigger'
236     triggers:
237         - timed: ''
238 - trigger:
239     name: 'joid-os-nosdn-nofeature-ha-orange-pod1-danube-trigger'
240     triggers:
241         - timed: ''
242 # os-odl_l2-nofeature-ha trigger - branch: master
243 - trigger:
244     name: 'joid-os-odl_l2-nofeature-ha-baremetal-master-trigger'
245     triggers:
246         - timed: '5 7 * * *'
247 - trigger:
248     name: 'joid-os-odl_l2-nofeature-ha-virtual-master-trigger'
249     triggers:
250         - timed: ''
251 - trigger:
252     name: 'joid-os-odl_l2-nofeature-ha-orange-pod1-master-trigger'
253     triggers:
254         - timed: ''
255 # os-odl_l2-nofeature-ha trigger - branch: danube
256 - trigger:
257     name: 'joid-os-odl_l2-nofeature-ha-baremetal-danube-trigger'
258     triggers:
259         - timed: '0 7 * * *'
260 - trigger:
261     name: 'joid-os-odl_l2-nofeature-ha-virtual-danube-trigger'
262     triggers:
263         - timed: ''
264 - trigger:
265     name: 'joid-os-odl_l2-nofeature-ha-orange-pod1-danube-trigger'
266     triggers:
267         - timed: ''
268 # os-onos-nofeature-ha trigger - branch: master
269 - trigger:
270     name: 'joid-os-onos-nofeature-ha-baremetal-master-trigger'
271     triggers:
272         - timed: '5 12 * * *'
273 - trigger:
274     name: 'joid-os-onos-nofeature-ha-virtual-master-trigger'
275     triggers:
276         - timed: ''
277 - trigger:
278     name: 'joid-os-onos-nofeature-ha-orange-pod1-master-trigger'
279     triggers:
280         - timed: ''
281 # os-onos-nofeature-ha trigger - branch: danube
282 - trigger:
283     name: 'joid-os-onos-nofeature-ha-baremetal-danube-trigger'
284     triggers:
285         - timed: '0 12 * * *'
286 - trigger:
287     name: 'joid-os-onos-nofeature-ha-virtual-danube-trigger'
288     triggers:
289         - timed: ''
290 - trigger:
291     name: 'joid-os-onos-nofeature-ha-orange-pod1-danube-trigger'
292     triggers:
293         - timed: ''
294 # os-onos-sfc-ha trigger - branch: master
295 - trigger:
296     name: 'joid-os-onos-sfc-ha-baremetal-master-trigger'
297     triggers:
298         - timed: '5 17 * * *'
299 - trigger:
300     name: 'joid-os-onos-sfc-ha-virtual-master-trigger'
301     triggers:
302         - timed: ''
303 - trigger:
304     name: 'joid-os-onos-sfc-ha-orange-pod1-master-trigger'
305     triggers:
306         - timed: ''
307 # os-onos-sfc-ha trigger - branch: danube
308 - trigger:
309     name: 'joid-os-onos-sfc-ha-baremetal-danube-trigger'
310     triggers:
311         - timed: '0 17 * * *'
312 - trigger:
313     name: 'joid-os-onos-sfc-ha-virtual-danube-trigger'
314     triggers:
315         - timed: ''
316 - trigger:
317     name: 'joid-os-onos-sfc-ha-orange-pod1-danube-trigger'
318     triggers:
319         - timed: ''
320 # os-nosdn-lxd-noha trigger - branch: master
321 - trigger:
322     name: 'joid-os-nosdn-lxd-noha-baremetal-master-trigger'
323     triggers:
324         - timed: '5 22 * * *'
325 - trigger:
326     name: 'joid-os-nosdn-lxd-noha-virtual-master-trigger'
327     triggers:
328         - timed: ''
329 - trigger:
330     name: 'joid-os-nosdn-lxd-noha-orange-pod1-master-trigger'
331     triggers:
332         - timed: ''
333 # os-nosdn-lxd-noha trigger - branch: danube
334 - trigger:
335     name: 'joid-os-nosdn-lxd-noha-baremetal-danube-trigger'
336     triggers:
337         - timed: '0 22 * * *'
338 - trigger:
339     name: 'joid-os-nosdn-lxd-noha-virtual-danube-trigger'
340     triggers:
341         - timed: ''
342 - trigger:
343     name: 'joid-os-nosdn-lxd-noha-orange-pod1-danube-trigger'
344     triggers:
345         - timed: ''
346 # os-nosdn-lxd-ha trigger - branch: master
347 - trigger:
348     name: 'joid-os-nosdn-lxd-ha-baremetal-master-trigger'
349     triggers:
350         - timed: '5 10 * * *'
351 - trigger:
352     name: 'joid-os-nosdn-lxd-ha-virtual-master-trigger'
353     triggers:
354         - timed: ''
355 - trigger:
356     name: 'joid-os-nosdn-lxd-ha-orange-pod1-master-trigger'
357     triggers:
358         - timed: ''
359 # os-nosdn-lxd-ha trigger - branch: danube
360 - trigger:
361     name: 'joid-os-nosdn-lxd-ha-baremetal-danube-trigger'
362     triggers:
363         - timed: '0 10 * * *'
364 - trigger:
365     name: 'joid-os-nosdn-lxd-ha-virtual-danube-trigger'
366     triggers:
367         - timed: ''
368 - trigger:
369     name: 'joid-os-nosdn-lxd-ha-orange-pod1-danube-trigger'
370     triggers:
371         - timed: ''
372 # os-nosdn-nofeature-noha trigger - branch: master
373 - trigger:
374     name: 'joid-os-nosdn-nofeature-noha-baremetal-master-trigger'
375     triggers:
376         - timed: '5 4 * * *'
377 - trigger:
378     name: 'joid-os-nosdn-nofeature-noha-virtual-master-trigger'
379     triggers:
380         - timed: ''
381 - trigger:
382     name: 'joid-os-nosdn-nofeature-noha-orange-pod1-master-trigger'
383     triggers:
384         - timed: ''
385 # os-nosdn-nofeature-noha trigger - branch: danube
386 - trigger:
387     name: 'joid-os-nosdn-nofeature-noha-baremetal-danube-trigger'
388     triggers:
389         - timed: '0 4 * * *'
390 - trigger:
391     name: 'joid-os-nosdn-nofeature-noha-virtual-danube-trigger'
392     triggers:
393         - timed: ''
394 - trigger:
395     name: 'joid-os-nosdn-nofeature-noha-orange-pod1-danube-trigger'
396     triggers:
397         - timed: ''