f952ed3373c3f740a733a37bb9d0e423cb5ba87b
[releng.git] / jjb / yardstick / yardstick-ci-jobs.yml
1 ###################################
2 # job configuration for functest
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     brahmaputra: &brahmaputra
18         stream: brahmaputra
19         branch: 'stable/{stream}'
20         gs-pathname: '{stream}'
21         docker-tag: 'brahmaputra.1.0'
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             <<: *brahmaputra
47         - virtual:
48             slave-label: fuel-virtual
49             installer: fuel
50             auto-trigger-name: 'daily-trigger-disabled'
51             <<: *brahmaputra
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             <<: *brahmaputra
68         - virtual:
69             slave-label: joid-virtual
70             installer: joid
71             auto-trigger-name: 'daily-trigger-disabled'
72             <<: *brahmaputra
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             <<: *brahmaputra
90         - virtual:
91             slave-label: compass-virtual
92             installer: compass
93             auto-trigger-name: 'daily-trigger-disabled'
94             <<: *brahmaputra
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             <<: *brahmaputra
111 #--------------------------------
112 #        None-CI PODs
113 #--------------------------------
114         - orange-pod2:
115             slave-label: '{pod}'
116             installer: joid
117             auto-trigger-name: 'daily-trigger-disabled'
118             <<: *brahmaputra
119         - zte-pod1:
120             slave-label: '{pod}'
121             installer: fuel
122             auto-trigger-name: 'daily-trigger-disabled'
123             <<: *master
124         - zte-pod2:
125             slave-label: '{pod}'
126             installer: fuel
127             auto-trigger-name: 'daily-trigger-disabled'
128             <<: *master
129         - zte-pod3:
130             slave-label: '{pod}'
131             installer: fuel
132             auto-trigger-name: 'daily-trigger-disabled'
133             <<: *master
134         - orange-pod2:
135             slave-label: '{pod}'
136             installer: joid
137             auto-trigger-name: 'daily-trigger-disabled'
138             <<: *master
139         - huawei-pod2:
140             slave-label: '{pod}'
141             installer: compass
142             auto-trigger-name: 'daily-trigger-disabled'
143             <<: *master
144         - huawei-pod3:
145             slave-label: '{pod}'
146             installer: compass
147             auto-trigger-name: 'yardstick-daily-huawei-pod3-trigger'
148             <<: *master
149         - huawei-pod4:
150             slave-label: '{pod}'
151             installer: compass
152             auto-trigger-name: 'yardstick-daily-huawei-pod4-trigger'
153             <<: *master
154 #--------------------------------
155     testsuite:
156         - 'daily'
157
158     jobs:
159         - 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
160
161 ################################
162 # job templates
163 ################################
164 - job-template:
165     name: 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
166
167     disabled: false
168
169     concurrent: true
170
171     properties:
172         - throttle:
173             enabled: true
174             max-per-node: 1
175             option: 'project'
176
177     wrappers:
178         - build-name:
179             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
180         - timeout:
181             timeout: 180
182             abort: true
183
184     triggers:
185         - '{auto-trigger-name}'
186
187     parameters:
188         - project-parameter:
189             project: '{project}'
190         - '{slave-label}-defaults'
191         - '{installer}-defaults'
192         - 'yardstick-params-{slave-label}'
193         - string:
194             name: DEPLOY_SCENARIO
195             default: 'os-odl_l2-nofeature-ha'
196         - string:
197             name: DOCKER_TAG
198             default: '{docker-tag}'
199             description: 'Tag to pull docker image'
200         - string:
201             name: YARDSTICK_SCENARIO_SUITE_NAME
202             default: opnfv_${{DEPLOY_SCENARIO}}_{testsuite}.yaml
203             description: 'Path to test scenario suite'
204         - string:
205             name: CI_DEBUG
206             default: 'false'
207             description: "Show debut output information"
208
209     scm:
210         - git-scm:
211             credentials-id: '{ssh-credentials}'
212             refspec: ''
213             branch: '{branch}'
214
215     builders:
216         - description-setter:
217             description: "POD: $NODE_NAME"
218         - 'yardstick-cleanup'
219         #- 'yardstick-fetch-os-creds'
220         - 'yardstick-{testsuite}'
221
222     publishers:
223         - email:
224             recipients: jean.gaoliang@huawei.com matthew.lijun@huawei.com
225
226 ########################
227 # builder macros
228 ########################
229 - builder:
230     name: yardstick-daily
231     builders:
232         - shell:
233             !include-raw: ./yardstick-daily.sh
234
235 - builder:
236     name: yardstick-vtcdaily
237     builders:
238         - shell:
239             !include-raw: ./yardstick-vtcdaily.sh
240
241 - builder:
242     name: yardstick-fetch-os-creds
243     builders:
244         - shell:
245             !include-raw: ../../utils/fetch_os_creds.sh
246
247 - builder:
248     name: yardstick-cleanup
249     builders:
250         - shell:
251             !include-raw: ./yardstick-cleanup.sh
252 ########################
253 # parameter macros
254 ########################
255 - parameter:
256     name: 'yardstick-params-fuel-baremetal'
257     parameters:
258         - string:
259             name: YARDSTICK_DB_BACKEND
260             default: '-i 104.197.68.199:8086'
261             description: 'Arguments to use in order to choose the backend DB'
262 - parameter:
263     name: 'yardstick-params-fuel-virtual'
264     parameters:
265         - string:
266             name: YARDSTICK_DB_BACKEND
267             default: ''
268             description: 'Arguments to use in order to choose the backend DB'
269 - parameter:
270     name: 'yardstick-params-joid-baremetal'
271     parameters:
272         - string:
273             name: YARDSTICK_DB_BACKEND
274             default: '-i 104.197.68.199:8086'
275             description: 'Arguments to use in order to choose the backend DB'
276 - parameter:
277     name: 'yardstick-params-joid-virtual'
278     parameters:
279         - string:
280             name: YARDSTICK_DB_BACKEND
281             default: ''
282             description: 'Arguments to use in order to choose the backend DB'
283 - parameter:
284     name: 'yardstick-params-intel-pod8'
285     parameters:
286         - string:
287             name: YARDSTICK_DB_BACKEND
288             default: ''
289             description: 'Arguments to use in order to choose the backend DB'
290 - parameter:
291     name: 'yardstick-params-lf-pod1'
292     parameters:
293         - string:
294             name: YARDSTICK_DB_BACKEND
295             default: '-i 104.197.68.199:8086'
296             description: 'Arguments to use in order to choose the backend DB'
297
298 - parameter:
299     name: 'yardstick-params-lf-pod2'
300     parameters:
301         - string:
302             name: YARDSTICK_DB_BACKEND
303             default: '-i 104.197.68.199:8086'
304             description: 'Arguments to use in order to choose the backend DB'
305
306 - parameter:
307     name: 'yardstick-params-compass-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
314 - parameter:
315     name: 'yardstick-params-huawei-pod2'
316     parameters:
317         - string:
318             name: YARDSTICK_DB_BACKEND
319             default: '-i 104.197.68.199:8086'
320             description: 'Arguments to use in order to choose the backend DB'
321
322 - parameter:
323     name: 'yardstick-params-zte-pod1'
324     parameters:
325         - string:
326             name: YARDSTICK_DB_BACKEND
327             default: '-i 104.197.68.199:8086'
328             description: 'Arguments to use in order to choose the backend DB'
329
330 - parameter:
331     name: 'yardstick-params-zte-pod2'
332     parameters:
333         - string:
334             name: YARDSTICK_DB_BACKEND
335             default: '-i 104.197.68.199:8086'
336             description: 'Arguments to use in order to choose the backend DB'
337
338 - parameter:
339     name: 'yardstick-params-zte-pod3'
340     parameters:
341         - string:
342             name: YARDSTICK_DB_BACKEND
343             default: '-i 104.197.68.199:8086'
344             description: 'Arguments to use in order to choose the backend DB'
345
346 - parameter:
347     name: 'yardstick-params-orange-pod2'
348     parameters:
349         - string:
350             name: YARDSTICK_DB_BACKEND
351             default: '-i 104.197.68.199:8086'
352             description: 'Arguments to use in order to choose the backend DB'
353
354 - parameter:
355     name: 'yardstick-params-virtual'
356     parameters:
357         - string:
358             name: YARDSTICK_DB_BACKEND
359             default: ''
360             description: 'Arguments to use in order to choose the backend DB'
361
362 - parameter:
363     name: 'yardstick-params-compass-virtual'
364     parameters:
365         - string:
366             name: YARDSTICK_DB_BACKEND
367             default: ''
368             description: 'Arguments to use in order to choose the backend DB'
369
370 - parameter:
371     name: 'yardstick-params-huawei-pod3'
372     parameters:
373         - string:
374             name: YARDSTICK_DB_BACKEND
375             default: ''
376             description: 'Arguments to use in order to choose the backend DB'
377
378 - parameter:
379     name: 'yardstick-params-huawei-pod4'
380     parameters:
381         - string:
382             name: YARDSTICK_DB_BACKEND
383             default: ''
384             description: 'Arguments to use in order to choose the backend DB'
385
386 #######################
387 ## trigger macros
388 #######################
389 # trigger for PODs to only run yardstick test suites
390 - trigger:
391     name: 'yardstick-daily-huawei-pod3-trigger'
392     triggers:
393         - timed: '0 1 * * *'
394
395 - trigger:
396     name: 'yardstick-daily-huawei-pod4-trigger'
397     triggers:
398         - timed: '0 1 * * *'