Merge "[Dovetail] Changing the path of the ssh key in pod.yaml for yardstick"
[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     fraser: &fraser
24       stream: fraser
25       branch: 'stable/{stream}'
26       dovetail-branch: master
27       gs-pathname: '/{stream}'
28       docker-tag: 'latest'
29
30     # ----------------------------------
31     # POD, PLATFORM, AND BRANCH MAPPING
32     # ----------------------------------
33     #            CI PODs
34     # This section should only contain the SUTs
35     # that have been switched using labels for slaves
36     # -----------------------------------------------
37     # the pods, SUTs listed here are just examples to
38     # let the dovetail tool run, there can be more ways beside CI to
39     # run the dovetail tool.
40     # pods, SUTs will be added/adjusted when needed
41     pod:
42       # fuel CI PODs
43       - baremetal:
44           slave-label: fuel-baremetal
45           SUT: fuel
46           auto-trigger-name: 'daily-trigger-disabled'
47           <<: *master
48       - virtual:
49           slave-label: fuel-virtual
50           SUT: fuel
51           auto-trigger-name: 'daily-trigger-disabled'
52           <<: *master
53       - baremetal:
54           slave-label: fuel-baremetal
55           SUT: fuel
56           auto-trigger-name: 'daily-trigger-disabled'
57           <<: *fraser
58       - virtual:
59           slave-label: fuel-virtual
60           SUT: fuel
61           auto-trigger-name: 'daily-trigger-disabled'
62           <<: *fraser
63       # compass CI PODs
64       - baremetal:
65           slave-label: compass-baremetal
66           SUT: compass
67           auto-trigger-name: 'daily-trigger-disabled'
68           <<: *master
69       - virtual:
70           slave-label: compass-virtual
71           SUT: compass
72           auto-trigger-name: 'daily-trigger-disabled'
73           <<: *master
74       - baremetal:
75           slave-label: compass-baremetal
76           SUT: compass
77           auto-trigger-name: 'daily-trigger-disabled'
78           <<: *fraser
79       - virtual:
80           slave-label: compass-virtual
81           SUT: compass
82           auto-trigger-name: 'daily-trigger-disabled'
83           <<: *fraser
84       # -------------------------------
85       #    Installers not using labels
86       #            CI PODs
87       # This section should only contain the installers
88       # that have not been switched using labels for slaves
89       # -------------------------------
90       # apex PODs
91       - virtual:
92           slave-label: apex-virtual-master
93           SUT: apex
94           auto-trigger-name: 'daily-trigger-disabled'
95           <<: *master
96       - baremetal:
97           slave-label: apex-baremetal-master
98           SUT: apex
99           auto-trigger-name: 'daily-trigger-disabled'
100           <<: *master
101       - virtual:
102           slave-label: apex-virtual-master
103           SUT: apex
104           auto-trigger-name: 'daily-trigger-disabled'
105           <<: *fraser
106       - baremetal:
107           slave-label: apex-baremetal-master
108           SUT: apex
109           auto-trigger-name: 'daily-trigger-disabled'
110           <<: *fraser
111       # armband CI PODs
112       - armband-baremetal:
113           slave-label: armband-baremetal
114           SUT: fuel
115           auto-trigger-name: 'daily-trigger-disabled'
116           <<: *master
117       - armband-virtual:
118           slave-label: armband-virtual
119           SUT: fuel
120           auto-trigger-name: 'daily-trigger-disabled'
121           <<: *master
122       - armband-baremetal:
123           slave-label: armband-baremetal
124           SUT: fuel
125           auto-trigger-name: 'daily-trigger-disabled'
126           <<: *fraser
127       - armband-virtual:
128           slave-label: armband-virtual
129           SUT: fuel
130           auto-trigger-name: 'daily-trigger-disabled'
131           <<: *fraser
132       # -------------------------------
133       #        None-CI PODs
134       # -------------------------------
135       - baremetal-centos:
136           slave-label: 'intel-pod8'
137           SUT: compass
138           auto-trigger-name: 'daily-trigger-disabled'
139           <<: *master
140       - zte-pod1:
141           slave-label: zte-pod1
142           SUT: fuel
143           auto-trigger-name: 'daily-trigger-disabled'
144           <<: *master
145       - zte-pod2:
146           slave-label: zte-pod2
147           SUT: fuel
148           auto-trigger-name: 'daily-trigger-disabled'
149           <<: *master
150       - zte-pod3:
151           slave-label: zte-pod3
152           SUT: fuel
153           auto-trigger-name: 'daily-trigger-disabled'
154           <<: *master
155       - zte-pod1:
156           slave-label: zte-pod1
157           SUT: fuel
158           auto-trigger-name: 'daily-trigger-disabled'
159           <<: *fraser
160       - zte-pod3:
161           slave-label: zte-pod3
162           SUT: fuel
163           auto-trigger-name: 'daily-trigger-disabled'
164           <<: *fraser
165       - huawei-pod4:
166           slave-label: huawei-pod4
167           SUT: apex
168           auto-trigger-name: 'daily-trigger-disabled'
169           <<: *fraser
170       - huawei-pod7:
171           slave-label: huawei-pod7
172           SUT: compass
173           auto-trigger-name: 'daily-trigger-disabled'
174           <<: *fraser
175
176     # -------------------------------
177     testsuite:
178       - 'default'
179       - 'proposed_tests'
180
181     jobs:
182       - 'dovetail-{SUT}-{pod}-{testsuite}-{stream}'
183
184 ################################
185 # job templates
186 ################################
187 - job-template:
188     name: 'dovetail-{SUT}-{pod}-{testsuite}-{stream}'
189
190     disabled: false
191
192     concurrent: true
193
194     properties:
195       - logrotate-default
196       - throttle:
197           enabled: true
198           max-per-node: 1
199           option: 'project'
200
201     wrappers:
202       - build-name:
203           name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
204       - timeout:
205           timeout: 300
206           abort: true
207       - fix-workspace-permissions
208
209     triggers:
210       - '{auto-trigger-name}'
211
212     parameters:
213       - project-parameter:
214           project: '{project}'
215           branch: '{dovetail-branch}'
216       - '{SUT}-defaults'
217       - '{slave-label}-defaults'
218       - string:
219           name: DEPLOY_SCENARIO
220           default: 'os-nosdn-nofeature-ha'
221       - string:
222           name: DOCKER_TAG
223           default: '{docker-tag}'
224           description: 'Tag to pull dovetail docker image'
225       - string:
226           name: CI_DEBUG
227           default: 'true'
228           description: "Show debug output information"
229       - string:
230           name: TESTSUITE
231           default: '{testsuite}'
232           description: "dovetail testsuite to run"
233       - string:
234           name: DOVETAIL_REPO_DIR
235           default: "/home/opnfv/dovetail"
236           description: "Directory where the dovetail repository is cloned"
237       - string:
238           name: SUT_BRANCH
239           default: '{branch}'
240           description: "SUT branch"
241
242     scm:
243       - git-scm
244
245     builders:
246       - description-setter:
247           description: "POD: $NODE_NAME"
248       - 'dovetail-cleanup'
249       - 'dovetail-run'
250
251     publishers:
252       - archive:
253           artifacts: 'results/**/*'
254           allow-empty: true
255           fingerprint: true
256       - email-jenkins-admins-on-failure
257
258 # -------------------------
259 # builder macros
260 # -------------------------
261 - builder:
262     name: dovetail-run
263     builders:
264       - shell:
265           !include-raw: ./dovetail-run.sh
266
267 - builder:
268     name: dovetail-cleanup
269     builders:
270       - shell:
271           !include-raw: ./dovetail-cleanup.sh