[macro] property logrotate
[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         - logrotate-default
92         - throttle:
93             enabled: true
94             max-total: 4
95             max-per-node: 1
96             option: 'project'
97         - build-blocker:
98             use-build-blocker: true
99             blocking-jobs:
100                 - 'joid-os-.*?-{pod}-daily-.*'
101             block-level: 'NODE'
102
103     wrappers:
104         - build-name:
105             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
106
107     triggers:
108         - '{auto-trigger-name}'
109
110     parameters:
111         - project-parameter:
112             project: '{project}'
113         - '{installer}-defaults'
114         - '{slave-label}-defaults':
115             installer: '{installer}'
116         - string:
117             name: DEPLOY_SCENARIO
118             default: '{scenario}'
119
120     builders:
121         - description-setter:
122             description: "POD: $NODE_NAME"
123         - trigger-builds:
124             - project: 'joid-deploy-{pod}-daily-{stream}'
125               current-parameters: true
126               predefined-parameters:
127                 DEPLOY_SCENARIO={scenario}
128               same-node: true
129               block: true
130         - trigger-builds:
131             - project: 'functest-joid-{pod}-daily-{stream}'
132               current-parameters: false
133               predefined-parameters:
134                 DEPLOY_SCENARIO={scenario}
135               block: true
136               same-node: true
137               block-thresholds:
138                 build-step-failure-threshold: 'never'
139                 failure-threshold: 'never'
140                 unstable-threshold: 'FAILURE'
141         - trigger-builds:
142             - project: 'yardstick-joid-{pod}-daily-{stream}'
143               current-parameters: false
144               predefined-parameters:
145                 DEPLOY_SCENARIO={scenario}
146               block: true
147               same-node: true
148               block-thresholds:
149                 build-step-failure-threshold: 'never'
150                 failure-threshold: 'never'
151                 unstable-threshold: 'FAILURE'
152
153 - job-template:
154     name: 'joid-deploy-{pod}-daily-{stream}'
155
156     disabled: '{obj:disabled}'
157
158     concurrent: true
159
160     properties:
161         - logrotate-default
162         - throttle:
163             enabled: true
164             max-total: 4
165             max-per-node: 1
166             option: 'project'
167         - build-blocker:
168             use-build-blocker: true
169             blocking-jobs:
170                 - 'joid-deploy-{pod}-daily-.*'
171             block-level: 'NODE'
172
173     wrappers:
174         - build-name:
175             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
176         - timeout:
177             timeout: 180
178             fail: true
179
180     parameters:
181         - project-parameter:
182             project: '{project}'
183         - gerrit-parameter:
184             branch: '{branch}'
185         - '{installer}-defaults'
186         - '{slave-label}-defaults':
187             installer: '{installer}'
188         - string:
189             name: DEPLOY_SCENARIO
190             default: 'os-odl_l2-nofeature-ha'
191
192     scm:
193         - git-scm
194
195     builders:
196         - description-setter:
197             description: "POD: $NODE_NAME"
198         - 'builder-macro'
199 ########################
200 # builder macros
201 ########################
202 - builder:
203     name: 'builder-macro'
204     builders:
205         - shell: |
206             #!/bin/bash
207             echo "Running $INSTALLER_TYPE with controller $SDN_CONTROLLER"
208             echo
209             echo "------ First Executing clean.sh ------"
210             cd $WORKSPACE/ci
211             ./clean.sh
212         - shell:
213             !include-raw: ./joid-deploy.sh
214
215 ########################
216 # trigger macros
217 ########################
218 # os-nosdn-nofeature-ha trigger - branch: master
219 - trigger:
220     name: 'joid-os-nosdn-nofeature-ha-baremetal-master-trigger'
221     triggers:
222         - timed: '5 2 * * *'
223 - trigger:
224     name: 'joid-os-nosdn-nofeature-ha-virtual-master-trigger'
225     triggers:
226         - timed: ''
227 - trigger:
228     name: 'joid-os-nosdn-nofeature-ha-orange-pod1-master-trigger'
229     triggers:
230         - timed: ''
231 # os-nosdn-nofeature-ha trigger - branch: danube
232 - trigger:
233     name: 'joid-os-nosdn-nofeature-ha-baremetal-danube-trigger'
234     triggers:
235         - timed: '0 2 * * *'
236 - trigger:
237     name: 'joid-os-nosdn-nofeature-ha-virtual-danube-trigger'
238     triggers:
239         - timed: ''
240 - trigger:
241     name: 'joid-os-nosdn-nofeature-ha-orange-pod1-danube-trigger'
242     triggers:
243         - timed: ''
244 # os-odl_l2-nofeature-ha trigger - branch: master
245 - trigger:
246     name: 'joid-os-odl_l2-nofeature-ha-baremetal-master-trigger'
247     triggers:
248         - timed: '5 7 * * *'
249 - trigger:
250     name: 'joid-os-odl_l2-nofeature-ha-virtual-master-trigger'
251     triggers:
252         - timed: ''
253 - trigger:
254     name: 'joid-os-odl_l2-nofeature-ha-orange-pod1-master-trigger'
255     triggers:
256         - timed: ''
257 # os-odl_l2-nofeature-ha trigger - branch: danube
258 - trigger:
259     name: 'joid-os-odl_l2-nofeature-ha-baremetal-danube-trigger'
260     triggers:
261         - timed: '0 7 * * *'
262 - trigger:
263     name: 'joid-os-odl_l2-nofeature-ha-virtual-danube-trigger'
264     triggers:
265         - timed: ''
266 - trigger:
267     name: 'joid-os-odl_l2-nofeature-ha-orange-pod1-danube-trigger'
268     triggers:
269         - timed: ''
270 # os-onos-nofeature-ha trigger - branch: master
271 - trigger:
272     name: 'joid-os-onos-nofeature-ha-baremetal-master-trigger'
273     triggers:
274         - timed: '5 12 * * *'
275 - trigger:
276     name: 'joid-os-onos-nofeature-ha-virtual-master-trigger'
277     triggers:
278         - timed: ''
279 - trigger:
280     name: 'joid-os-onos-nofeature-ha-orange-pod1-master-trigger'
281     triggers:
282         - timed: ''
283 # os-onos-nofeature-ha trigger - branch: danube
284 - trigger:
285     name: 'joid-os-onos-nofeature-ha-baremetal-danube-trigger'
286     triggers:
287         - timed: '0 12 * * *'
288 - trigger:
289     name: 'joid-os-onos-nofeature-ha-virtual-danube-trigger'
290     triggers:
291         - timed: ''
292 - trigger:
293     name: 'joid-os-onos-nofeature-ha-orange-pod1-danube-trigger'
294     triggers:
295         - timed: ''
296 # os-onos-sfc-ha trigger - branch: master
297 - trigger:
298     name: 'joid-os-onos-sfc-ha-baremetal-master-trigger'
299     triggers:
300         - timed: '5 17 * * *'
301 - trigger:
302     name: 'joid-os-onos-sfc-ha-virtual-master-trigger'
303     triggers:
304         - timed: ''
305 - trigger:
306     name: 'joid-os-onos-sfc-ha-orange-pod1-master-trigger'
307     triggers:
308         - timed: ''
309 # os-onos-sfc-ha trigger - branch: danube
310 - trigger:
311     name: 'joid-os-onos-sfc-ha-baremetal-danube-trigger'
312     triggers:
313         - timed: '0 17 * * *'
314 - trigger:
315     name: 'joid-os-onos-sfc-ha-virtual-danube-trigger'
316     triggers:
317         - timed: ''
318 - trigger:
319     name: 'joid-os-onos-sfc-ha-orange-pod1-danube-trigger'
320     triggers:
321         - timed: ''
322 # os-nosdn-lxd-noha trigger - branch: master
323 - trigger:
324     name: 'joid-os-nosdn-lxd-noha-baremetal-master-trigger'
325     triggers:
326         - timed: '5 22 * * *'
327 - trigger:
328     name: 'joid-os-nosdn-lxd-noha-virtual-master-trigger'
329     triggers:
330         - timed: ''
331 - trigger:
332     name: 'joid-os-nosdn-lxd-noha-orange-pod1-master-trigger'
333     triggers:
334         - timed: ''
335 # os-nosdn-lxd-noha trigger - branch: danube
336 - trigger:
337     name: 'joid-os-nosdn-lxd-noha-baremetal-danube-trigger'
338     triggers:
339         - timed: '0 22 * * *'
340 - trigger:
341     name: 'joid-os-nosdn-lxd-noha-virtual-danube-trigger'
342     triggers:
343         - timed: ''
344 - trigger:
345     name: 'joid-os-nosdn-lxd-noha-orange-pod1-danube-trigger'
346     triggers:
347         - timed: ''
348 # os-nosdn-lxd-ha trigger - branch: master
349 - trigger:
350     name: 'joid-os-nosdn-lxd-ha-baremetal-master-trigger'
351     triggers:
352         - timed: '5 10 * * *'
353 - trigger:
354     name: 'joid-os-nosdn-lxd-ha-virtual-master-trigger'
355     triggers:
356         - timed: ''
357 - trigger:
358     name: 'joid-os-nosdn-lxd-ha-orange-pod1-master-trigger'
359     triggers:
360         - timed: ''
361 # os-nosdn-lxd-ha trigger - branch: danube
362 - trigger:
363     name: 'joid-os-nosdn-lxd-ha-baremetal-danube-trigger'
364     triggers:
365         - timed: '0 10 * * *'
366 - trigger:
367     name: 'joid-os-nosdn-lxd-ha-virtual-danube-trigger'
368     triggers:
369         - timed: ''
370 - trigger:
371     name: 'joid-os-nosdn-lxd-ha-orange-pod1-danube-trigger'
372     triggers:
373         - timed: ''
374 # os-nosdn-nofeature-noha trigger - branch: master
375 - trigger:
376     name: 'joid-os-nosdn-nofeature-noha-baremetal-master-trigger'
377     triggers:
378         - timed: '5 4 * * *'
379 - trigger:
380     name: 'joid-os-nosdn-nofeature-noha-virtual-master-trigger'
381     triggers:
382         - timed: ''
383 - trigger:
384     name: 'joid-os-nosdn-nofeature-noha-orange-pod1-master-trigger'
385     triggers:
386         - timed: ''
387 # os-nosdn-nofeature-noha trigger - branch: danube
388 - trigger:
389     name: 'joid-os-nosdn-nofeature-noha-baremetal-danube-trigger'
390     triggers:
391         - timed: '0 4 * * *'
392 - trigger:
393     name: 'joid-os-nosdn-nofeature-noha-virtual-danube-trigger'
394     triggers:
395         - timed: ''
396 - trigger:
397     name: 'joid-os-nosdn-nofeature-noha-orange-pod1-danube-trigger'
398     triggers:
399         - timed: ''