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