Merge "eliminate flake8 violation in testAPI except dashboard dir"
[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: 'brahmaputra-trigger-daily-disabled'
36             <<: *master
37         - virtual:
38             slave-label: fuel-virtual
39             installer: fuel
40             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
41             <<: *master
42         - baremetal:
43             slave-label: fuel-baremetal
44             installer: fuel
45             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
46             <<: *brahmaputra
47         - virtual:
48             slave-label: fuel-virtual
49             installer: fuel
50             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
51             <<: *brahmaputra
52
53 # just in case if things go wrong
54         - lf-pod2:
55             slave-label: '{pod}'
56             installer: fuel
57             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
58             <<: *master
59
60 # joid CI PODs
61         - baremetal:
62             slave-label: joid-baremetal
63             installer: joid
64             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
65             <<: *master
66         - virtual:
67             slave-label: joid-virtual
68             installer: joid
69             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
70             <<: *master
71         - baremetal:
72             slave-label: joid-baremetal
73             installer: joid
74             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
75             <<: *brahmaputra
76         - virtual:
77             slave-label: joid-virtual
78             installer: joid
79             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
80             <<: *brahmaputra
81 #--------------------------------
82 #    Installers not using labels
83 #            CI PODs
84 # This section should only contain the installers
85 # that have not been switched using labels for slaves
86 #--------------------------------
87         - lf-pod1:
88             slave-label: '{pod}'
89             installer: apex
90             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
91             <<: *master
92         - lf-pod1:
93             slave-label: '{pod}'
94             installer: apex
95             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
96             <<: *brahmaputra
97         - intel-pod8:
98             slave-label: '{pod}'
99             installer: compass
100             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
101             <<: *master
102         - huawei-pod1:
103             slave-label: '{pod}'
104             installer: compass
105             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
106             <<: *brahmaputra
107 #--------------------------------
108 #        None-CI PODs
109 #--------------------------------
110         - orange-pod2:
111             slave-label: '{pod}'
112             installer: joid
113             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
114             <<: *brahmaputra
115         - zte-pod1:
116             slave-label: '{pod}'
117             installer: fuel
118             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
119             <<: *master
120         - orange-pod2:
121             slave-label: '{pod}'
122             installer: joid
123             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
124             <<: *master
125         - huawei-pod1:
126             slave-label: '{pod}'
127             installer: compass
128             suite: daily
129             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
130             <<: *master
131         - huawei-pod2:
132             slave-label: '{pod}'
133             installer: compass
134             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
135             <<: *master
136             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
137             <<: *master
138         - huawei-virtual:
139             slave-label: '{pod}'
140             installer: compass
141             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
142             <<: *master
143         - huawei-pod3:
144             slave-label: '{pod}'
145             installer: compass
146             auto-trigger-name: 'yardstick-daily-huawei-pod3-trigger'
147             <<: *master
148         - huawei-pod4:
149             slave-label: '{pod}'
150             installer: compass
151             auto-trigger-name: 'yardstick-daily-huawei-pod4-trigger'
152             <<: *master
153         - huawei-virtual:
154             slave-label: '{pod}'
155             installer: compass
156             auto-trigger-name: 'brahmaputra-trigger-daily-disabled'
157             <<: *brahmaputra
158 #--------------------------------
159     testsuite:
160         - 'daily'
161
162     jobs:
163         - 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
164
165 ################################
166 # job templates
167 ################################
168 - job-template:
169     name: 'yardstick-{installer}-{pod}-{testsuite}-{stream}'
170
171     disabled: false
172
173     concurrent: true
174
175     properties:
176         - throttle:
177             enabled: true
178             max-per-node: 1
179
180     wrappers:
181         - build-name:
182             name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
183         - timeout:
184             timeout: 180
185             abort: true
186
187     triggers:
188         - '{auto-trigger-name}'
189
190     parameters:
191         - project-parameter:
192             project: '{project}'
193         - '{slave-label}-defaults'
194         - '{installer}-defaults'
195         - 'yardstick-params-{slave-label}'
196         - string:
197             name: DEPLOY_SCENARIO
198             default: 'os-odl_l2-nofeature-ha'
199         - string:
200             name: DOCKER_TAG
201             default: '{docker-tag}'
202             description: 'Tag to pull docker image'
203         - string:
204             name: YARDSTICK_SUITE_NAME
205             default: opnfv_${{NODE_NAME}}_{testsuite}.yaml
206             description: 'Path to test suite'
207         - string:
208             name: CI_DEBUG
209             default: 'false'
210             description: "Show debut output information"
211
212     scm:
213         - git-scm:
214             credentials-id: '{ssh-credentials}'
215             refspec: ''
216             branch: '{branch}'
217
218     builders:
219         - 'yardstick-cleanup'
220         #- 'yardstick-fetch-os-creds'
221         - 'yardstick-{testsuite}'
222
223     publishers:
224         - email:
225             recipients: jean.gaoliang@huawei.com matthew.lijun@huawei.com
226
227 ########################
228 # builder macros
229 ########################
230 - builder:
231     name: yardstick-daily
232     builders:
233         - shell:
234             !include-raw: ./yardstick-daily.sh
235
236 - builder:
237     name: yardstick-vtcdaily
238     builders:
239         - shell:
240             !include-raw: ./yardstick-vtcdaily.sh
241
242 - builder:
243     name: yardstick-fetch-os-creds
244     builders:
245         - shell:
246             !include-raw: ../../utils/fetch_os_creds.sh
247
248 - builder:
249     name: yardstick-cleanup
250     builders:
251         - shell:
252             !include-raw: ./yardstick-cleanup.sh
253 ########################
254 # parameter macros
255 ########################
256 - parameter:
257     name: 'yardstick-params-fuel-baremetal'
258     parameters:
259         - string:
260             name: YARDSTICK_DB_BACKEND
261             default: '-i 104.197.68.199:8086'
262             description: 'Arguments to use in order to choose the backend DB'
263 - parameter:
264     name: 'yardstick-params-fuel-virtual'
265     parameters:
266         - string:
267             name: YARDSTICK_DB_BACKEND
268             default: ''
269             description: 'Arguments to use in order to choose the backend DB'
270 - parameter:
271     name: 'yardstick-params-joid-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-joid-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-intel-pod8'
286     parameters:
287         - string:
288             name: YARDSTICK_DB_BACKEND
289             default: ''
290             description: 'Arguments to use in order to choose the backend DB'
291 - parameter:
292     name: 'yardstick-params-lf-pod1'
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
299 - parameter:
300     name: 'yardstick-params-lf-pod2'
301     parameters:
302         - string:
303             name: YARDSTICK_DB_BACKEND
304             default: '-i 104.197.68.199:8086'
305             description: 'Arguments to use in order to choose the backend DB'
306
307 - parameter:
308     name: 'yardstick-params-huawei-pod1'
309     parameters:
310         - string:
311             name: YARDSTICK_DB_BACKEND
312             default: '-i 104.197.68.199:8086'
313             description: 'Arguments to use in order to choose the backend DB'
314
315 - parameter:
316     name: 'yardstick-params-huawei-pod2'
317     parameters:
318         - string:
319             name: YARDSTICK_DB_BACKEND
320             default: '-i 104.197.68.199:8086'
321             description: 'Arguments to use in order to choose the backend DB'
322
323 - parameter:
324     name: 'yardstick-params-zte-pod1'
325     parameters:
326         - string:
327             name: YARDSTICK_DB_BACKEND
328             default: '-i 104.197.68.199:8086'
329             description: 'Arguments to use in order to choose the backend DB'
330
331 - parameter:
332     name: 'yardstick-params-orange-pod2'
333     parameters:
334         - string:
335             name: YARDSTICK_DB_BACKEND
336             default: '-i 104.197.68.199:8086'
337             description: 'Arguments to use in order to choose the backend DB'
338
339 - parameter:
340     name: 'yardstick-params-virtual'
341     parameters:
342         - string:
343             name: YARDSTICK_DB_BACKEND
344             default: ''
345             description: 'Arguments to use in order to choose the backend DB'
346
347 - parameter:
348     name: 'yardstick-params-huawei-virtual'
349     parameters:
350         - string:
351             name: YARDSTICK_DB_BACKEND
352             default: ''
353             description: 'Arguments to use in order to choose the backend DB'
354
355 - parameter:
356     name: 'yardstick-params-huawei-pod3'
357     parameters:
358         - string:
359             name: YARDSTICK_DB_BACKEND
360             default: ''
361             description: 'Arguments to use in order to choose the backend DB'
362
363 - parameter:
364     name: 'yardstick-params-huawei-pod4'
365     parameters:
366         - string:
367             name: YARDSTICK_DB_BACKEND
368             default: ''
369             description: 'Arguments to use in order to choose the backend DB'
370
371 #######################
372 ## trigger macros
373 #######################
374 # trigger for PODs to only run yardstick test suites
375 - trigger:
376     name: 'yardstick-daily-huawei-pod3-trigger'
377     triggers:
378         - timed: '0 1 * * *'
379
380 - trigger:
381     name: 'yardstick-daily-huawei-pod4-trigger'
382     triggers:
383         - timed: '0 1 * * *'