Merge "add dashboard method to test result collection API + add new fields in pod...
[releng.git] / jjb / fuel / fuel.yml
1 ########################
2 # Job configuration for fuel
3 ########################
4 - project:
5
6     name: fuel
7
8     project: 'fuel'
9
10     installer: 'fuel'
11
12     jobs:
13         - 'fuel-verify-build-{stream}'
14         - 'fuel-verify-virtual-deploy-{stream}'
15         - 'fuel-merge-build-{stream}'
16         - 'fuel-merge-virtual-deploy-{stream}'
17         - 'fuel-daily-{stream}'
18         - 'fuel-build-{stream}'
19         - 'fuel-deploy-{stream}'
20         - 'fuel-lab-reconfig-{stream}'
21
22     stream:
23         - master:
24             branch: 'master'
25             gs-pathname: ''
26
27 ########################
28 # job templates
29 ########################
30
31 - job-template:
32     name: 'fuel-verify-build-{stream}'
33
34     project-type: freestyle
35
36     node: ericsson-build
37
38     concurrent: true
39
40     properties:
41         - throttle:
42             enabled: true
43             max-total: 3
44
45     logrotate:
46         daysToKeep: 30
47         numToKeep: 10
48         artifactDaysToKeep: -1
49         artifactNumToKeep: -1
50
51     parameters:
52         - project-parameter:
53             project: '{project}'
54         - gerrit-parameter:
55             branch: '{branch}'
56         - fuel-parameter:
57             installer: '{installer}'
58             gs-pathname: '{gs-pathname}'
59
60     scm:
61         - gerrit-trigger-scm:
62             credentials-id: '{ssh-credentials}'
63             refspec: '$GERRIT_REFSPEC'
64             choosing-strategy: 'gerrit'
65
66     wrappers:
67         - ssh-agent-credentials:
68             user: '{ssh-credentials}'
69
70     triggers:
71         - gerrit:
72             trigger-on:
73                 - patchset-created-event:
74                     exclude-drafts: 'false'
75                     exclude-trivial-rebase: 'false'
76                     exclude-no-code-change: 'false'
77                 - draft-published-event
78                 - comment-added-contains-event:
79                     comment-contains-value: 'recheck'
80                 - comment-added-contains-event:
81                     comment-contains-value: 'reverify'
82             projects:
83               - project-compare-type: 'ANT'
84                 project-pattern: '{project}'
85                 branches:
86                   - branch-compare-type: 'ANT'
87                     branch-pattern: '**/{branch}'
88
89     builders:
90         - shell:
91             !include-raw ./fuel-build.sh
92 #        - shell:
93 #            !include-raw ./fuel-upload-artifact.sh
94 #        - shell:
95 #            !include-raw ./fuel-workspace-cleanup.sh
96
97 - job-template:
98     name: 'fuel-verify-virtual-deploy-{stream}'
99
100     project-type: freestyle
101
102     node: ericsson-build
103
104     concurrent: true
105
106     properties:
107         - throttle:
108             enabled: true
109             max-total: 2
110             max-per-node: 1
111
112     logrotate:
113         daysToKeep: 30
114         numToKeep: 10
115         artifactDaysToKeep: -1
116         artifactNumToKeep: -1
117
118     parameters:
119         - project-parameter:
120             project: '{project}'
121         - gerrit-parameter:
122             branch: '{branch}'
123         - fuel-parameter:
124             installer: '{installer}'
125             gs-pathname: '{gs-pathname}'
126
127     scm:
128         - gerrit-trigger-scm:
129             credentials-id: '{ssh-credentials}'
130             refspec: '$GERRIT_REFSPEC'
131             choosing-strategy: 'gerrit'
132
133     wrappers:
134         - ssh-agent-credentials:
135             user: '{ssh-credentials}'
136
137     triggers:
138         - gerrit:
139             trigger-on:
140                 - patchset-created-event:
141                     exclude-drafts: 'false'
142                     exclude-trivial-rebase: 'false'
143                     exclude-no-code-change: 'false'
144                 - draft-published-event
145                 - comment-added-contains-event:
146                     comment-contains-value: 'recheck'
147                 - comment-added-contains-event:
148                     comment-contains-value: 'reverify'
149             projects:
150               - project-compare-type: 'ANT'
151                 project-pattern: '{project}'
152                 branches:
153                   - branch-compare-type: 'ANT'
154                     branch-pattern: '**/{branch}'
155             dependency-jobs: 'fuel-verify-build-{stream}'
156
157     builders:
158 #        - shell:
159 #            !include-raw ./fuel-download-artifact.sh
160         - shell:
161             !include-raw ./fuel-virtual-deploy.sh
162 #        - shell:
163 #            !include-raw ./fuel-workspace-cleanup.sh
164
165 - job-template:
166     name: 'fuel-merge-build-{stream}'
167
168     project-type: freestyle
169
170     node: ericsson-build
171
172     concurrent: true
173
174     properties:
175         - throttle:
176             enabled: true
177             max-total: 2
178
179     logrotate:
180         daysToKeep: 30
181         numToKeep: 40
182         artifactDaysToKeep: -1
183         artifactNumToKeep: 5
184
185     parameters:
186         - project-parameter:
187             project: '{project}'
188         - gerrit-parameter:
189             branch: '{branch}'
190         - fuel-parameter:
191             installer: '{installer}'
192             gs-pathname: ''
193     scm:
194         - gerrit-trigger-scm:
195             credentials-id: '{ssh-credentials}'
196             refspec: ''
197             choosing-strategy: 'default'
198
199     wrappers:
200         - ssh-agent-credentials:
201             user: '{ssh-credentials}'
202
203     triggers:
204         - gerrit:
205             trigger-on:
206                 - change-merged-event
207                 - comment-added-contains-event:
208                     comment-contains-value: 'remerge'
209             projects:
210               - project-compare-type: 'ANT'
211                 project-pattern: '{project}'
212                 branches:
213                     - branch-compare-type: 'ANT'
214                       branch-pattern: '**/{branch}'
215
216     builders:
217         - shell:
218             !include-raw ./fuel-build.sh
219 #        - shell:
220 #            !include-raw ./fuel-upload-artifact.sh
221 #        - shell:
222 #            !include-raw ./fuel-workspace-cleanup.sh
223
224 - job-template:
225     name: 'fuel-merge-virtual-deploy-{stream}'
226
227     project-type: freestyle
228
229     node: ericsson-build
230
231     concurrent: true
232
233     properties:
234         - throttle:
235             enabled: true
236             max-total: 2
237             max-per-node: 1
238
239     logrotate:
240         daysToKeep: 30
241         numToKeep: 40
242         artifactDaysToKeep: -1
243         artifactNumToKeep: 5
244
245     parameters:
246         - project-parameter:
247             project: '{project}'
248         - gerrit-parameter:
249             branch: '{branch}'
250         - fuel-parameter:
251             installer: '{installer}'
252             gs-pathname: ''
253     scm:
254         - gerrit-trigger-scm:
255             credentials-id: '{ssh-credentials}'
256             refspec: ''
257             choosing-strategy: 'default'
258
259     wrappers:
260         - ssh-agent-credentials:
261             user: '{ssh-credentials}'
262
263     triggers:
264         - gerrit:
265             trigger-on:
266                 - change-merged-event
267                 - comment-added-contains-event:
268                     comment-contains-value: 'remerge'
269             projects:
270               - project-compare-type: 'ANT'
271                 project-pattern: '{project}'
272                 branches:
273                     - branch-compare-type: 'ANT'
274                       branch-pattern: '**/{branch}'
275             dependency-jobs: 'fuel-merge-build-{stream}'
276
277     builders:
278 #        - shell:
279 #            !include-raw ./fuel-download-artifact.sh
280         - shell:
281             !include-raw ./fuel-virtual-deploy.sh
282 #        - shell:
283 #            !include-raw ./fuel-workspace-cleanup.sh
284
285 - job-template:
286     name: 'fuel-daily-{stream}'
287
288     project-type: freestyle
289
290     node: ericsson-build
291
292     disabled: false
293
294     triggers:
295         - 'fuel-{strem}-trigger'
296
297     parameters:
298         - project-parameter:
299             project: '{project}'
300         - fuel-parameter:
301             installer: '{installer}'
302             gs-pathname: '{gs-pathname}'
303
304     scm:
305         - git-scm:
306             credentials-id: '{ssh-credentials}'
307             refspec: ''
308             branch: '{branch}'
309
310     logrotate:
311         daysToKeep: '{build-days-to-keep}'
312         numToKeep: '{build-num-to-keep}'
313         artifactDaysToKeep: '{build-artifact-days-to-keep}'
314         artifactNumToKeep: '{build-artifact-num-to-keep}'
315
316     builders:
317         - trigger-builds:
318           - project: 'fuel-build-{stream}'
319             git-revision: true
320             block: true
321         - trigger-builds:
322           - project: 'fuel-deploy-{stream}'
323             git-revision: true
324             block: true
325         - trigger-builds:
326           - project: 'functest-fuel-{stream}'
327             block: true
328             block-thresholds:
329                 build-step-failure-threshold: 'never'
330                 failure-threshold: 'never'
331                 unstable-threshold: 'FAILURE'
332         - trigger-builds:
333           - project: 'yardstick-fuel-{stream}'
334             block: true
335             block-thresholds:
336                 build-step-failure-threshold: 'never'
337                 failure-threshold: 'never'
338                 unstable-threshold: 'FAILURE'
339
340     triggers:
341         - 'fuel-{stream}-daily-trigger'
342
343 - job-template:
344     name: 'fuel-build-{stream}'
345
346     project-type: freestyle
347
348     node: ericsson-build
349
350     logrotate:
351         daysToKeep: 30
352         numToKeep: 10
353         artifactDaysToKeep: -1
354         artifactNumToKeep: -1
355
356     parameters:
357         - project-parameter:
358             project: '{project}'
359         - fuel-parameter:
360             installer: '{installer}'
361             gs-pathname: '{gs-pathname}'
362
363     scm:
364         - git-scm:
365             credentials-id: '{ssh-credentials}'
366             refspec: ''
367             branch: '{branch}'
368
369     builders:
370         - shell:
371             !include-raw ./fuel-build.sh
372         - shell:
373             !include-raw ./fuel-upload-artifact.sh
374         - shell:
375             !include-raw ./fuel-workspace-cleanup.sh
376
377     publishers:
378         - email:
379             recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com
380
381 - job-template:
382     name: 'fuel-deploy-{stream}'
383
384     project-type: freestyle
385
386     disabled: false
387
388     node: opnfv-jump-2
389
390     parameters:
391         - project-parameter:
392             project: '{project}'
393         - fuel-parameter:
394             installer: '{installer}'
395             gs-pathname: '{gs-pathname}'
396         - string:
397             name: GIT_BASE
398             default: ssh://gerrit.opnfv.org:29418/$PROJECT
399             description: "POD2 has some issues with cloning using https so that's why GIT_BASE is overriden here again."
400
401     scm:
402         - git-scm:
403             credentials-id: '{ssh-credentials}'
404             refspec: ''
405             branch: '{branch}'
406
407     logrotate:
408         daysToKeep: 30
409         numToKeep: 10
410         artifactDaysToKeep: -1
411         artifactNumToKeep: -1
412
413     builders:
414         - shell:
415             !include-raw ./fuel-download-artifact.sh
416         - shell:
417             !include-raw ./fuel-deploy.sh
418
419     publishers:
420         - email:
421             recipients: jonas.bjurel@ericsson.com stefan.k.berg@ericsson.com
422
423 - job-template:
424     name: 'fuel-lab-reconfig-{stream}'
425
426     project-type: freestyle
427
428     disabled: true
429
430     node: master
431
432     logrotate:
433         daysToKeep: 30
434         numToKeep: 10
435         artifactDaysToKeep: -1
436         artifactNumToKeep: -1
437
438     parameters:
439         - project-parameter:
440             project: '{project}'
441         - fuel-parameter:
442             installer: '{installer}'
443             gs-pathname: '{gs-pathname}'
444         - string:
445             name: GIT_BASE
446             default: ssh://gerrit.opnfv.org:29418/$PROJECT
447             description: "Used for overriding the GIT URL coming from parameters macro."
448
449     scm:
450         - git-scm:
451             credentials-id: '{ssh-credentials}'
452             refspec: ''
453             branch: '{branch}'
454
455     properties:
456         - build-blocker:
457             use-build-blocker: true
458             blocking-jobs:
459                 - "apex-daily.*"
460
461     builders:
462         - shell:
463             !include-raw ./fuel-lab-reconfig.sh
464
465 ########################
466 # parameter macros
467 ########################
468 - parameter:
469     name: fuel-parameter
470     parameters:
471         - string:
472             name: INSTALLER
473             default: '{installer}'
474             description: "Installer to use."
475         - string:
476             name: BUILD_DIRECTORY
477             default: $WORKSPACE/build_output
478             description: "Directory where the build artifact will be located upon the completion of the build."
479         - string:
480             name: CACHE_DIRECTORY
481             default: $HOME/opnfv/cache/$INSTALLER
482             description: "Directory where the cache to be used during the build is located."
483         - string:
484             name: GIT_BASE
485             default: https://gerrit.opnfv.org/gerrit/$PROJECT
486             description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW."
487         - string:
488             name: GS_URL
489             default: artifacts.opnfv.org/$PROJECT{gs-pathname}
490             description: "URL to Google Storage."
491
492 ########################
493 # trigger macros
494 ########################
495 - trigger:
496     name: 'fuel-master-daily-trigger'
497     triggers:
498         - timed: '0 3 * * *'