fuel: Enable od_l2-bgpvpn-ha scenario trigger
[releng.git] / jjb / fuel / fuel-project-jobs.yml
1 ########################
2 # Job configuration for fuel
3 ########################
4 - project:
5     name: fuel-project-jobs
6
7     project: 'fuel'
8
9     installer: 'fuel'
10
11     stream:
12         - master:
13             branch: '{stream}'
14             gs-pathname: ''
15         - brahmaputra:
16             branch: 'stable/{stream}'
17             gs-pathname: '/{stream}'
18
19     jobs:
20         - 'fuel-build-daily-{stream}'
21         - 'fuel-verify-build-{stream}'
22         - 'fuel-merge-build-{stream}'
23         - 'fuel-merge-deploy-virtual-{stream}'
24         - 'fuel-deploy-generic-daily-{stream}'
25
26 ########################
27 # job templates
28 ########################
29 - job-template:
30     name: 'fuel-build-daily-{stream}'
31
32     concurrent: false
33
34     properties:
35         - throttle:
36             enabled: true
37             max-total: 1
38             max-per-node: 1
39
40     parameters:
41         - project-parameter:
42             project: '{project}'
43         - 'ericsson-ca-build-1-defaults'
44         - '{installer}-defaults'
45         - fuel-project-parameter:
46             gs-pathname: '{gs-pathname}'
47
48     scm:
49         - git-scm:
50             credentials-id: '{ssh-credentials}'
51             refspec: ''
52             branch: '{branch}'
53
54     triggers:
55         - pollscm:
56             cron: '0 H/4 * * *'
57
58     wrappers:
59         - timeout:
60             timeout: 360
61             fail: true
62
63     builders:
64         - shell:
65             !include-raw-escape: ./fuel-build.sh
66         - shell:
67             !include-raw-escape: ./fuel-upload-artifact.sh
68         - shell:
69             !include-raw-escape: ./fuel-workspace-cleanup.sh
70
71     publishers:
72         - email:
73             recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com
74
75 - job-template:
76     name: 'fuel-verify-build-{stream}'
77
78     concurrent: true
79
80     properties:
81         - throttle:
82             enabled: true
83             max-total: 3
84
85     parameters:
86         - project-parameter:
87             project: '{project}'
88         - gerrit-parameter:
89             branch: '{branch}'
90         - 'ericsson-ca-build-1-defaults'
91         - '{installer}-defaults'
92         - fuel-project-parameter:
93             gs-pathname: '{gs-pathname}'
94
95     scm:
96         - gerrit-trigger-scm:
97             credentials-id: '{ssh-credentials}'
98             refspec: '$GERRIT_REFSPEC'
99             choosing-strategy: 'gerrit'
100
101     wrappers:
102         - ssh-agent-credentials:
103             users: '{ssh-credentials}'
104         - timeout:
105             timeout: 360
106             fail: true
107
108     triggers:
109         - gerrit:
110             trigger-on:
111                 - patchset-created-event:
112                     exclude-drafts: 'false'
113                     exclude-trivial-rebase: 'false'
114                     exclude-no-code-change: 'false'
115                 - draft-published-event
116                 - comment-added-contains-event:
117                     comment-contains-value: 'recheck'
118                 - comment-added-contains-event:
119                     comment-contains-value: 'reverify'
120             projects:
121               - project-compare-type: 'ANT'
122                 project-pattern: '{project}'
123                 branches:
124                   - branch-compare-type: 'ANT'
125                     branch-pattern: '**/{branch}'
126                 file-paths:
127                   - compare-type: ANT
128                     pattern: 'ci/**'
129                   - compare-type: ANT
130                     pattern: 'build/**'
131                   - compare-type: ANT
132                     pattern: 'deploy/**'
133                 forbidden-file-paths:
134                   - compare-type: ANT
135                     pattern: 'docs/**'
136             readable-message: true
137
138     builders:
139         - shell:
140             !include-raw-escape: ./fuel-build.sh
141         - shell:
142             !include-raw-escape: ./fuel-workspace-cleanup.sh
143
144 - job-template:
145     name: 'fuel-merge-build-{stream}'
146
147     concurrent: true
148
149     properties:
150         - throttle:
151             enabled: true
152             max-total: 2
153
154     parameters:
155         - project-parameter:
156             project: '{project}'
157         - gerrit-parameter:
158             branch: '{branch}'
159         - 'ericsson-ca-build-1-defaults'
160         - '{installer}-defaults'
161         - fuel-project-parameter:
162             gs-pathname: '{gs-pathname}'
163     scm:
164         - gerrit-trigger-scm:
165             credentials-id: '{ssh-credentials}'
166             refspec: ''
167             choosing-strategy: 'default'
168
169     wrappers:
170         - ssh-agent-credentials:
171             users: '{ssh-credentials}'
172         - timeout:
173             timeout: 360
174             fail: true
175
176     triggers:
177         - gerrit:
178             trigger-on:
179                 - change-merged-event
180                 - comment-added-contains-event:
181                     comment-contains-value: 'remerge'
182             projects:
183               - project-compare-type: 'ANT'
184                 project-pattern: '{project}'
185                 branches:
186                     - branch-compare-type: 'ANT'
187                       branch-pattern: '**/{branch}'
188                 file-paths:
189                   - compare-type: ANT
190                     pattern: 'ci/**'
191                   - compare-type: ANT
192                     pattern: 'build/**'
193                   - compare-type: ANT
194                     pattern: 'deploy/**'
195                 forbidden-file-paths:
196                   - compare-type: ANT
197                     pattern: 'docs/**'
198
199     builders:
200         - shell:
201             !include-raw-escape: ./fuel-build.sh
202         - shell:
203             !include-raw-escape: ./fuel-upload-artifact.sh
204         - shell:
205             !include-raw-escape: ./fuel-workspace-cleanup.sh
206
207 - job-template:
208     name: 'fuel-merge-deploy-virtual-{stream}'
209
210     concurrent: true
211
212     disabled: false
213
214     properties:
215         - throttle:
216             enabled: true
217             max-total: 2
218             max-per-node: 1
219         - build-blocker:
220             use-build-blocker: true
221             blocking-jobs:
222                 - 'fuel-os-.*?-virtual-daily-.*'
223                 - 'fuel-merge-deploy-virtual-.*'
224             block-level: 'NODE'
225
226     parameters:
227         - project-parameter:
228             project: '{project}'
229         - gerrit-parameter:
230             branch: '{branch}'
231         - 'virtual-defaults':
232             installer: '{installer}'
233         - '{installer}-defaults'
234         - fuel-project-parameter:
235             gs-pathname: '{gs-pathname}'
236     scm:
237         - gerrit-trigger-scm:
238             credentials-id: '{ssh-credentials}'
239             refspec: ''
240             choosing-strategy: 'default'
241
242     wrappers:
243         - ssh-agent-credentials:
244             users: '{ssh-credentials}'
245
246     triggers:
247         - gerrit:
248             trigger-on:
249                 - change-merged-event
250                 - comment-added-contains-event:
251                     comment-contains-value: 'remerge'
252             projects:
253               - project-compare-type: 'ANT'
254                 project-pattern: '{project}'
255                 branches:
256                     - branch-compare-type: 'ANT'
257                       branch-pattern: '**/{branch}'
258                 file-paths:
259                   - compare-type: ANT
260                     pattern: 'ci/**'
261                   - compare-type: ANT
262                     pattern: 'build/**'
263                   - compare-type: ANT
264                     pattern: 'deploy/**'
265                 forbidden-file-paths:
266                   - compare-type: ANT
267                     pattern: 'docs/**'
268             dependency-jobs: 'fuel-merge-build-{stream}'
269
270     builders:
271         - shell:
272             !include-raw-escape: ./fuel-download-artifact.sh
273         - shell:
274             !include-raw-escape: ./fuel-deploy.sh
275         - shell:
276             !include-raw-escape: ./fuel-workspace-cleanup.sh
277
278     publishers:
279         - email:
280             recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com
281
282 - job-template:
283     name: 'fuel-deploy-generic-daily-{stream}'
284
285     concurrent: false
286
287     disabled: true
288
289     properties:
290         - throttle:
291             enabled: true
292             max-total: 1
293             max-per-node: 1
294         - build-blocker:
295             use-build-blocker: true
296             blocking-jobs:
297                 - 'fuel-os-.*?-ericsson-pod2-daily-{stream}'
298
299     parameters:
300         - project-parameter:
301             project: '{project}'
302         - 'ericsson-pod2-defaults'
303         - '{installer}-defaults'
304         - string:
305             name: DEPLOY_SCENARIO
306             default: 'os-odl_l2-nofeature-ha'
307         - fuel-project-parameter:
308             gs-pathname: '{gs-pathname}'
309
310     scm:
311         - git-scm:
312             credentials-id: '{ssh-credentials}'
313             refspec: ''
314             branch: '{branch}'
315
316     wrappers:
317         - build-name:
318             name: '$BUILD_NUMBER - POD: $NODE_NAME Scenario: $DEPLOY_SCENARIO'
319
320     builders:
321         - shell:
322             !include-raw-escape: ./fuel-download-artifact.sh
323         - shell:
324             !include-raw-escape: ./fuel-deploy.sh
325
326 ########################
327 # parameter macros
328 ########################
329 - parameter:
330     name: fuel-project-parameter
331     parameters:
332         - string:
333             name: BUILD_DIRECTORY
334             default: $WORKSPACE/build_output
335             description: "Directory where the build artifact will be located upon the completion of the build."
336         - string:
337             name: CACHE_DIRECTORY
338             default: $HOME/opnfv/cache/$INSTALLER_TYPE
339             description: "Directory where the cache to be used during the build is located."
340         - string:
341             name: GS_URL
342             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
343             description: "URL to Google Storage."