dd88a52b6e704b62adf208e4f072f4134a70f581
[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         - orange-pod2:
171             slave-label: '{pod}'
172             installer: joid
173             auto-trigger-name: 'daily-trigger-disabled'
174             <<: *master
175         - huawei-pod2:
176             slave-label: '{pod}'
177             installer: compass
178             auto-trigger-name: 'daily-trigger-disabled'
179             <<: *master
180         - huawei-pod3:
181             slave-label: '{pod}'
182             installer: compass
183             auto-trigger-name: 'yardstick-daily-huawei-pod3-trigger'
184             <<: *master
185         - huawei-pod4:
186             slave-label: '{pod}'
187             installer: compass
188             auto-trigger-name: 'yardstick-daily-huawei-pod4-trigger'
189             <<: *master
190 #--------------------------------
191     testsuite:
192         - 'daily'
193
194     jobs:
195         - 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
196
197 ################################
198 # job templates
199 ################################
200 - job-template:
201     name: 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
202
203     disabled: false
204
205     concurrent: true
206
207     properties:
208         - throttle:
209             enabled: true
210             max-per-node: 1
211             option: 'project'
212
213     wrappers:
214         - build-name:
215             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
216         - timeout:
217             timeout: 180
218             abort: true
219
220     triggers:
221         - '{auto-trigger-name}'
222
223     parameters:
224         - project-parameter:
225             project: '{project}'
226         - '{installer}-defaults'
227         - '{slave-label}-defaults'
228         - 'yardstick-params-{slave-label}'
229         - string:
230             name: DEPLOY_SCENARIO
231             default: 'os-odl_l2-nofeature-ha'
232         - string:
233             name: DOCKER_TAG
234             default: '{docker-tag}'
235             description: 'Tag to pull docker image'
236         - string:
237             name: YARDSTICK_SCENARIO_SUITE_NAME
238             default: opnfv_${{DEPLOY_SCENARIO}}_{testsuite}.yaml
239             description: 'Path to test scenario suite'
240         - string:
241             name: CI_DEBUG
242             default: 'false'
243             description: "Show debut output information"
244
245     scm:
246         - git-scm:
247             credentials-id: '{ssh-credentials}'
248             refspec: ''
249             branch: '{branch}'
250
251     builders:
252         - description-setter:
253             description: "POD: $NODE_NAME"
254         - 'yardstick-cleanup'
255         #- 'yardstick-fetch-os-creds'
256         - 'yardstick-{testsuite}'
257
258     publishers:
259         - email:
260             recipients: jean.gaoliang@huawei.com matthew.lijun@huawei.com
261
262 ########################
263 # builder macros
264 ########################
265 - builder:
266     name: yardstick-daily
267     builders:
268         - shell:
269             !include-raw: ./yardstick-daily.sh
270
271 - builder:
272     name: yardstick-vtcdaily
273     builders:
274         - shell:
275             !include-raw: ./yardstick-vtcdaily.sh
276
277 - builder:
278     name: yardstick-fetch-os-creds
279     builders:
280         - shell:
281             !include-raw: ../../utils/fetch_os_creds.sh
282
283 - builder:
284     name: yardstick-cleanup
285     builders:
286         - shell:
287             !include-raw: ./yardstick-cleanup.sh
288 ########################
289 # parameter macros
290 ########################
291 - parameter:
292     name: 'yardstick-params-fuel-baremetal'
293     parameters:
294         - string:
295             name: YARDSTICK_DB_BACKEND
296             default: '-i 104.197.68.199:8086'
297             description: 'Arguments to use in order to choose the backend DB'
298 - parameter:
299     name: 'yardstick-params-fuel-virtual'
300     parameters:
301         - string:
302             name: YARDSTICK_DB_BACKEND
303             default: ''
304             description: 'Arguments to use in order to choose the backend DB'
305 - parameter:
306     name: 'yardstick-params-armband-baremetal'
307     parameters:
308         - string:
309             name: YARDSTICK_DB_BACKEND
310             default: '-i 104.197.68.199:8086'
311             description: 'Arguments to use in order to choose the backend DB'
312 - parameter:
313     name: 'yardstick-params-armband-virtual'
314     parameters:
315         - string:
316             name: YARDSTICK_DB_BACKEND
317             default: ''
318             description: 'Arguments to use in order to choose the backend DB'
319 - parameter:
320     name: 'yardstick-params-joid-baremetal'
321     parameters:
322         - string:
323             name: YARDSTICK_DB_BACKEND
324             default: '-i 104.197.68.199:8086'
325             description: 'Arguments to use in order to choose the backend DB'
326 - parameter:
327     name: 'yardstick-params-joid-virtual'
328     parameters:
329         - string:
330             name: YARDSTICK_DB_BACKEND
331             default: ''
332             description: 'Arguments to use in order to choose the backend DB'
333 - parameter:
334     name: 'yardstick-params-intel-pod8'
335     parameters:
336         - string:
337             name: YARDSTICK_DB_BACKEND
338             default: ''
339             description: 'Arguments to use in order to choose the backend DB'
340 - parameter:
341     name: 'yardstick-params-lf-pod1'
342     parameters:
343         - string:
344             name: YARDSTICK_DB_BACKEND
345             default: '-i 104.197.68.199:8086'
346             description: 'Arguments to use in order to choose the backend DB'
347
348 - parameter:
349     name: 'yardstick-params-lf-pod2'
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
356 - parameter:
357     name: 'yardstick-params-compass-baremetal'
358     parameters:
359         - string:
360             name: YARDSTICK_DB_BACKEND
361             default: '-i 104.197.68.199:8086'
362             description: 'Arguments to use in order to choose the backend DB'
363
364 - parameter:
365     name: 'yardstick-params-huawei-pod2'
366     parameters:
367         - string:
368             name: YARDSTICK_DB_BACKEND
369             default: '-i 104.197.68.199:8086'
370             description: 'Arguments to use in order to choose the backend DB'
371
372 - parameter:
373     name: 'yardstick-params-zte-pod1'
374     parameters:
375         - string:
376             name: YARDSTICK_DB_BACKEND
377             default: '-i 104.197.68.199:8086'
378             description: 'Arguments to use in order to choose the backend DB'
379
380 - parameter:
381     name: 'yardstick-params-zte-pod2'
382     parameters:
383         - string:
384             name: YARDSTICK_DB_BACKEND
385             default: '-i 104.197.68.199:8086'
386             description: 'Arguments to use in order to choose the backend DB'
387
388 - parameter:
389     name: 'yardstick-params-zte-pod3'
390     parameters:
391         - string:
392             name: YARDSTICK_DB_BACKEND
393             default: '-i 104.197.68.199:8086'
394             description: 'Arguments to use in order to choose the backend DB'
395
396 - parameter:
397     name: 'yardstick-params-orange-pod1'
398     parameters:
399         - string:
400             name: YARDSTICK_DB_BACKEND
401             default: '-i 104.197.68.199:8086'
402             description: 'Arguments to use in order to choose the backend DB'
403
404 - parameter:
405     name: 'yardstick-params-orange-pod2'
406     parameters:
407         - string:
408             name: YARDSTICK_DB_BACKEND
409             default: '-i 104.197.68.199:8086'
410             description: 'Arguments to use in order to choose the backend DB'
411
412 - parameter:
413     name: 'yardstick-params-arm-pod2'
414     parameters:
415         - string:
416             name: YARDSTICK_DB_BACKEND
417             default: '-i 104.197.68.199:8086'
418             description: 'Arguments to use in order to choose the backend DB'
419
420 - parameter:
421     name: 'yardstick-params-virtual'
422     parameters:
423         - string:
424             name: YARDSTICK_DB_BACKEND
425             default: ''
426             description: 'Arguments to use in order to choose the backend DB'
427
428 - parameter:
429     name: 'yardstick-params-compass-virtual'
430     parameters:
431         - string:
432             name: YARDSTICK_DB_BACKEND
433             default: ''
434             description: 'Arguments to use in order to choose the backend DB'
435
436 - parameter:
437     name: 'yardstick-params-huawei-pod3'
438     parameters:
439         - string:
440             name: YARDSTICK_DB_BACKEND
441             default: ''
442             description: 'Arguments to use in order to choose the backend DB'
443
444 - parameter:
445     name: 'yardstick-params-huawei-pod4'
446     parameters:
447         - string:
448             name: YARDSTICK_DB_BACKEND
449             default: ''
450             description: 'Arguments to use in order to choose the backend DB'
451
452 #######################
453 ## trigger macros
454 #######################
455 # trigger for PODs to only run yardstick test suites
456 - trigger:
457     name: 'yardstick-daily-huawei-pod3-trigger'
458     triggers:
459         - timed: '0 1 * * *'
460
461 - trigger:
462     name: 'yardstick-daily-huawei-pod4-trigger'
463     triggers:
464         - timed: '0 1 * * *'