[compass] create new job for verify of colorado
[releng.git] / jjb / compass4nfv / compass-project-jobs.yml
1 - project:
2
3     name: compass-project
4
5     installer: 'compass'
6
7     project: 'compass4nfv'
8
9     slave-label: 'compass-virtual'
10
11     stream:
12         - master:
13             branch: '{stream}'
14             gs-pathname: ''
15         - colorado:
16             branch: 'stable/{stream}'
17             gs-pathname: '/{stream}'
18
19
20     jobs:
21         - 'compass-verify-{stream}'
22         - 'compass-build-iso-{stream}'
23         - 'compass-build-ppa-{stream}'
24         - 'compass-verify-deploy-{stream}'
25
26
27 ########################
28 # job templates
29 ########################
30 - job-template:
31     name: 'compass-verify-{stream}'
32
33     disabled: false
34
35     concurrent: true
36
37     wrappers:
38         - timeout:
39             timeout: 120
40             fail: true
41
42     properties:
43         - throttle:
44             enabled: true
45             max-per-node: 1
46             option: 'project'
47         - build-blocker:
48             use-build-blocker: true
49             blocking-jobs:
50                 - 'compass-verify-[^-]*'
51                 - 'compass-os-.*?-virtual-daily-.*?'
52             block-level: 'NODE'
53
54     parameters:
55         - project-parameter:
56             project: '{project}'
57         - gerrit-parameter:
58             branch: '{branch}'
59         - compass-project-parameter:
60             installer: '{installer}'
61             gs-pathname: '{gs-pathname}'
62         - '{installer}-defaults'
63         - '{slave-label}-defaults'
64         - string:
65             name: DEPLOY_SCENARIO
66             default: 'os-nosdn-nofeature-ha'
67
68     triggers:
69         - gerrit:
70             trigger-on:
71                 - patchset-created-event:
72                     exclude-drafts: 'false'
73                     exclude-trivial-rebase: 'false'
74                     exclude-no-code-change: 'false'
75                 - draft-published-event
76                 - comment-added-contains-event:
77                     comment-contains-value: 'recheck'
78                 - comment-added-contains-event:
79                     comment-contains-value: 'reverify'
80             projects:
81               - project-compare-type: 'ANT'
82                 project-pattern: '{project}'
83                 branches:
84                   - branch-compare-type: 'ANT'
85                     branch-pattern: '**/{branch}'
86                 file-paths:
87                   - compare-type: ANT
88                     pattern: '**/*'
89                 forbidden-file-paths:
90                   - compare-type: ANT
91                     pattern: 'docs/**'
92
93     builders:
94         - trigger-builds:
95             - project: 'compass-verify-deploy-{stream}'
96               current-parameters: true
97               same-node: true
98               block: true
99         - trigger-builds:
100             - project: 'functest-{slave-label}-suite-{stream}'
101               current-parameters: true
102               predefined-parameters:
103                 FUNCTEST_SUITE_NAME=healthcheck
104               same-node: true
105               block: true
106               block-thresholds:
107                 build-step-failure-threshold: 'never'
108                 failure-threshold: 'never'
109                 unstable-threshold: 'FAILURE'
110
111 - job-template:
112     name: 'compass-verify-deploy-{stream}'
113
114     concurrent: true
115
116     properties:
117         - throttle:
118             enabled: true
119             max-per-node: 1
120             option: 'project'
121         - build-blocker:
122             use-build-blocker: true
123             blocking-jobs:
124                 - 'compass-deploy-virtual-daily-.*?'
125             block-level: 'NODE'
126
127     scm:
128         - gerrit-trigger-scm:
129             credentials-id: '{ssh-credentials}'
130             refspec: '$GERRIT_REFSPEC'
131             choosing-strategy: 'gerrit'
132
133     builders:
134         - shell:
135             !include-raw-escape: ./compass-build.sh
136         - shell:
137             !include-raw-escape: ./compass-deploy.sh
138
139     publishers:
140         - archive:
141             artifacts: 'ansible.log'
142             allow-empty: 'true'
143             fingerprint: true
144
145 - job-template:
146     name: 'compass-build-iso-{stream}'
147
148     concurrent: true
149
150     properties:
151         - throttle:
152             enabled: true
153             max-total: 1
154             max-per-node: 1
155             option: 'project'
156
157     parameters:
158         - project-parameter:
159             project: '{project}'
160         - compass-project-parameter:
161             installer: '{installer}'
162             gs-pathname: '{gs-pathname}'
163         - 'opnfv-build-ubuntu-defaults'
164         - '{installer}-defaults'
165
166     scm:
167         - git-scm:
168             credentials-id: '{ssh-credentials}'
169             refspec: ''
170             branch: '{branch}'
171
172     triggers:
173         - timed: 'H 8 * * *'
174
175     builders:
176         - shell:
177             !include-raw-escape: ./compass-build.sh
178         - shell:
179             !include-raw-escape: ./compass-upload-artifact.sh
180         - shell:
181             !include-raw-escape: ./compass-workspace-cleanup.sh
182
183 - job-template:
184     name: 'compass-build-ppa-{stream}'
185
186     description: "build ppa(using docker) in huawei lab"
187
188     node: huawei-build
189
190     concurrent: true
191
192     properties:
193         - throttle:
194             enabled: true
195             max-total: 1
196             max-per-node: 1
197             option: 'project'
198
199     parameters:
200         - project-parameter:
201             project: '{project}'
202         - compass-project-parameter:
203             installer: '{installer}'
204             gs-pathname: '{gs-pathname}'
205         - '{node}-defaults'
206         - '{installer}-defaults'
207     scm:
208         - git-scm:
209             credentials-id: '{ssh-credentials}'
210             refspec: ''
211             branch: '{branch}'
212
213     builders:
214         - shell:
215             !include-raw-escape: ./compass-makeppa.sh
216
217
218
219 ########################
220 # parameter macros
221 ########################
222 - parameter:
223     name: compass-project-parameter
224     parameters:
225         - string:
226             name: BUILD_DIRECTORY
227             default: $WORKSPACE/build_output
228             description: "Directory where the build artifact will be located upon the completion of the build."
229         - string:
230             name: CACHE_DIRECTORY
231             default: "$HOME/opnfv/cache/$PROJECT{gs-pathname}"
232             description: "Directory where the cache to be used during the build is located."
233         - string:
234             name: GS_URL
235             default: '$GS_BASE{gs-pathname}'
236             description: "URL to Google Storage."
237         - string:
238             name: PPA_REPO
239             default: "http://205.177.226.237:9999{gs-pathname}"
240         - string:
241             name: PPA_CACHE
242             default: "$WORKSPACE/work/repo/"
243         - choice:
244             name: COMPASS_OPENSTACK_VERSION
245             choices:
246                 - 'mitaka'
247                 - 'liberty'
248         - choice:
249             name: COMPASS_OS_VERSION
250             choices:
251                 - 'trusty'
252                 - 'centos7'
253