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