Merge "remove scenarios"
[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|onos|odl_l3)-nofeature-ha scenario
167         # run against SUT master branch, dovetail docker image with latest tag
168         # run against SUT danube branch, dovetail docker image with latest tag(odd days)and cvp.X.X.X tag(even days)
169         - conditional-step:
170             condition-kind: and
171             condition-operands:
172                 - condition-kind: regex-match
173                   regex: danube
174                   label: '{stream}'
175                 - condition-kind: regex-match
176                   regex: os-(nosdn|odl_l2|onos|odl_l3)-nofeature-ha
177                   label: '{scenario}'
178                 - condition-kind: day-of-week
179                   day-selector: select-days
180                   days:
181                       MON: true
182                       WED: true
183                       FRI: true
184                       SUN: true
185                   use-build-time: true
186             steps:
187                 - trigger-builds:
188                     - project: 'dovetail-compass-{pod}-proposed_tests-master'
189                       current-parameters: false
190                       predefined-parameters:
191                         DEPLOY_SCENARIO={scenario}
192                       block: true
193                       same-node: true
194                       block-thresholds:
195                         build-step-failure-threshold: 'never'
196                         failure-threshold: 'never'
197                         unstable-threshold: 'FAILURE'
198         - conditional-step:
199             condition-kind: and
200             condition-operands:
201                 - condition-kind: regex-match
202                   regex: danube
203                   label: '{stream}'
204                 - condition-kind: regex-match
205                   regex: os-(nosdn|odl_l2|onos|odl_l3)-nofeature-ha
206                   label: '{scenario}'
207                 - condition-kind: day-of-week
208                   day-selector: select-days
209                   days:
210                       TUES: true
211                       THURS: true
212                       SAT: true
213                   use-build-time: true
214             steps:
215                 - trigger-builds:
216                     - project: 'dovetail-compass-{pod}-proposed_tests-danube'
217                       current-parameters: false
218                       predefined-parameters:
219                         DEPLOY_SCENARIO={scenario}
220                       block: true
221                       same-node: true
222                       block-thresholds:
223                         build-step-failure-threshold: 'never'
224                         failure-threshold: 'never'
225                         unstable-threshold: 'FAILURE'
226         - conditional-step:
227             condition-kind: and
228             condition-operands:
229                 - condition-kind: regex-match
230                   regex: os-(nosdn|odl_l2|onos|odl_l3)-nofeature-ha
231                   label: '{scenario}'
232                 - condition-kind: regex-match
233                   regex: master
234                   label: '{stream}'
235             steps:
236                 - trigger-builds:
237                     - project: 'dovetail-compass-{pod}-proposed_tests-master'
238
239 - job-template:
240     name: 'compass-deploy-{pod}-daily-{stream}'
241
242     disabled: false
243
244     concurrent: true
245
246     properties:
247         - logrotate-default
248         - throttle:
249             enabled: true
250             max-per-node: 1
251             option: 'project'
252         - build-blocker:
253             use-build-blocker: true
254             blocking-jobs:
255                 - 'compass-deploy-{pod}-daily-.*?'
256                 - 'compass-verify-deploy-.*?'
257             block-level: 'NODE'
258
259     wrappers:
260         - build-name:
261             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
262         - timeout:
263             timeout: 240
264             abort: true
265         - fix-workspace-permissions
266
267     parameters:
268         - project-parameter:
269             project: '{project}'
270             branch: '{branch}'
271         - compass-ci-parameter:
272             installer: '{installer}'
273             gs-pathname: '{gs-pathname}'
274         - '{slave-label}-defaults'
275         - '{installer}-defaults'
276
277     scm:
278         - git-scm
279
280     builders:
281         - description-setter:
282             description: "POD: $NODE_NAME"
283         - shell:
284             !include-raw-escape: ./compass-download-artifact.sh
285         - shell:
286             !include-raw-escape: ./compass-deploy.sh
287
288 ########################
289 # parameter macros
290 ########################
291 - parameter:
292     name: compass-ci-parameter
293     parameters:
294         - string:
295             name: BUILD_DIRECTORY
296             default: $WORKSPACE/build_output
297             description: "Directory where the build artifact will be located upon the completion of the build."
298         - string:
299             name: GS_URL
300             default: '$GS_BASE{gs-pathname}'
301             description: "URL to Google Storage."
302
303 ########################
304 # trigger macros
305 ########################
306 - trigger:
307     name: 'compass-os-nosdn-nofeature-ha-baremetal-centos-master-trigger'
308     triggers:
309         - timed: '0 19 * * *'
310 - trigger:
311     name: 'compass-os-nosdn-openo-ha-baremetal-centos-master-trigger'
312     triggers:
313         - timed: ''
314 - trigger:
315     name: 'compass-os-odl_l2-nofeature-ha-baremetal-centos-master-trigger'
316     triggers:
317         - timed: '0 23 * * *'
318 - trigger:
319     name: 'compass-os-odl_l3-nofeature-ha-baremetal-centos-master-trigger'
320     triggers:
321         - timed: '0 15 * * *'
322 - trigger:
323     name: 'compass-os-onos-nofeature-ha-baremetal-centos-master-trigger'
324     triggers:
325         - timed: ''
326 - trigger:
327     name: 'compass-os-ocl-nofeature-ha-baremetal-centos-master-trigger'
328     triggers:
329         - timed: ''
330 - trigger:
331     name: 'compass-os-onos-sfc-ha-baremetal-centos-master-trigger'
332     triggers:
333         - timed: ''
334 - trigger:
335     name: 'compass-os-odl_l2-moon-ha-baremetal-centos-master-trigger'
336     triggers:
337         - timed: ''
338 - trigger:
339     name: 'compass-os-nosdn-kvm-ha-baremetal-centos-master-trigger'
340     triggers:
341         - timed: ''
342
343 - trigger:
344     name: 'compass-os-nosdn-nofeature-ha-baremetal-master-trigger'
345     triggers:
346         - timed: '0 2 * * *'
347 - trigger:
348     name: 'compass-os-nosdn-openo-ha-baremetal-master-trigger'
349     triggers:
350         - timed: ''
351 - trigger:
352     name: 'compass-os-odl_l2-nofeature-ha-baremetal-master-trigger'
353     triggers:
354         - timed: '0 22 * * *'
355 - trigger:
356     name: 'compass-os-odl_l3-nofeature-ha-baremetal-master-trigger'
357     triggers:
358         - timed: '0 18 * * *'
359 - trigger:
360     name: 'compass-os-onos-nofeature-ha-baremetal-master-trigger'
361     triggers:
362         - timed: ''
363 - trigger:
364     name: 'compass-os-ocl-nofeature-ha-baremetal-master-trigger'
365     triggers:
366         - timed: ''
367 - trigger:
368     name: 'compass-os-onos-sfc-ha-baremetal-master-trigger'
369     triggers:
370         - timed: ''
371 - trigger:
372     name: 'compass-os-odl_l2-moon-ha-baremetal-master-trigger'
373     triggers:
374         - timed: ''
375 - trigger:
376     name: 'compass-os-nosdn-kvm-ha-baremetal-master-trigger'
377     triggers:
378         - timed: ''
379
380 - trigger:
381     name: 'compass-os-nosdn-nofeature-ha-baremetal-danube-trigger'
382     triggers:
383         - timed: '0 9 * * *'
384 - trigger:
385     name: 'compass-os-nosdn-openo-ha-baremetal-danube-trigger'
386     triggers:
387         - timed: '0 13 * * *'
388 - trigger:
389     name: 'compass-os-odl_l2-nofeature-ha-baremetal-danube-trigger'
390     triggers:
391         - timed: '0 17 * * *'
392 - trigger:
393     name: 'compass-os-odl_l3-nofeature-ha-baremetal-danube-trigger'
394     triggers:
395         - timed: '0 21 * * *'
396 - trigger:
397     name: 'compass-os-onos-nofeature-ha-baremetal-danube-trigger'
398     triggers:
399         - timed: '0 1 * * *'
400 - trigger:
401     name: 'compass-os-ocl-nofeature-ha-baremetal-danube-trigger'
402     triggers:
403         - timed: ''
404 - trigger:
405     name: 'compass-os-onos-sfc-ha-baremetal-danube-trigger'
406     triggers:
407         - timed: '0 5 * * *'
408 - trigger:
409     name: 'compass-os-odl_l2-moon-ha-baremetal-danube-trigger'
410     triggers:
411         - timed: ''
412 - trigger:
413     name: 'compass-os-nosdn-kvm-ha-baremetal-danube-trigger'
414     triggers:
415         - timed: ''
416
417 - trigger:
418     name: 'compass-os-nosdn-nofeature-ha-virtual-master-trigger'
419     triggers:
420         - timed: '0 21 * * *'
421 - trigger:
422     name: 'compass-os-nosdn-openo-ha-virtual-master-trigger'
423     triggers:
424         - timed: ''
425 - trigger:
426     name: 'compass-os-odl_l2-nofeature-ha-virtual-master-trigger'
427     triggers:
428         - timed: '0 20 * * *'
429 - trigger:
430     name: 'compass-os-odl_l3-nofeature-ha-virtual-master-trigger'
431     triggers:
432         - timed: '0 19 * * *'
433 - trigger:
434     name: 'compass-os-onos-nofeature-ha-virtual-master-trigger'
435     triggers:
436         - timed: ''
437 - trigger:
438     name: 'compass-os-ocl-nofeature-ha-virtual-master-trigger'
439     triggers:
440         - timed: ''
441 - trigger:
442     name: 'compass-os-onos-sfc-ha-virtual-master-trigger'
443     triggers:
444         - timed: ''
445 - trigger:
446     name: 'compass-os-odl_l2-moon-ha-virtual-master-trigger'
447     triggers:
448         - timed: ''
449 - trigger:
450     name: 'compass-os-nosdn-kvm-ha-virtual-master-trigger'
451     triggers:
452         - timed: ''
453
454 - trigger:
455     name: 'compass-os-nosdn-nofeature-ha-virtual-danube-trigger'
456     triggers:
457         - timed: '0 21 * * *'
458 - trigger:
459     name: 'compass-os-nosdn-openo-ha-virtual-danube-trigger'
460     triggers:
461         - timed: '0 22 * * *'
462 - trigger:
463     name: 'compass-os-odl_l2-nofeature-ha-virtual-danube-trigger'
464     triggers:
465         - timed: '0 20 * * *'
466 - trigger:
467     name: 'compass-os-odl_l3-nofeature-ha-virtual-danube-trigger'
468     triggers:
469         - timed: '0 19 * * *'
470 - trigger:
471     name: 'compass-os-onos-nofeature-ha-virtual-danube-trigger'
472     triggers:
473         - timed: '0 18 * * *'
474 - trigger:
475     name: 'compass-os-ocl-nofeature-ha-virtual-danube-trigger'
476     triggers:
477         - timed: ''
478 - trigger:
479     name: 'compass-os-onos-sfc-ha-virtual-danube-trigger'
480     triggers:
481         - timed: '0 15 * * *'
482 - trigger:
483     name: 'compass-os-odl_l2-moon-ha-virtual-danube-trigger'
484     triggers:
485         - timed: '0 14 * * *'
486 - trigger:
487     name: 'compass-os-nosdn-kvm-ha-virtual-danube-trigger'
488     triggers:
489         - timed: ''