c2dbfcdd086e5e675584fde617c7a5eea3689bf8
[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 # 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             <<: *colorado
68         - virtual:
69             slave-label: joid-virtual
70             installer: joid
71             auto-trigger-name: 'daily-trigger-disabled'
72             <<: *colorado
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             <<: *colorado
90         - virtual:
91             slave-label: compass-virtual
92             installer: compass
93             auto-trigger-name: 'daily-trigger-disabled'
94             <<: *colorado
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             <<: *colorado
111 #--------------------------------
112 #        None-CI PODs
113 #--------------------------------
114         - orange-pod1:
115             slave-label: '{pod}'
116             installer: joid
117             auto-trigger-name: 'daily-trigger-disabled'
118             <<: *master
119         - zte-pod1:
120             slave-label: '{pod}'
121             installer: fuel
122             auto-trigger-name: 'daily-trigger-disabled'
123             <<: *master
124         - zte-pod1:
125             slave-label: '{pod}'
126             installer: fuel
127             auto-trigger-name: 'daily-trigger-disabled'
128             <<: *colorado
129         - zte-pod2:
130             slave-label: '{pod}'
131             installer: fuel
132             auto-trigger-name: 'daily-trigger-disabled'
133             <<: *master
134         - zte-pod3:
135             slave-label: '{pod}'
136             installer: fuel
137             auto-trigger-name: 'daily-trigger-disabled'
138             <<: *master
139         - zte-pod3:
140             slave-label: '{pod}'
141             installer: fuel
142             auto-trigger-name: 'daily-trigger-disabled'
143             <<: *colorado
144         - arm-pod1:
145             slave-label: '{pod}'
146             installer: fuel
147             auto-trigger-name: 'daily-trigger-disabled'
148             <<: *master
149         - orange-pod2:
150             slave-label: '{pod}'
151             installer: joid
152             auto-trigger-name: 'daily-trigger-disabled'
153             <<: *master
154         - huawei-pod2:
155             slave-label: '{pod}'
156             installer: compass
157             auto-trigger-name: 'daily-trigger-disabled'
158             <<: *master
159         - huawei-pod3:
160             slave-label: '{pod}'
161             installer: compass
162             auto-trigger-name: 'yardstick-daily-huawei-pod3-trigger'
163             <<: *master
164         - huawei-pod4:
165             slave-label: '{pod}'
166             installer: compass
167             auto-trigger-name: 'yardstick-daily-huawei-pod4-trigger'
168             <<: *master
169 #--------------------------------
170     testsuite:
171         - 'daily'
172
173     jobs:
174         - 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
175
176 ################################
177 # job templates
178 ################################
179 - job-template:
180     name: 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
181
182     disabled: false
183
184     concurrent: true
185
186     properties:
187         - throttle:
188             enabled: true
189             max-per-node: 1
190             option: 'project'
191
192     wrappers:
193         - build-name:
194             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
195         - timeout:
196             timeout: 180
197             abort: true
198
199     triggers:
200         - '{auto-trigger-name}'
201
202     parameters:
203         - project-parameter:
204             project: '{project}'
205         - '{installer}-defaults'
206         - '{slave-label}-defaults'
207         - 'yardstick-params-{slave-label}'
208         - string:
209             name: DEPLOY_SCENARIO
210             default: 'os-odl_l2-nofeature-ha'
211         - string:
212             name: DOCKER_TAG
213             default: '{docker-tag}'
214             description: 'Tag to pull docker image'
215         - string:
216             name: YARDSTICK_SCENARIO_SUITE_NAME
217             default: opnfv_${{DEPLOY_SCENARIO}}_{testsuite}.yaml
218             description: 'Path to test scenario suite'
219         - string:
220             name: CI_DEBUG
221             default: 'false'
222             description: "Show debut output information"
223
224     scm:
225         - git-scm:
226             credentials-id: '{ssh-credentials}'
227             refspec: ''
228             branch: '{branch}'
229
230     builders:
231         - description-setter:
232             description: "POD: $NODE_NAME"
233         - 'yardstick-cleanup'
234         #- 'yardstick-fetch-os-creds'
235         - 'yardstick-{testsuite}'
236
237     publishers:
238         - email:
239             recipients: jean.gaoliang@huawei.com matthew.lijun@huawei.com
240
241 ########################
242 # builder macros
243 ########################
244 - builder:
245     name: yardstick-daily
246     builders:
247         - shell:
248             !include-raw: ./yardstick-daily.sh
249
250 - builder:
251     name: yardstick-vtcdaily
252     builders:
253         - shell:
254             !include-raw: ./yardstick-vtcdaily.sh
255
256 - builder:
257     name: yardstick-fetch-os-creds
258     builders:
259         - shell:
260             !include-raw: ../../utils/fetch_os_creds.sh
261
262 - builder:
263     name: yardstick-cleanup
264     builders:
265         - shell:
266             !include-raw: ./yardstick-cleanup.sh
267 ########################
268 # parameter macros
269 ########################
270 - parameter:
271     name: 'yardstick-params-fuel-baremetal'
272     parameters:
273         - string:
274             name: YARDSTICK_DB_BACKEND
275             default: '-i 104.197.68.199:8086'
276             description: 'Arguments to use in order to choose the backend DB'
277 - parameter:
278     name: 'yardstick-params-fuel-virtual'
279     parameters:
280         - string:
281             name: YARDSTICK_DB_BACKEND
282             default: ''
283             description: 'Arguments to use in order to choose the backend DB'
284 - parameter:
285     name: 'yardstick-params-joid-baremetal'
286     parameters:
287         - string:
288             name: YARDSTICK_DB_BACKEND
289             default: '-i 104.197.68.199:8086'
290             description: 'Arguments to use in order to choose the backend DB'
291 - parameter:
292     name: 'yardstick-params-joid-virtual'
293     parameters:
294         - string:
295             name: YARDSTICK_DB_BACKEND
296             default: ''
297             description: 'Arguments to use in order to choose the backend DB'
298 - parameter:
299     name: 'yardstick-params-intel-pod8'
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-lf-pod1'
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
313 - parameter:
314     name: 'yardstick-params-lf-pod2'
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
321 - parameter:
322     name: 'yardstick-params-compass-baremetal'
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-huawei-pod2'
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-zte-pod1'
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-zte-pod2'
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-zte-pod3'
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-orange-pod1'
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-orange-pod2'
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-arm-pod1'
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-virtual'
387     parameters:
388         - string:
389             name: YARDSTICK_DB_BACKEND
390             default: ''
391             description: 'Arguments to use in order to choose the backend DB'
392
393 - parameter:
394     name: 'yardstick-params-compass-virtual'
395     parameters:
396         - string:
397             name: YARDSTICK_DB_BACKEND
398             default: ''
399             description: 'Arguments to use in order to choose the backend DB'
400
401 - parameter:
402     name: 'yardstick-params-huawei-pod3'
403     parameters:
404         - string:
405             name: YARDSTICK_DB_BACKEND
406             default: ''
407             description: 'Arguments to use in order to choose the backend DB'
408
409 - parameter:
410     name: 'yardstick-params-huawei-pod4'
411     parameters:
412         - string:
413             name: YARDSTICK_DB_BACKEND
414             default: ''
415             description: 'Arguments to use in order to choose the backend DB'
416
417 #######################
418 ## trigger macros
419 #######################
420 # trigger for PODs to only run yardstick test suites
421 - trigger:
422     name: 'yardstick-daily-huawei-pod3-trigger'
423     triggers:
424         - timed: '0 1 * * *'
425
426 - trigger:
427     name: 'yardstick-daily-huawei-pod4-trigger'
428     triggers:
429         - timed: '0 1 * * *'