Merge "[fuel] Disable iso download for master branch"
[releng.git] / jjb / compass4nfv / compass-ci-jobs.yml
1 - project:
2
3     name: compass-ci
4
5     installer: 'compass'
6
7     project: 'compass4nfv'
8
9     master: &master
10         stream: master
11         branch: '{stream}'
12         gs-pathname: ''
13         disabled: false
14         openstack-version: ocata
15     danube: &danube
16         stream: danube
17         branch: 'stable/{stream}'
18         gs-pathname: '/{stream}'
19         disabled: false
20         openstack-version: newton
21 #--------------------------------
22 # POD, INSTALLER, AND BRANCH MAPPING
23 #--------------------------------
24 #        CI PODs
25 #--------------------------------
26     pod:
27         - baremetal:
28             slave-label: compass-baremetal-master
29             os-version: 'xenial'
30             <<: *master
31         - virtual:
32             slave-label: compass-virtual-master
33             os-version: 'xenial'
34             <<: *master
35         - baremetal:
36             slave-label: compass-baremetal-branch
37             os-version: 'xenial'
38             <<: *danube
39         - virtual:
40             slave-label: compass-virtual-branch
41             os-version: 'xenial'
42             <<: *danube
43 #--------------------------------
44 #        master
45 #--------------------------------
46         - baremetal-centos:
47             slave-label: 'intel-pod8'
48             os-version: 'centos7'
49             <<: *master
50
51     scenario:
52         - 'os-nosdn-nofeature-ha':
53             disabled: false
54             auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
55         - 'os-odl_l2-nofeature-ha':
56             disabled: false
57             auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
58         - 'os-odl_l3-nofeature-ha':
59             disabled: false
60             auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
61         - 'os-onos-nofeature-ha':
62             disabled: false
63             auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
64         - 'os-ocl-nofeature-ha':
65             disabled: false
66             auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
67         - 'os-onos-sfc-ha':
68             disabled: false
69             auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
70         - 'os-odl_l2-moon-ha':
71             disabled: false
72             auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
73         - 'os-nosdn-kvm-ha':
74             disabled: false
75             auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
76         - 'os-nosdn-openo-ha':
77             disabled: false
78             auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
79
80
81     jobs:
82         - 'compass-{scenario}-{pod}-daily-{stream}'
83         - 'compass-deploy-{pod}-daily-{stream}'
84
85 ########################
86 # job templates
87 ########################
88 - job-template:
89     name: 'compass-{scenario}-{pod}-daily-{stream}'
90
91     disabled: '{obj:disabled}'
92
93     concurrent: true
94
95     properties:
96         - logrotate-default
97         - throttle:
98             enabled: true
99             max-per-node: 1
100             option: 'project'
101         - build-blocker:
102             use-build-blocker: true
103             blocking-jobs:
104                 - 'compass-os-.*?-{pod}-daily-.*?'
105                 - 'compass-os-.*?-baremetal-daily-.*?'
106                 - 'compass-verify-[^-]*-[^-]*'
107             block-level: 'NODE'
108
109     wrappers:
110         - build-name:
111             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
112         - fix-workspace-permissions
113
114     parameters:
115         - project-parameter:
116             project: '{project}'
117             branch: '{branch}'
118         - compass-ci-parameter:
119             installer: '{installer}'
120             gs-pathname: '{gs-pathname}'
121         - string:
122             name: DEPLOY_SCENARIO
123             default: '{scenario}'
124         - '{slave-label}-defaults'
125         - '{installer}-defaults'
126
127     triggers:
128         - '{auto-trigger-name}'
129
130     builders:
131         - description-setter:
132             description: "POD: $NODE_NAME"
133         - trigger-builds:
134             - project: 'compass-deploy-{pod}-daily-{stream}'
135               current-parameters: true
136               predefined-parameters: |
137                 DEPLOY_SCENARIO={scenario}
138                 COMPASS_OS_VERSION={os-version}
139                 COMPASS_OPENSTACK_VERSION={openstack-version}
140               same-node: true
141               block: true
142         - trigger-builds:
143             - project: 'functest-compass-{pod}-daily-{stream}'
144               current-parameters: false
145               predefined-parameters:
146                 DEPLOY_SCENARIO={scenario}
147               same-node: true
148               block: true
149               block-thresholds:
150                 build-step-failure-threshold: 'never'
151                 failure-threshold: 'never'
152                 unstable-threshold: 'FAILURE'
153         - trigger-builds:
154             - project: 'yardstick-compass-{pod}-daily-{stream}'
155               current-parameters: false
156               predefined-parameters:
157                 DEPLOY_SCENARIO={scenario}
158               block: true
159               same-node: true
160               block-thresholds:
161                 build-step-failure-threshold: 'never'
162                 failure-threshold: 'never'
163                 unstable-threshold: 'FAILURE'
164         # dovetail only master by now, not sync with A/B/C branches
165         # here the stream means the SUT stream, dovetail stream is defined in its own job
166         # only run on os-(nosdn|odl_l2)-(nofeature|bgpvpn)-ha scenario
167         - conditional-step:
168             condition-kind: regex-match
169             regex: os-(nosdn|odl_l2)-(nofeature|bgpvpn)-ha
170             label: '{scenario}'
171             steps:
172                 - trigger-builds:
173                     - project: 'dovetail-compass-{pod}-proposed_tests-{stream}'
174                       current-parameters: false
175                       predefined-parameters:
176                         DEPLOY_SCENARIO={scenario}
177                       block: true
178                       same-node: true
179                       block-thresholds:
180                         build-step-failure-threshold: 'never'
181                         failure-threshold: 'never'
182                         unstable-threshold: 'FAILURE'
183
184 - job-template:
185     name: 'compass-deploy-{pod}-daily-{stream}'
186
187     disabled: false
188
189     concurrent: true
190
191     properties:
192         - logrotate-default
193         - throttle:
194             enabled: true
195             max-per-node: 1
196             option: 'project'
197         - build-blocker:
198             use-build-blocker: true
199             blocking-jobs:
200                 - 'compass-deploy-{pod}-daily-.*?'
201                 - 'compass-verify-deploy-.*?'
202             block-level: 'NODE'
203
204     wrappers:
205         - build-name:
206             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
207         - timeout:
208             timeout: 150
209             abort: true
210         - fix-workspace-permissions
211
212     parameters:
213         - project-parameter:
214             project: '{project}'
215             branch: '{branch}'
216         - compass-ci-parameter:
217             installer: '{installer}'
218             gs-pathname: '{gs-pathname}'
219         - '{slave-label}-defaults'
220         - '{installer}-defaults'
221
222     scm:
223         - git-scm
224
225     builders:
226         - description-setter:
227             description: "POD: $NODE_NAME"
228         - shell:
229             !include-raw-escape: ./compass-download-artifact.sh
230         - shell:
231             !include-raw-escape: ./compass-deploy.sh
232
233 ########################
234 # parameter macros
235 ########################
236 - parameter:
237     name: compass-ci-parameter
238     parameters:
239         - string:
240             name: BUILD_DIRECTORY
241             default: $WORKSPACE/build_output
242             description: "Directory where the build artifact will be located upon the completion of the build."
243         - string:
244             name: GS_URL
245             default: '$GS_BASE{gs-pathname}'
246             description: "URL to Google Storage."
247
248 ########################
249 # trigger macros
250 ########################
251 - trigger:
252     name: 'compass-os-nosdn-nofeature-ha-baremetal-centos-master-trigger'
253     triggers:
254         - timed: '0 19 * * *'
255 - trigger:
256     name: 'compass-os-nosdn-openo-ha-baremetal-centos-master-trigger'
257     triggers:
258         - timed: ''
259 - trigger:
260     name: 'compass-os-odl_l2-nofeature-ha-baremetal-centos-master-trigger'
261     triggers:
262         - timed: '0 23 * * *'
263 - trigger:
264     name: 'compass-os-odl_l3-nofeature-ha-baremetal-centos-master-trigger'
265     triggers:
266         - timed: '0 15 * * *'
267 - trigger:
268     name: 'compass-os-onos-nofeature-ha-baremetal-centos-master-trigger'
269     triggers:
270         - timed: '0 7 * * *'
271 - trigger:
272     name: 'compass-os-ocl-nofeature-ha-baremetal-centos-master-trigger'
273     triggers:
274         - timed: '0 11 * * *'
275 - trigger:
276     name: 'compass-os-onos-sfc-ha-baremetal-centos-master-trigger'
277     triggers:
278         - timed: '0 3 * * *'
279 - trigger:
280     name: 'compass-os-odl_l2-moon-ha-baremetal-centos-master-trigger'
281     triggers:
282         - timed: ''
283 - trigger:
284     name: 'compass-os-nosdn-kvm-ha-baremetal-centos-master-trigger'
285     triggers:
286         - timed: ''
287
288 - trigger:
289     name: 'compass-os-nosdn-nofeature-ha-baremetal-master-trigger'
290     triggers:
291         - timed: '0 2 * * *'
292 - trigger:
293     name: 'compass-os-nosdn-openo-ha-baremetal-master-trigger'
294     triggers:
295         - timed: '0 3 * * *'
296 - trigger:
297     name: 'compass-os-odl_l2-nofeature-ha-baremetal-master-trigger'
298     triggers:
299         - timed: '0 22 * * *'
300 - trigger:
301     name: 'compass-os-odl_l3-nofeature-ha-baremetal-master-trigger'
302     triggers:
303         - timed: '0 18 * * *'
304 - trigger:
305     name: 'compass-os-onos-nofeature-ha-baremetal-master-trigger'
306     triggers:
307         - timed: '0 14 * * *'
308 - trigger:
309     name: 'compass-os-ocl-nofeature-ha-baremetal-master-trigger'
310     triggers:
311         - timed: '0 10 * * *'
312 - trigger:
313     name: 'compass-os-onos-sfc-ha-baremetal-master-trigger'
314     triggers:
315         - timed: '0 6 * * *'
316 - trigger:
317     name: 'compass-os-odl_l2-moon-ha-baremetal-master-trigger'
318     triggers:
319         - timed: ''
320 - trigger:
321     name: 'compass-os-nosdn-kvm-ha-baremetal-master-trigger'
322     triggers:
323         - timed: ''
324
325 - trigger:
326     name: 'compass-os-nosdn-nofeature-ha-baremetal-danube-trigger'
327     triggers:
328         - timed: '0 9 * * *'
329 - trigger:
330     name: 'compass-os-nosdn-openo-ha-baremetal-danube-trigger'
331     triggers:
332         - timed: '0 13 * * *'
333 - trigger:
334     name: 'compass-os-odl_l2-nofeature-ha-baremetal-danube-trigger'
335     triggers:
336         - timed: '0 17 * * *'
337 - trigger:
338     name: 'compass-os-odl_l3-nofeature-ha-baremetal-danube-trigger'
339     triggers:
340         - timed: '0 21 * * *'
341 - trigger:
342     name: 'compass-os-onos-nofeature-ha-baremetal-danube-trigger'
343     triggers:
344         - timed: '0 1 * * *'
345 - trigger:
346     name: 'compass-os-ocl-nofeature-ha-baremetal-danube-trigger'
347     triggers:
348         - timed: '0 5 * * *'
349 - trigger:
350     name: 'compass-os-onos-sfc-ha-baremetal-danube-trigger'
351     triggers:
352         - timed: ''
353 - trigger:
354     name: 'compass-os-odl_l2-moon-ha-baremetal-danube-trigger'
355     triggers:
356         - timed: ''
357 - trigger:
358     name: 'compass-os-nosdn-kvm-ha-baremetal-danube-trigger'
359     triggers:
360         - timed: ''
361
362 - trigger:
363     name: 'compass-os-nosdn-nofeature-ha-virtual-master-trigger'
364     triggers:
365         - timed: '0 21 * * *'
366 - trigger:
367     name: 'compass-os-nosdn-openo-ha-virtual-master-trigger'
368     triggers:
369         - timed: '0 22 * * *'
370 - trigger:
371     name: 'compass-os-odl_l2-nofeature-ha-virtual-master-trigger'
372     triggers:
373         - timed: '0 20 * * *'
374 - trigger:
375     name: 'compass-os-odl_l3-nofeature-ha-virtual-master-trigger'
376     triggers:
377         - timed: '0 19 * * *'
378 - trigger:
379     name: 'compass-os-onos-nofeature-ha-virtual-master-trigger'
380     triggers:
381         - timed: '0 18 * * *'
382 - trigger:
383     name: 'compass-os-ocl-nofeature-ha-virtual-master-trigger'
384     triggers:
385         - timed: '0 16 * * *'
386 - trigger:
387     name: 'compass-os-onos-sfc-ha-virtual-master-trigger'
388     triggers:
389         - timed: '0 15 * * *'
390 - trigger:
391     name: 'compass-os-odl_l2-moon-ha-virtual-master-trigger'
392     triggers:
393         - timed: '0 14 * * *'
394 - trigger:
395     name: 'compass-os-nosdn-kvm-ha-virtual-master-trigger'
396     triggers:
397         - timed: ''
398
399 - trigger:
400     name: 'compass-os-nosdn-nofeature-ha-virtual-danube-trigger'
401     triggers:
402         - timed: '0 21 * * *'
403 - trigger:
404     name: 'compass-os-nosdn-openo-ha-virtual-danube-trigger'
405     triggers:
406         - timed: '0 22 * * *'
407 - trigger:
408     name: 'compass-os-odl_l2-nofeature-ha-virtual-danube-trigger'
409     triggers:
410         - timed: '0 20 * * *'
411 - trigger:
412     name: 'compass-os-odl_l3-nofeature-ha-virtual-danube-trigger'
413     triggers:
414         - timed: '0 19 * * *'
415 - trigger:
416     name: 'compass-os-onos-nofeature-ha-virtual-danube-trigger'
417     triggers:
418         - timed: '0 18 * * *'
419 - trigger:
420     name: 'compass-os-ocl-nofeature-ha-virtual-danube-trigger'
421     triggers:
422         - timed: ''
423 - trigger:
424     name: 'compass-os-onos-sfc-ha-virtual-danube-trigger'
425     triggers:
426         - timed: '0 15 * * *'
427 - trigger:
428     name: 'compass-os-odl_l2-moon-ha-virtual-danube-trigger'
429     triggers:
430         - timed: '0 14 * * *'
431 - trigger:
432     name: 'compass-os-nosdn-kvm-ha-virtual-danube-trigger'
433     triggers:
434         - timed: ''