041eabd03d77ce3ab58f23814d199f9cefaf5ea5
[releng.git] / jjb / yardstick / yardstick-ci-jobs.yml
1 ###################################
2 # job configuration for functest
3 ###################################
4 - project:
5     name: yardstick
6
7     project: '{name}'
8
9 #--------------------------------
10 # BRANCH ANCHORS
11 #--------------------------------
12     master: &master
13         stream: master
14         branch: '{stream}'
15         gs-pathname: ''
16         docker-tag: 'latest'
17     brahmaputra: &brahmaputra
18         stream: brahmaputra
19         branch: 'stable/{stream}'
20         gs-pathname: '{stream}'
21         docker-tag: 'brahmaputra.1.0'
22 #--------------------------------
23 # POD, INSTALLER, AND BRANCH MAPPING
24 #--------------------------------
25 #    Installers using labels
26 #            CI PODs
27 # This section should only contain the installers
28 # that have been switched using labels for slaves
29 #--------------------------------
30     pod:
31 # fuel CI PODs
32         - baremetal:
33             slave-label: fuel-baremetal
34             installer: fuel
35             auto-trigger-name: 'daily-trigger-disabled'
36             <<: *master
37         - virtual:
38             slave-label: fuel-virtual
39             installer: fuel
40             auto-trigger-name: 'daily-trigger-disabled'
41             <<: *master
42         - baremetal:
43             slave-label: fuel-baremetal
44             installer: fuel
45             auto-trigger-name: 'daily-trigger-disabled'
46             <<: *brahmaputra
47         - virtual:
48             slave-label: fuel-virtual
49             installer: fuel
50             auto-trigger-name: 'daily-trigger-disabled'
51             <<: *brahmaputra
52 # joid CI PODs
53         - baremetal:
54             slave-label: joid-baremetal
55             installer: joid
56             auto-trigger-name: 'daily-trigger-disabled'
57             <<: *master
58         - virtual:
59             slave-label: joid-virtual
60             installer: joid
61             auto-trigger-name: 'daily-trigger-disabled'
62             <<: *master
63         - baremetal:
64             slave-label: joid-baremetal
65             installer: joid
66             auto-trigger-name: 'daily-trigger-disabled'
67             <<: *brahmaputra
68         - virtual:
69             slave-label: joid-virtual
70             installer: joid
71             auto-trigger-name: 'daily-trigger-disabled'
72             <<: *brahmaputra
73
74 # compass CI PODs
75         - baremetal:
76             slave-label: compass-baremetal
77             installer: compass
78             auto-trigger-name: 'daily-trigger-disabled'
79             <<: *master
80         - virtual:
81             slave-label: compass-virtual
82             installer: compass
83             auto-trigger-name: 'daily-trigger-disabled'
84             <<: *master
85         - baremetal:
86             slave-label: compass-baremetal
87             installer: compass
88             auto-trigger-name: 'daily-trigger-disabled'
89             <<: *brahmaputra
90         - virtual:
91             slave-label: compass-virtual
92             installer: compass
93             auto-trigger-name: 'daily-trigger-disabled'
94             <<: *brahmaputra
95 #--------------------------------
96 #    Installers not using labels
97 #            CI PODs
98 # This section should only contain the installers
99 # that have not been switched using labels for slaves
100 #--------------------------------
101         - lf-pod1:
102             slave-label: '{pod}'
103             installer: apex
104             auto-trigger-name: 'daily-trigger-disabled'
105             <<: *master
106         - lf-pod1:
107             slave-label: '{pod}'
108             installer: apex
109             auto-trigger-name: 'daily-trigger-disabled'
110             <<: *brahmaputra
111 #--------------------------------
112 #        None-CI PODs
113 #--------------------------------
114         - orange-pod2:
115             slave-label: '{pod}'
116             installer: joid
117             auto-trigger-name: 'daily-trigger-disabled'
118             <<: *brahmaputra
119         - zte-pod1:
120             slave-label: '{pod}'
121             installer: fuel
122             auto-trigger-name: 'daily-trigger-disabled'
123             <<: *master
124         - orange-pod2:
125             slave-label: '{pod}'
126             installer: joid
127             auto-trigger-name: 'daily-trigger-disabled'
128             <<: *master
129         - huawei-pod2:
130             slave-label: '{pod}'
131             installer: compass
132             auto-trigger-name: 'daily-trigger-disabled'
133             <<: *master
134         - huawei-pod3:
135             slave-label: '{pod}'
136             installer: compass
137             auto-trigger-name: 'yardstick-daily-huawei-pod3-trigger'
138             <<: *master
139         - huawei-pod4:
140             slave-label: '{pod}'
141             installer: compass
142             auto-trigger-name: 'yardstick-daily-huawei-pod4-trigger'
143             <<: *master
144 #--------------------------------
145     testsuite:
146         - 'daily'
147
148     jobs:
149         - 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
150
151 ################################
152 # job templates
153 ################################
154 - job-template:
155     name: 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
156
157     disabled: false
158
159     concurrent: true
160
161     properties:
162         - throttle:
163             enabled: true
164             max-per-node: 1
165             option: 'project'
166
167     wrappers:
168         - build-name:
169             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
170         - timeout:
171             timeout: 180
172             abort: true
173
174     triggers:
175         - '{auto-trigger-name}'
176
177     parameters:
178         - project-parameter:
179             project: '{project}'
180         - '{slave-label}-defaults'
181         - '{installer}-defaults'
182         - 'yardstick-params-{slave-label}'
183         - string:
184             name: DEPLOY_SCENARIO
185             default: 'os-odl_l2-nofeature-ha'
186         - string:
187             name: DOCKER_TAG
188             default: '{docker-tag}'
189             description: 'Tag to pull docker image'
190         - string:
191             name: YARDSTICK_SCENARIO_SUITE_NAME
192             default: opnfv_${{DEPLOY_SCENARIO}}_{testsuite}.yaml
193             description: 'Path to test scenario suite'
194         - string:
195             name: CI_DEBUG
196             default: 'false'
197             description: "Show debut output information"
198
199     scm:
200         - git-scm:
201             credentials-id: '{ssh-credentials}'
202             refspec: ''
203             branch: '{branch}'
204
205     builders:
206         - description-setter:
207             description: "POD: $NODE_NAME"
208         - 'yardstick-cleanup'
209         #- 'yardstick-fetch-os-creds'
210         - 'yardstick-{testsuite}'
211
212     publishers:
213         - email:
214             recipients: jean.gaoliang@huawei.com matthew.lijun@huawei.com
215
216 ########################
217 # builder macros
218 ########################
219 - builder:
220     name: yardstick-daily
221     builders:
222         - shell:
223             !include-raw: ./yardstick-daily.sh
224
225 - builder:
226     name: yardstick-vtcdaily
227     builders:
228         - shell:
229             !include-raw: ./yardstick-vtcdaily.sh
230
231 - builder:
232     name: yardstick-fetch-os-creds
233     builders:
234         - shell:
235             !include-raw: ../../utils/fetch_os_creds.sh
236
237 - builder:
238     name: yardstick-cleanup
239     builders:
240         - shell:
241             !include-raw: ./yardstick-cleanup.sh
242 ########################
243 # parameter macros
244 ########################
245 - parameter:
246     name: 'yardstick-params-fuel-baremetal'
247     parameters:
248         - string:
249             name: YARDSTICK_DB_BACKEND
250             default: '-i 104.197.68.199:8086'
251             description: 'Arguments to use in order to choose the backend DB'
252 - parameter:
253     name: 'yardstick-params-fuel-virtual'
254     parameters:
255         - string:
256             name: YARDSTICK_DB_BACKEND
257             default: ''
258             description: 'Arguments to use in order to choose the backend DB'
259 - parameter:
260     name: 'yardstick-params-joid-baremetal'
261     parameters:
262         - string:
263             name: YARDSTICK_DB_BACKEND
264             default: '-i 104.197.68.199:8086'
265             description: 'Arguments to use in order to choose the backend DB'
266 - parameter:
267     name: 'yardstick-params-joid-virtual'
268     parameters:
269         - string:
270             name: YARDSTICK_DB_BACKEND
271             default: ''
272             description: 'Arguments to use in order to choose the backend DB'
273 - parameter:
274     name: 'yardstick-params-intel-pod8'
275     parameters:
276         - string:
277             name: YARDSTICK_DB_BACKEND
278             default: ''
279             description: 'Arguments to use in order to choose the backend DB'
280 - parameter:
281     name: 'yardstick-params-lf-pod1'
282     parameters:
283         - string:
284             name: YARDSTICK_DB_BACKEND
285             default: '-i 104.197.68.199:8086'
286             description: 'Arguments to use in order to choose the backend DB'
287
288 - parameter:
289     name: 'yardstick-params-lf-pod2'
290     parameters:
291         - string:
292             name: YARDSTICK_DB_BACKEND
293             default: '-i 104.197.68.199:8086'
294             description: 'Arguments to use in order to choose the backend DB'
295
296 - parameter:
297     name: 'yardstick-params-compass-baremetal'
298     parameters:
299         - string:
300             name: YARDSTICK_DB_BACKEND
301             default: '-i 104.197.68.199:8086'
302             description: 'Arguments to use in order to choose the backend DB'
303
304 - parameter:
305     name: 'yardstick-params-huawei-pod2'
306     parameters:
307         - string:
308             name: YARDSTICK_DB_BACKEND
309             default: '-i 104.197.68.199:8086'
310             description: 'Arguments to use in order to choose the backend DB'
311
312 - parameter:
313     name: 'yardstick-params-zte-pod1'
314     parameters:
315         - string:
316             name: YARDSTICK_DB_BACKEND
317             default: '-i 104.197.68.199:8086'
318             description: 'Arguments to use in order to choose the backend DB'
319
320 - parameter:
321     name: 'yardstick-params-zte-pod3'
322     parameters:
323         - string:
324             name: YARDSTICK_DB_BACKEND
325             default: '-i 104.197.68.199:8086'
326             description: 'Arguments to use in order to choose the backend DB'
327
328 - parameter:
329     name: 'yardstick-params-orange-pod2'
330     parameters:
331         - string:
332             name: YARDSTICK_DB_BACKEND
333             default: '-i 104.197.68.199:8086'
334             description: 'Arguments to use in order to choose the backend DB'
335
336 - parameter:
337     name: 'yardstick-params-virtual'
338     parameters:
339         - string:
340             name: YARDSTICK_DB_BACKEND
341             default: ''
342             description: 'Arguments to use in order to choose the backend DB'
343
344 - parameter:
345     name: 'yardstick-params-compass-virtual'
346     parameters:
347         - string:
348             name: YARDSTICK_DB_BACKEND
349             default: ''
350             description: 'Arguments to use in order to choose the backend DB'
351
352 - parameter:
353     name: 'yardstick-params-huawei-pod3'
354     parameters:
355         - string:
356             name: YARDSTICK_DB_BACKEND
357             default: ''
358             description: 'Arguments to use in order to choose the backend DB'
359
360 - parameter:
361     name: 'yardstick-params-huawei-pod4'
362     parameters:
363         - string:
364             name: YARDSTICK_DB_BACKEND
365             default: ''
366             description: 'Arguments to use in order to choose the backend DB'
367
368 #######################
369 ## trigger macros
370 #######################
371 # trigger for PODs to only run yardstick test suites
372 - trigger:
373     name: 'yardstick-daily-huawei-pod3-trigger'
374     triggers:
375         - timed: '0 1 * * *'
376
377 - trigger:
378     name: 'yardstick-daily-huawei-pod4-trigger'
379     triggers:
380         - timed: '0 1 * * *'