9d80e42ae0365fd1a7115ede5d44b4b2d9932df8
[releng.git] / jjb / yardstick / yardstick-ci-jobs.yml
1 ###################################
2 # job configuration for yardstick
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     colorado: &colorado
18         stream: colorado
19         branch: 'stable/{stream}'
20         gs-pathname: '{stream}'
21         docker-tag: 'stable'
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             <<: *colorado
47         - virtual:
48             slave-label: fuel-virtual
49             installer: fuel
50             auto-trigger-name: 'daily-trigger-disabled'
51             <<: *colorado
52 # armband CI PODs
53         - armband-baremetal:
54             slave-label: armband-baremetal
55             installer: fuel
56             auto-trigger-name: 'daily-trigger-disabled'
57             <<: *master
58         - armband-virtual:
59             slave-label: armband-virtual
60             installer: fuel
61             auto-trigger-name: 'daily-trigger-disabled'
62             <<: *master
63         - armband-baremetal:
64             slave-label: armband-baremetal
65             installer: fuel
66             auto-trigger-name: 'daily-trigger-disabled'
67             <<: *colorado
68         - armband-virtual:
69             slave-label: armband-virtual
70             installer: fuel
71             auto-trigger-name: 'daily-trigger-disabled'
72             <<: *colorado
73 # joid CI PODs
74         - baremetal:
75             slave-label: joid-baremetal
76             installer: joid
77             auto-trigger-name: 'daily-trigger-disabled'
78             <<: *master
79         - virtual:
80             slave-label: joid-virtual
81             installer: joid
82             auto-trigger-name: 'daily-trigger-disabled'
83             <<: *master
84         - baremetal:
85             slave-label: joid-baremetal
86             installer: joid
87             auto-trigger-name: 'daily-trigger-disabled'
88             <<: *colorado
89         - virtual:
90             slave-label: joid-virtual
91             installer: joid
92             auto-trigger-name: 'daily-trigger-disabled'
93             <<: *colorado
94
95 # compass CI PODs
96         - baremetal:
97             slave-label: compass-baremetal
98             installer: compass
99             auto-trigger-name: 'daily-trigger-disabled'
100             <<: *master
101         - virtual:
102             slave-label: compass-virtual
103             installer: compass
104             auto-trigger-name: 'daily-trigger-disabled'
105             <<: *master
106         - baremetal:
107             slave-label: compass-baremetal
108             installer: compass
109             auto-trigger-name: 'daily-trigger-disabled'
110             <<: *colorado
111         - virtual:
112             slave-label: compass-virtual
113             installer: compass
114             auto-trigger-name: 'daily-trigger-disabled'
115             <<: *colorado
116 #--------------------------------
117 #    Installers not using labels
118 #            CI PODs
119 # This section should only contain the installers
120 # that have not been switched using labels for slaves
121 #--------------------------------
122         - lf-pod1:
123             slave-label: '{pod}'
124             installer: apex
125             auto-trigger-name: 'daily-trigger-disabled'
126             <<: *master
127         - lf-pod1:
128             slave-label: '{pod}'
129             installer: apex
130             auto-trigger-name: 'daily-trigger-disabled'
131             <<: *colorado
132 #--------------------------------
133 #        None-CI PODs
134 #--------------------------------
135         - orange-pod1:
136             slave-label: '{pod}'
137             installer: joid
138             auto-trigger-name: 'daily-trigger-disabled'
139             <<: *master
140         - zte-pod1:
141             slave-label: '{pod}'
142             installer: fuel
143             auto-trigger-name: 'daily-trigger-disabled'
144             <<: *master
145         - zte-pod1:
146             slave-label: '{pod}'
147             installer: fuel
148             auto-trigger-name: 'daily-trigger-disabled'
149             <<: *colorado
150         - zte-pod2:
151             slave-label: '{pod}'
152             installer: fuel
153             auto-trigger-name: 'daily-trigger-disabled'
154             <<: *master
155         - zte-pod3:
156             slave-label: '{pod}'
157             installer: fuel
158             auto-trigger-name: 'daily-trigger-disabled'
159             <<: *master
160         - zte-pod3:
161             slave-label: '{pod}'
162             installer: fuel
163             auto-trigger-name: 'daily-trigger-disabled'
164             <<: *colorado
165         - arm-pod2:
166             slave-label: '{pod}'
167             installer: fuel
168             auto-trigger-name: 'daily-trigger-disabled'
169             <<: *master
170         - arm-pod2:
171             slave-label: '{pod}'
172             installer: fuel
173             auto-trigger-name: 'daily-trigger-disabled'
174             <<: *colorado
175         - arm-pod3:
176             slave-label: '{pod}'
177             installer: fuel
178             auto-trigger-name: 'daily-trigger-disabled'
179             <<: *master
180         - arm-pod3:
181             slave-label: '{pod}'
182             installer: fuel
183             auto-trigger-name: 'daily-trigger-disabled'
184             <<: *colorado
185         - orange-pod2:
186             slave-label: '{pod}'
187             installer: joid
188             auto-trigger-name: 'daily-trigger-disabled'
189             <<: *master
190         - huawei-pod3:
191             slave-label: '{pod}'
192             installer: compass
193             auto-trigger-name: 'yardstick-daily-huawei-pod3-trigger'
194             <<: *master
195         - huawei-pod4:
196             slave-label: '{pod}'
197             installer: compass
198             auto-trigger-name: 'yardstick-daily-huawei-pod4-trigger'
199             <<: *master
200         - huawei-pod5:
201             slave-label: '{pod}'
202             installer: compass
203             auto-trigger-name: 'daily-trigger-disabled'
204             <<: *master
205 #--------------------------------
206     testsuite:
207         - 'daily'
208
209     jobs:
210         - 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
211
212 ################################
213 # job templates
214 ################################
215 - job-template:
216     name: 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
217
218     disabled: false
219
220     concurrent: true
221
222     properties:
223         - throttle:
224             enabled: true
225             max-per-node: 1
226             option: 'project'
227
228     wrappers:
229         - build-name:
230             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
231         - timeout:
232             timeout: 180
233             abort: true
234
235     triggers:
236         - '{auto-trigger-name}'
237
238     parameters:
239         - project-parameter:
240             project: '{project}'
241         - '{installer}-defaults'
242         - '{slave-label}-defaults'
243         - 'yardstick-params-{slave-label}'
244         - string:
245             name: DEPLOY_SCENARIO
246             default: 'os-odl_l2-nofeature-ha'
247         - string:
248             name: DOCKER_TAG
249             default: '{docker-tag}'
250             description: 'Tag to pull docker image'
251         - string:
252             name: YARDSTICK_SCENARIO_SUITE_NAME
253             default: opnfv_${{DEPLOY_SCENARIO}}_{testsuite}.yaml
254             description: 'Path to test scenario suite'
255         - string:
256             name: CI_DEBUG
257             default: 'false'
258             description: "Show debut output information"
259
260     scm:
261         - git-scm:
262             credentials-id: '{ssh-credentials}'
263             refspec: ''
264             branch: '{branch}'
265
266     builders:
267         - description-setter:
268             description: "POD: $NODE_NAME"
269         - 'yardstick-cleanup'
270         #- 'yardstick-fetch-os-creds'
271         - 'yardstick-{testsuite}'
272
273     publishers:
274         - email:
275             recipients: jean.gaoliang@huawei.com matthew.lijun@huawei.com
276
277 ########################
278 # builder macros
279 ########################
280 - builder:
281     name: yardstick-daily
282     builders:
283         - shell:
284             !include-raw: ./yardstick-daily.sh
285
286 - builder:
287     name: yardstick-vtcdaily
288     builders:
289         - shell:
290             !include-raw: ./yardstick-vtcdaily.sh
291
292 - builder:
293     name: yardstick-fetch-os-creds
294     builders:
295         - shell:
296             !include-raw: ../../utils/fetch_os_creds.sh
297
298 - builder:
299     name: yardstick-cleanup
300     builders:
301         - shell:
302             !include-raw: ./yardstick-cleanup.sh
303 ########################
304 # parameter macros
305 ########################
306 - parameter:
307     name: 'yardstick-params-fuel-baremetal'
308     parameters:
309         - string:
310             name: YARDSTICK_DB_BACKEND
311             default: '-i 104.197.68.199:8086'
312             description: 'Arguments to use in order to choose the backend DB'
313 - parameter:
314     name: 'yardstick-params-fuel-virtual'
315     parameters:
316         - string:
317             name: YARDSTICK_DB_BACKEND
318             default: '-i 104.197.68.199:8086'
319             description: 'Arguments to use in order to choose the backend DB'
320 - parameter:
321     name: 'yardstick-params-armband-baremetal'
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 - parameter:
328     name: 'yardstick-params-armband-virtual'
329     parameters:
330         - string:
331             name: YARDSTICK_DB_BACKEND
332             default: '-i 104.197.68.199:8086'
333             description: 'Arguments to use in order to choose the backend DB'
334 - parameter:
335     name: 'yardstick-params-joid-baremetal'
336     parameters:
337         - string:
338             name: YARDSTICK_DB_BACKEND
339             default: '-i 104.197.68.199:8086'
340             description: 'Arguments to use in order to choose the backend DB'
341 - parameter:
342     name: 'yardstick-params-joid-virtual'
343     parameters:
344         - string:
345             name: YARDSTICK_DB_BACKEND
346             default: '-i 104.197.68.199:8086'
347             description: 'Arguments to use in order to choose the backend DB'
348 - parameter:
349     name: 'yardstick-params-intel-pod8'
350     parameters:
351         - string:
352             name: YARDSTICK_DB_BACKEND
353             default: '-i 104.197.68.199:8086'
354             description: 'Arguments to use in order to choose the backend DB'
355 - parameter:
356     name: 'yardstick-params-lf-pod1'
357     parameters:
358         - string:
359             name: YARDSTICK_DB_BACKEND
360             default: '-i 104.197.68.199:8086'
361             description: 'Arguments to use in order to choose the backend DB'
362
363 - parameter:
364     name: 'yardstick-params-lf-pod2'
365     parameters:
366         - string:
367             name: YARDSTICK_DB_BACKEND
368             default: '-i 104.197.68.199:8086'
369             description: 'Arguments to use in order to choose the backend DB'
370
371 - parameter:
372     name: 'yardstick-params-compass-baremetal'
373     parameters:
374         - string:
375             name: YARDSTICK_DB_BACKEND
376             default: '-i 104.197.68.199:8086'
377             description: 'Arguments to use in order to choose the backend DB'
378
379 - parameter:
380     name: 'yardstick-params-huawei-pod5'
381     parameters:
382         - string:
383             name: YARDSTICK_DB_BACKEND
384             default: '-i 104.197.68.199:8086'
385             description: 'Arguments to use in order to choose the backend DB'
386
387 - parameter:
388     name: 'yardstick-params-zte-pod1'
389     parameters:
390         - string:
391             name: YARDSTICK_DB_BACKEND
392             default: '-i 104.197.68.199:8086'
393             description: 'Arguments to use in order to choose the backend DB'
394
395 - parameter:
396     name: 'yardstick-params-zte-pod2'
397     parameters:
398         - string:
399             name: YARDSTICK_DB_BACKEND
400             default: '-i 104.197.68.199:8086'
401             description: 'Arguments to use in order to choose the backend DB'
402
403 - parameter:
404     name: 'yardstick-params-zte-pod3'
405     parameters:
406         - string:
407             name: YARDSTICK_DB_BACKEND
408             default: '-i 104.197.68.199:8086'
409             description: 'Arguments to use in order to choose the backend DB'
410
411 - parameter:
412     name: 'yardstick-params-orange-pod1'
413     parameters:
414         - string:
415             name: YARDSTICK_DB_BACKEND
416             default: '-i 104.197.68.199:8086'
417             description: 'Arguments to use in order to choose the backend DB'
418
419 - parameter:
420     name: 'yardstick-params-orange-pod2'
421     parameters:
422         - string:
423             name: YARDSTICK_DB_BACKEND
424             default: '-i 104.197.68.199:8086'
425             description: 'Arguments to use in order to choose the backend DB'
426
427 - parameter:
428     name: 'yardstick-params-arm-pod2'
429     parameters:
430         - string:
431             name: YARDSTICK_DB_BACKEND
432             default: '-i 104.197.68.199:8086'
433             description: 'Arguments to use in order to choose the backend DB'
434
435 - parameter:
436     name: 'yardstick-params-arm-pod3'
437     parameters:
438         - string:
439             name: YARDSTICK_DB_BACKEND
440             default: '-i 104.197.68.199:8086'
441             description: 'Arguments to use in order to choose the backend DB'
442
443 - parameter:
444     name: 'yardstick-params-virtual'
445     parameters:
446         - string:
447             name: YARDSTICK_DB_BACKEND
448             default: '-i 104.197.68.199:8086'
449             description: 'Arguments to use in order to choose the backend DB'
450
451 - parameter:
452     name: 'yardstick-params-compass-virtual'
453     parameters:
454         - string:
455             name: YARDSTICK_DB_BACKEND
456             default: '-i 104.197.68.199:8086'
457             description: 'Arguments to use in order to choose the backend DB'
458
459 - parameter:
460     name: 'yardstick-params-huawei-pod3'
461     parameters:
462         - string:
463             name: YARDSTICK_DB_BACKEND
464             default: '-i 104.197.68.199:8086'
465             description: 'Arguments to use in order to choose the backend DB'
466
467 - parameter:
468     name: 'yardstick-params-huawei-pod4'
469     parameters:
470         - string:
471             name: YARDSTICK_DB_BACKEND
472             default: '-i 104.197.68.199:8086'
473             description: 'Arguments to use in order to choose the backend DB'
474
475 #######################
476 ## trigger macros
477 #######################
478 # trigger for PODs to only run yardstick test suites
479 - trigger:
480     name: 'yardstick-daily-huawei-pod3-trigger'
481     triggers:
482         - timed: '0 1 * * *'
483
484 - trigger:
485     name: 'yardstick-daily-huawei-pod4-trigger'
486     triggers:
487         - timed: '0 1 * * *'