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