d45a2eabb431da36719e3c2e0e61308abd991433
[releng.git] / jjb / dovetail / dovetail-ci-jobs.yaml
1 ---
2 ###################################
3 # job configuration for dovetail
4 ###################################
5 - project:
6     name: dovetail
7
8     project: '{name}'
9
10     # --------------------------------------
11     # BRANCH ANCHORS
12     # --------------------------------------
13     # 1)the stream/branch here represents the SUT(System Under Test) stream/branch
14     # 2)docker-tag is the docker tag of dovetail(only master by now, then all latest used)
15     #   the dovetail stream is one-to-one mapping with dovetail docker-tag
16     #   the dovetail is not sync with A/B/C release
17     master: &master
18       stream: master
19       branch: '{stream}'
20       dovetail-branch: '{stream}'
21       gs-pathname: ''
22       docker-tag: 'latest'
23       disabled: true
24     hunter: &hunter
25       stream: hunter
26       branch: 'stable/{stream}'
27       dovetail-branch: 'master'
28       gs-pathname: '/{stream}'
29       docker-tag: 'latest'
30
31     # ----------------------------------
32     # POD, PLATFORM, AND BRANCH MAPPING
33     # ----------------------------------
34     #            CI PODs
35     # This section should only contain the SUTs
36     # that have been switched using labels for slaves
37     # -----------------------------------------------
38     # the pods, SUTs listed here are just examples to
39     # let the dovetail tool run, there can be more ways beside CI to
40     # run the dovetail tool.
41     # pods, SUTs will be added/adjusted when needed
42     pod:
43       # fuel CI PODs
44       - baremetal:
45           slave-label: fuel-baremetal
46           SUT: fuel
47           auto-trigger-name: 'daily-trigger-disabled'
48           <<: *master
49       - virtual:
50           slave-label: fuel-virtual
51           SUT: fuel
52           auto-trigger-name: 'daily-trigger-disabled'
53           <<: *master
54       - baremetal:
55           slave-label: fuel-baremetal
56           SUT: fuel
57           auto-trigger-name: 'daily-trigger-disabled'
58           <<: *hunter
59       - virtual:
60           slave-label: fuel-virtual
61           SUT: fuel
62           auto-trigger-name: 'daily-trigger-disabled'
63           <<: *hunter
64       # compass CI PODs
65       - baremetal:
66           slave-label: compass-baremetal
67           SUT: compass
68           auto-trigger-name: 'daily-trigger-disabled'
69           <<: *master
70       - virtual:
71           slave-label: compass-virtual
72           SUT: compass
73           auto-trigger-name: 'daily-trigger-disabled'
74           <<: *master
75       - baremetal:
76           slave-label: compass-baremetal
77           SUT: compass
78           auto-trigger-name: 'daily-trigger-disabled'
79           <<: *hunter
80       - virtual:
81           slave-label: compass-virtual
82           SUT: compass
83           auto-trigger-name: 'daily-trigger-disabled'
84           <<: *hunter
85       # -------------------------------
86       #    Installers not using labels
87       #            CI PODs
88       # This section should only contain the installers
89       # that have not been switched using labels for slaves
90       # -------------------------------
91       # apex PODs
92       - virtual:
93           slave-label: apex-virtual-master
94           SUT: apex
95           auto-trigger-name: 'daily-trigger-disabled'
96           <<: *master
97       - baremetal:
98           slave-label: apex-baremetal-master
99           SUT: apex
100           auto-trigger-name: 'daily-trigger-disabled'
101           <<: *master
102       - virtual:
103           slave-label: apex-virtual-master
104           SUT: apex
105           auto-trigger-name: 'daily-trigger-disabled'
106           <<: *hunter
107       - baremetal:
108           slave-label: apex-baremetal-master
109           SUT: apex
110           auto-trigger-name: 'daily-trigger-disabled'
111           <<: *hunter
112       # armband CI PODs
113       - armband-baremetal:
114           slave-label: armband-baremetal
115           SUT: fuel
116           auto-trigger-name: 'daily-trigger-disabled'
117           <<: *master
118       - armband-virtual:
119           slave-label: armband-virtual
120           SUT: fuel
121           auto-trigger-name: 'daily-trigger-disabled'
122           <<: *master
123       # -------------------------------
124       #        None-CI PODs
125       # -------------------------------
126       - baremetal-centos:
127           slave-label: 'intel-pod8'
128           SUT: compass
129           auto-trigger-name: 'daily-trigger-disabled'
130           <<: *master
131       - zte-pod1:
132           slave-label: zte-pod1
133           SUT: fuel
134           auto-trigger-name: 'daily-trigger-disabled'
135           <<: *master
136       - zte-pod2:
137           slave-label: zte-pod2
138           SUT: fuel
139           auto-trigger-name: 'daily-trigger-disabled'
140           <<: *master
141       - zte-pod3:
142           slave-label: zte-pod3
143           SUT: fuel
144           auto-trigger-name: 'daily-trigger-disabled'
145           <<: *master
146
147     # -------------------------------
148     testsuite:
149       - 'default'
150       - 'proposed_tests'
151
152     testarea:
153       - 'mandatory'
154       - 'optional'
155
156     jobs:
157       - 'dovetail-{SUT}-{pod}-{testsuite}-{stream}'
158       - 'dovetail-{SUT}-{pod}-{testsuite}-{testarea}-{stream}'
159
160 ################################
161 # job templates
162 ################################
163 - job-template:
164     name: 'dovetail-{SUT}-{pod}-{testsuite}-{stream}'
165
166     disabled: false
167
168     concurrent: true
169
170     properties:
171       - logrotate-default
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: 300
182           abort: true
183       - fix-workspace-permissions
184
185     triggers:
186       - '{auto-trigger-name}'
187
188     parameters:
189       - project-parameter:
190           project: '{project}'
191           branch: '{dovetail-branch}'
192       - '{SUT}-defaults'
193       - '{slave-label}-defaults'
194       - string:
195           name: DEPLOY_SCENARIO
196           default: 'os-nosdn-nofeature-ha'
197       - string:
198           name: DOCKER_TAG
199           default: '{docker-tag}'
200           description: 'Tag to pull dovetail docker image'
201       - string:
202           name: CI_DEBUG
203           default: 'true'
204           description: "Show debug output information"
205       - string:
206           name: TESTSUITE
207           default: '{testsuite}'
208           description: "dovetail testsuite to run"
209       - string:
210           name: TESTAREA
211           default: 'all'
212           description: "dovetail testarea to run"
213       - string:
214           name: DOVETAIL_REPO_DIR
215           default: "/home/opnfv/dovetail"
216           description: "Directory where the dovetail repository is cloned"
217       - string:
218           name: SUT_BRANCH
219           default: '{branch}'
220           description: "SUT branch"
221
222     scm:
223       - git-scm
224
225     builders:
226       - description-setter:
227           description: "POD: $NODE_NAME"
228       - 'dovetail-cleanup'
229       - 'dovetail-run'
230
231     publishers:
232       - archive:
233           artifacts: 'results/**/*'
234           allow-empty: true
235           fingerprint: true
236       - email-jenkins-admins-on-failure
237
238 - job-template:
239     name: 'dovetail-{SUT}-{pod}-{testsuite}-{testarea}-{stream}'
240
241     disabled: false
242
243     concurrent: true
244
245     properties:
246       - logrotate-default
247       - throttle:
248           enabled: true
249           max-per-node: 1
250           option: 'project'
251
252     wrappers:
253       - build-name:
254           name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
255       - timeout:
256           timeout: 300
257           abort: true
258       - fix-workspace-permissions
259
260     triggers:
261       - '{auto-trigger-name}'
262
263     parameters:
264       - project-parameter:
265           project: '{project}'
266           branch: '{dovetail-branch}'
267       - '{SUT}-defaults'
268       - '{slave-label}-defaults'
269       - string:
270           name: DEPLOY_SCENARIO
271           default: 'os-nosdn-nofeature-ha'
272       - string:
273           name: DOCKER_TAG
274           default: '{docker-tag}'
275           description: 'Tag to pull dovetail docker image'
276       - string:
277           name: CI_DEBUG
278           default: 'true'
279           description: "Show debug output information"
280       - string:
281           name: TESTSUITE
282           default: '{testsuite}'
283           description: "dovetail testsuite to run"
284       - string:
285           name: TESTAREA
286           default: '{testarea}'
287           description: "dovetail testarea to run"
288       - string:
289           name: DOVETAIL_REPO_DIR
290           default: "/home/opnfv/dovetail"
291           description: "Directory where the dovetail repository is cloned"
292       - string:
293           name: SUT_BRANCH
294           default: '{branch}'
295           description: "SUT branch"
296
297     scm:
298       - git-scm
299
300     builders:
301       - description-setter:
302           description: "POD: $NODE_NAME"
303       - 'dovetail-cleanup'
304       - 'dovetail-run'
305
306     publishers:
307       - archive:
308           artifacts: 'results/**/*'
309           allow-empty: true
310           fingerprint: true
311       - email-jenkins-admins-on-failure
312
313 # -------------------------
314 # builder macros
315 # -------------------------
316 - builder:
317     name: dovetail-run
318     builders:
319       - shell:
320           !include-raw: ./dovetail-run.sh
321
322 - builder:
323     name: dovetail-cleanup
324     builders:
325       - shell:
326           !include-raw: ./dovetail-cleanup.sh