[Dovetail CI] change dovetail CI jobs on Compass
[releng.git] / jjb / compass4nfv / compass-verify-jobs.yml
1 ---
2 - project:
3     name: 'compass-verify-jobs'
4
5     project: 'compass4nfv'
6
7     installer: 'compass'
8     #####################################
9     # branch definitions
10     #####################################
11     stream:
12       - master:
13           branch: '{stream}'
14           gs-pathname: ''
15           ppa-pathname: '/{stream}'
16           disabled: false
17           openstack-version: 'ocata'
18           branch-type: 'master'
19       - euphrates:
20           branch: 'stable/{stream}'
21           gs-pathname: '/{stream}'
22           ppa-pathname: '/{stream}'
23           disabled: false
24           openstack-version: 'ocata'
25           branch-type: 'master'
26
27     distro:
28       - 'xenial':
29           disabled: false
30           os-version: 'xenial'
31           openstack-os-version: ''
32       - 'centos7':
33           disabled: true
34           os-version: 'centos7'
35           openstack-os-version: ''
36     #####################################
37     # patch verification phases
38     #####################################
39     phase:
40       - 'basic'
41       - 'deploy-virtual'
42     #####################################
43     # jobs
44     #####################################
45     jobs:
46       - 'compass-verify-{distro}-{stream}'
47       - 'compass-verify-k8-{distro}-{stream}'
48       - 'compass-verify-{phase}-{distro}-{stream}'
49 #####################################
50 # job templates
51 #####################################
52 - job-template:
53     name: 'compass-verify-{distro}-{stream}'
54
55     project-type: multijob
56
57     disabled: '{obj:disabled}'
58
59     concurrent: true
60
61     properties:
62       - logrotate-default
63       - throttle:
64           enabled: true
65           max-total: 4
66           max-per-node: 1
67           option: 'project'
68       - build-blocker:
69           use-build-blocker: true
70           blocking-jobs:
71             - 'compass-verify-[^-]*-[^-]*'
72             - 'compass-os-.*?-virtual-daily-.*?'
73           block-level: 'NODE'
74
75     wrappers:
76       - ssh-agent-wrapper
77       - timeout:
78           timeout: 360
79           fail: true
80       - fix-workspace-permissions
81
82     scm:
83       - git-scm-gerrit
84
85     triggers:
86       - gerrit:
87           server-name: 'gerrit.opnfv.org'
88           trigger-on:
89             - patchset-created-event:
90                 exclude-drafts: 'false'
91                 exclude-trivial-rebase: 'false'
92                 exclude-no-code-change: 'false'
93             - draft-published-event
94             - comment-added-contains-event:
95                 comment-contains-value: 'recheck'
96             - comment-added-contains-event:
97                 comment-contains-value: 'reverify'
98           projects:
99             - project-compare-type: 'ANT'
100               project-pattern: '{project}'
101               branches:
102                 - branch-compare-type: 'ANT'
103                   branch-pattern: '**/{branch}'
104               file-paths:
105                 - compare-type: ANT
106                   pattern: '**/*'
107               disable-strict-forbidden-file-verification: 'true'
108               forbidden-file-paths:
109                 - compare-type: ANT
110                   pattern: 'docs/**'
111           readable-message: true
112
113     parameters:
114       - project-parameter:
115           project: '{project}'
116           branch: '{branch}'
117       - 'compass-virtual-{branch-type}-defaults'
118       - '{installer}-defaults'
119       - 'compass-verify-defaults':
120           installer: '{installer}'
121           gs-pathname: '{gs-pathname}'
122           ppa-pathname: '{ppa-pathname}'
123       - string:
124           name: DEPLOY_SCENARIO
125           default: 'os-nosdn-nofeature-ha'
126
127     builders:
128       - description-setter:
129           description: "Built on $NODE_NAME"
130       - multijob:
131           name: basic
132           condition: SUCCESSFUL
133           projects:
134             - name: 'opnfv-lint-verify-{stream}'
135               current-parameters: true
136               node-parameters: true
137               kill-phase-on: FAILURE
138               abort-all-job: true
139       - multijob:
140           name: deploy-virtual
141           condition: SUCCESSFUL
142           projects:
143             - name: 'compass-verify-deploy-virtual-{distro}-{stream}'
144               current-parameters: true
145               predefined-parameters: |
146                 COMPASS_OS_VERSION={os-version}
147                 COMPASS_OPENSTACK_VERSION={openstack-version}
148               node-parameters: true
149               kill-phase-on: FAILURE
150               abort-all-job: true
151       - multijob:
152           name: smoke-test
153           condition: SUCCESSFUL
154           projects:
155             - name: 'functest-compass-virtual-suite-{stream}'
156               current-parameters: false
157               predefined-parameters: |
158                 FUNCTEST_MODE=tier
159                 FUNCTEST_TIER=healthcheck
160                 DEPLOY_SCENARIO=os-nosdn-nofeature-ha
161               node-parameters: true
162               kill-phase-on: NEVER
163               abort-all-job: true
164             - name: 'functest-compass-virtual-suite-{stream}'
165               current-parameters: false
166               predefined-parameters: |
167                 FUNCTEST_MODE=testcase
168                 FUNCTEST_SUITE_NAME=vping_ssh
169                 DEPLOY_SCENARIO=os-nosdn-nofeature-ha
170               node-parameters: true
171               kill-phase-on: NEVER
172               abort-all-job: true
173
174 - job-template:
175     name: 'compass-verify-k8-{distro}-{stream}'
176
177     project-type: multijob
178
179     disabled: '{obj:disabled}'
180
181     concurrent: true
182
183     properties:
184       - logrotate-default
185       - throttle:
186           enabled: true
187           max-total: 4
188           max-per-node: 1
189           option: 'project'
190       - build-blocker:
191           use-build-blocker: true
192           blocking-jobs:
193             - 'compass-verify-[^-]*-[^-]*'
194             - 'compass-os-.*?-virtual-daily-.*?'
195           block-level: 'NODE'
196
197     wrappers:
198       - ssh-agent-wrapper
199       - timeout:
200           timeout: 240
201           fail: true
202       - fix-workspace-permissions
203
204     scm:
205       - git-scm-gerrit
206
207     triggers:
208       - gerrit:
209           server-name: 'gerrit.opnfv.org'
210           trigger-on:
211             - comment-added-contains-event:
212                 comment-contains-value: 'check k8'
213             - comment-added-contains-event:
214                 comment-contains-value: 'verify k8'
215             - comment-added-contains-event:
216                 comment-contains-value: 'check kubernetes'
217             - comment-added-contains-event:
218                 comment-contains-value: 'verify kubernetes'
219           projects:
220             - project-compare-type: 'ANT'
221               project-pattern: '{project}'
222               branches:
223                 - branch-compare-type: 'ANT'
224                   branch-pattern: '**/{branch}'
225               file-paths:
226                 - compare-type: ANT
227                   pattern: '**/*'
228               forbidden-file-paths:
229                 - compare-type: ANT
230                   pattern: 'docs/**'
231           readable-message: true
232
233     parameters:
234       - project-parameter:
235           project: '{project}'
236           branch: '{branch}'
237       - 'compass-virtual-{branch-type}-defaults'
238       - '{installer}-defaults'
239       - 'compass-verify-defaults':
240           installer: '{installer}'
241           gs-pathname: '{gs-pathname}'
242           ppa-pathname: '{ppa-pathname}'
243       - string:
244           name: DEPLOY_SCENARIO
245           default: 'k8-nosdn-nofeature-ha'
246
247     builders:
248       - description-setter:
249           description: "Built on $NODE_NAME"
250       - multijob:
251           name: basic
252           condition: SUCCESSFUL
253           projects:
254             - name: 'opnfv-lint-verify-{stream}'
255               current-parameters: true
256               node-parameters: true
257               kill-phase-on: FAILURE
258               abort-all-job: true
259       - multijob:
260           name: deploy-virtual
261           condition: SUCCESSFUL
262           projects:
263             - name: 'compass-verify-deploy-virtual-{distro}-{stream}'
264               current-parameters: true
265               predefined-parameters: |
266                 COMPASS_OS_VERSION={os-version}
267               node-parameters: true
268               kill-phase-on: FAILURE
269               abort-all-job: true
270
271 - job-template:
272     name: 'compass-verify-{phase}-{distro}-{stream}'
273
274     disabled: '{obj:disabled}'
275
276     concurrent: true
277
278     properties:
279       - logrotate-default
280       - throttle:
281           enabled: true
282           max-per-node: 1
283           option: 'project'
284       - build-blocker:
285           use-build-blocker: true
286           blocking-jobs:
287             - 'compass-os-.*?-virtual-daily-.*?'
288             - 'compass-verify-deploy-.*'
289             - 'functest-compass-virtual.*'
290           block-level: 'NODE'
291
292     wrappers:
293       - ssh-agent-wrapper
294       - timeout:
295           timeout: 360
296           fail: true
297       - fix-workspace-permissions
298
299     scm:
300       - git-scm-gerrit
301
302     builders:
303       - description-setter:
304           description: "Built on $NODE_NAME"
305       - '{project}-verify-{phase}-macro'
306
307 #####################################
308 # builder macros
309 #####################################
310 - builder:
311     name: 'compass4nfv-verify-basic-macro'
312     builders:
313       - shell: |
314           #!/bin/bash
315
316           echo "Not activated!"
317
318 - builder:
319     name: 'compass4nfv-verify-deploy-virtual-macro'
320     builders:
321       - shell:
322           !include-raw: ./compass-build.sh
323       - shell:
324           !include-raw: ./compass-deploy.sh
325 #####################################
326 # parameter macros
327 #####################################
328 - parameter:
329     name: 'compass-verify-defaults'
330     parameters:
331       - string:
332           name: BUILD_DIRECTORY
333           default: $WORKSPACE/build_output
334           description: "Directory where the build artifact will be located upon the completion of the build."
335       - string:
336           name: CACHE_DIRECTORY
337           default: "$HOME/opnfv/cache/$PROJECT{gs-pathname}"
338           description: "Directory where the cache to be used during the build is located."
339       - string:
340           name: GS_URL
341           default: '$GS_BASE{gs-pathname}'
342           description: "URL to Google Storage."
343       - string:
344           name: PPA_REPO
345           default: "http://artifacts.opnfv.org/compass4nfv/package{ppa-pathname}"
346       - string:
347           name: PPA_CACHE
348           default: "$WORKSPACE/work/repo/"
349       - choice:
350           name: COMPASS_OS_VERSION
351           choices:
352             - 'xenial'
353             - 'centos7'