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