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