Try to get best parallel testing values
[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       # -------------------------------
65       #    Installers not using labels
66       #            CI PODs
67       # This section should only contain the installers
68       # that have not been switched using labels for slaves
69       # -------------------------------
70       # apex PODs
71       - virtual:
72           slave-label: apex-virtual-master
73           SUT: apex
74           auto-trigger-name: 'daily-trigger-disabled'
75           <<: *master
76       - baremetal:
77           slave-label: apex-baremetal-master
78           SUT: apex
79           auto-trigger-name: 'daily-trigger-disabled'
80           <<: *master
81       - virtual:
82           slave-label: apex-virtual-master
83           SUT: apex
84           auto-trigger-name: 'daily-trigger-disabled'
85           <<: *hunter
86       - baremetal:
87           slave-label: apex-baremetal-master
88           SUT: apex
89           auto-trigger-name: 'daily-trigger-disabled'
90           <<: *hunter
91       # armband CI PODs
92       - armband-baremetal:
93           slave-label: armband-baremetal
94           SUT: fuel
95           auto-trigger-name: 'daily-trigger-disabled'
96           <<: *master
97       - armband-virtual:
98           slave-label: armband-virtual
99           SUT: fuel
100           auto-trigger-name: 'daily-trigger-disabled'
101           <<: *master
102       # -------------------------------
103       #        None-CI PODs
104       # -------------------------------
105       - zte-pod1:
106           slave-label: zte-pod1
107           SUT: fuel
108           auto-trigger-name: 'daily-trigger-disabled'
109           <<: *master
110       - zte-pod2:
111           slave-label: zte-pod2
112           SUT: fuel
113           auto-trigger-name: 'daily-trigger-disabled'
114           <<: *master
115       - zte-pod3:
116           slave-label: zte-pod3
117           SUT: fuel
118           auto-trigger-name: 'daily-trigger-disabled'
119           <<: *master
120
121     # -------------------------------
122     testsuite:
123       - 'default'
124       - 'proposed_tests'
125
126     testarea:
127       - 'mandatory'
128       - 'optional'
129
130     jobs:
131       - 'dovetail-{SUT}-{pod}-{testsuite}-{stream}'
132       - 'dovetail-{SUT}-{pod}-{testsuite}-{testarea}-{stream}'
133
134 ################################
135 # job templates
136 ################################
137 - job-template:
138     name: 'dovetail-{SUT}-{pod}-{testsuite}-{stream}'
139
140     disabled: false
141
142     concurrent: true
143
144     properties:
145       - logrotate-default
146       - throttle:
147           enabled: true
148           max-per-node: 1
149           option: 'project'
150
151     wrappers:
152       - build-name:
153           name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
154       - timeout:
155           timeout: 300
156           abort: true
157       - fix-workspace-permissions
158
159     triggers:
160       - '{auto-trigger-name}'
161
162     parameters:
163       - project-parameter:
164           project: '{project}'
165           branch: '{dovetail-branch}'
166       - '{SUT}-defaults'
167       - '{slave-label}-defaults'
168       - string:
169           name: DEPLOY_SCENARIO
170           default: 'os-nosdn-nofeature-ha'
171       - string:
172           name: DOCKER_TAG
173           default: '{docker-tag}'
174           description: 'Tag to pull dovetail docker image'
175       - string:
176           name: CI_DEBUG
177           default: 'true'
178           description: "Show debug output information"
179       - string:
180           name: TESTSUITE
181           default: '{testsuite}'
182           description: "dovetail testsuite to run"
183       - string:
184           name: TESTAREA
185           default: 'all'
186           description: "dovetail testarea to run"
187       - string:
188           name: DOVETAIL_REPO_DIR
189           default: "/home/opnfv/dovetail"
190           description: "Directory where the dovetail repository is cloned"
191       - string:
192           name: SUT_BRANCH
193           default: '{branch}'
194           description: "SUT branch"
195
196     scm:
197       - git-scm
198
199     builders:
200       - description-setter:
201           description: "POD: $NODE_NAME"
202       - 'dovetail-cleanup'
203       - 'dovetail-run'
204
205     publishers:
206       - archive:
207           artifacts: 'results/**/*'
208           allow-empty: true
209           fingerprint: true
210       - email-jenkins-admins-on-failure
211
212 - job-template:
213     name: 'dovetail-{SUT}-{pod}-{testsuite}-{testarea}-{stream}'
214
215     disabled: false
216
217     concurrent: true
218
219     properties:
220       - logrotate-default
221       - throttle:
222           enabled: true
223           max-per-node: 1
224           option: 'project'
225
226     wrappers:
227       - build-name:
228           name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
229       - timeout:
230           timeout: 300
231           abort: true
232       - fix-workspace-permissions
233
234     triggers:
235       - '{auto-trigger-name}'
236
237     parameters:
238       - project-parameter:
239           project: '{project}'
240           branch: '{dovetail-branch}'
241       - '{SUT}-defaults'
242       - '{slave-label}-defaults'
243       - string:
244           name: DEPLOY_SCENARIO
245           default: 'os-nosdn-nofeature-ha'
246       - string:
247           name: DOCKER_TAG
248           default: '{docker-tag}'
249           description: 'Tag to pull dovetail docker image'
250       - string:
251           name: CI_DEBUG
252           default: 'true'
253           description: "Show debug output information"
254       - string:
255           name: TESTSUITE
256           default: '{testsuite}'
257           description: "dovetail testsuite to run"
258       - string:
259           name: TESTAREA
260           default: '{testarea}'
261           description: "dovetail testarea to run"
262       - string:
263           name: DOVETAIL_REPO_DIR
264           default: "/home/opnfv/dovetail"
265           description: "Directory where the dovetail repository is cloned"
266       - string:
267           name: SUT_BRANCH
268           default: '{branch}'
269           description: "SUT branch"
270
271     scm:
272       - git-scm
273
274     builders:
275       - description-setter:
276           description: "POD: $NODE_NAME"
277       - 'dovetail-cleanup'
278       - 'dovetail-run'
279
280     publishers:
281       - archive:
282           artifacts: 'results/**/*'
283           allow-empty: true
284           fingerprint: true
285       - email-jenkins-admins-on-failure
286
287 # -------------------------
288 # builder macros
289 # -------------------------
290 - builder:
291     name: dovetail-run
292     builders:
293       - shell:
294           !include-raw: ./dovetail-run.sh
295
296 - builder:
297     name: dovetail-cleanup
298     builders:
299       - shell:
300           !include-raw: ./dovetail-cleanup.sh