job-template fixes for vpp-csit-verify-virl-1604-test-{stream}
[ci-management.git] / jjb / vpp / vpp.yaml
1 - project:
2     name: vpp
3     jobs:
4         - 'vpp-verify-{stream}-{os}'
5         - 'vpp-merge-{stream}-{os}'
6         - 'vpp-verify-image-{stream}-{os}'
7         - 'vpp-docs-merge-{stream}'
8         - 'vpp-docs-verify-{stream}'
9
10     project: 'vpp'
11     os:
12         - ubuntu1404:
13             repo-os-part: 'ubuntu.trusty.main'
14         - ubuntu1604:
15             repo-os-part: 'ubuntu.xenial.main'
16         - centos7:
17             repo-os-part: 'centos7'
18     stream:
19         - master:
20             branch: 'master'
21             repo-stream-part: 'master'
22         - test:
23             branch: 'stable/test'
24             repo-stream-part: 'stable.test'
25         - '1606':
26             branch: 'stable/1606'
27             repo-stream-part: 'stable.1606'
28         - '1609':
29             branch: 'stable/1609'
30             repo-stream-part: 'stable.1609'
31     type:
32         - short
33         - long
34
35 - project:
36     name: vpp-misc
37     jobs:
38         - 'vpp-csit-verify-virl-{stream}'
39         - 'vpp-csit-verify-hw-perf-{stream}-{type}'
40         - 'vpp-csit-verify-virl-1604-test-{stream}'
41     project: 'vpp'
42     stream:
43         - master:
44             branch: 'master'
45             repo-stream-part: 'master'
46         - test:
47             branch: 'stable/test'
48             repo-stream-part: 'stable.test'
49         - '1606':
50             branch: 'stable/1606'
51             repo-stream-part: 'stable.1606'
52         - '1609':
53             branch: 'stable/1609'
54             repo-stream-part: 'stable.1609'
55
56     os: ubuntu1404
57     type:
58         - all
59         - short
60         - long
61
62 - job-template:
63     name: 'vpp-verify-{stream}-{os}'
64
65     project-type: freestyle
66     node: 'verify-{os}'
67     concurrent: true
68
69     logrotate:
70         daysToKeep: '{build-days-to-keep}'
71         numToKeep: '{build-num-to-keep}'
72         artifactDaysToKeep: '{build-artifact-days-to-keep}'
73         artifactNumToKeep: '{build-artifact-num-to-keep}'
74
75     parameters:
76         - project-parameter:
77             project: '{project}'
78         - gerrit-parameter:
79             branch: '{branch}'
80         - os-parameter:
81             os: '{os}'
82
83     scm:
84         - gerrit-trigger-scm:
85             credentials-id: 'jenkins-gerrit-credentials'
86             refspec: '$GERRIT_REFSPEC'
87             choosing-strategy: 'gerrit'
88
89     wrappers:
90         - fdio-infra-wrappers:
91             build-timeout: '{build-timeout}'
92
93     triggers:
94         - gerrit-trigger-patch-submitted:
95             name: '{project}'
96             branch: '{branch}'
97
98     builders:
99         - shell:
100             !include-raw-escape: include-raw-vpp-checkstyle.sh
101         - shell:
102             !include-raw-escape: include-raw-vpp-build.sh
103     publishers:
104         - archive:
105             artifacts: 'build-root/*.rpm,build-root/*.deb'
106             allow-empty: 'true'
107             fingerprint: false
108             only-if-success: true
109             default-excludes: false
110
111 - job-template:
112     name: 'vpp-csit-verify-virl-1604-test-{stream}'
113
114     project-type: freestyle
115     node: 'verify-ubuntu1604'
116     concurrent: true
117
118     logrotate:
119         daysToKeep: '{build-days-to-keep}'
120         numToKeep: '{build-num-to-keep}'
121         artifactDaysToKeep: '{build-artifact-days-to-keep}'
122         artifactNumToKeep: '{build-artifact-num-to-keep}'
123
124     parameters:
125         - project-parameter:
126             project: '{project}'
127         - gerrit-parameter:
128             branch: '{branch}'
129         - os-parameter:
130             os: 'ubuntu1604'
131
132     scm:
133         - gerrit-trigger-scm:
134             credentials-id: 'jenkins-gerrit-credentials'
135             refspec: '$GERRIT_REFSPEC'
136             choosing-strategy: 'gerrit'
137
138     wrappers:
139         - fdio-infra-wrappers:
140             build-timeout: '{build-timeout}'
141
142     triggers:
143         - gerrit:
144             server-name: 'Primary'
145             trigger-on:
146                 - comment-added-contains-event:
147                     comment-contains-value: 'virl-1604-test'
148
149     builders:
150         - shell:
151             !include-raw-escape: include-raw-vpp-checkstyle.sh
152         - shell:
153             !include-raw-escape: include-raw-vpp-build.sh
154         - shell:
155             !include-raw-escape: include-raw-vpp-csit-functional.sh
156     
157     publishers:
158         - archive-artifacts:
159             artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
160             latest-only: false
161
162         - robot-report:
163             output-path: 'csit'
164
165 - job-template:
166     name: 'vpp-verify-image-{stream}-{os}'
167
168     project-type: freestyle
169     node: 'verify-image-{os}'
170     concurrent: true
171
172     logrotate:
173         daysToKeep: '{build-days-to-keep}'
174         numToKeep: '{build-num-to-keep}'
175         artifactDaysToKeep: '{build-artifact-days-to-keep}'
176         artifactNumToKeep: '{build-artifact-num-to-keep}'
177
178     parameters:
179         - project-parameter:
180             project: '{project}'
181         - gerrit-parameter:
182             branch: '{branch}'
183         - os-parameter:
184             os: '{os}'
185
186     scm:
187         - gerrit-trigger-scm:
188             credentials-id: 'jenkins-gerrit-credentials'
189             refspec: '$GERRIT_REFSPEC'
190             choosing-strategy: 'gerrit'
191
192     wrappers:
193         - fdio-infra-wrappers:
194             build-timeout: '{build-timeout}'
195
196     triggers:
197         - gerrit:
198             server-name: 'Primary'
199             trigger-on:
200                 - comment-added-contains-event:
201                     comment-contains-value: 'verify-images'
202             projects:
203               - project-compare-type: 'ANT'
204                 project-pattern: '{project}'
205                 branches:
206                   - branch-compare-type: 'ANT'
207                     branch-pattern: '**/{branch}'
208             skip-vote:
209                 successful: true
210                 failed: true
211                 unstable: true
212                 notbuilt: true
213
214     builders:
215         - shell:
216             !include-raw-escape: include-raw-vpp-checkstyle.sh
217         - shell:
218             !include-raw-escape: include-raw-vpp-build.sh
219
220 - job-template:
221     name: 'vpp-merge-{stream}-{os}'
222
223     project-type: freestyle
224     node: 'merge-{os}'
225
226     logrotate:
227         daysToKeep: '{build-days-to-keep}'
228         numToKeep: '{build-num-to-keep}'
229         artifactDaysToKeep: '{build-artifact-days-to-keep}'
230         artifactNumToKeep: '{build-artifact-num-to-keep}'
231
232     parameters:
233         - project-parameter:
234             project: '{project}'
235         - gerrit-parameter:
236             branch: '{branch}'
237         - os-parameter:
238             os: '{os}'
239         - maven-project-parameter:
240             maven: 'mvn33'
241         - repo-name-parameter:
242             repo-name: '{repo-stream-part}.{repo-os-part}'
243
244     scm:
245         - gerrit-trigger-scm:
246             credentials-id: 'jenkins-gerrit-credentials'
247             refspec: ''
248             choosing-strategy: 'default'
249
250     wrappers:
251         - fdio-infra-wrappers:
252             build-timeout: '{build-timeout}'
253
254     triggers:
255         - gerrit-trigger-patch-merged:
256             name: '{project}'
257             branch: '{branch}'
258
259     builders:
260         - shell:
261             !include-raw-escape: include-raw-vpp-checkstyle.sh
262         - shell:
263             !include-raw-escape: include-raw-vpp-build.sh
264         - maven-target:
265             maven-version: 'mvn33'
266             goals: '--version'
267             settings: 'vpp-settings'
268             settings-type: cfp
269             global-settings: 'global-settings'
270             global-settings-type: cfp
271         - provide-maven-settings:
272             settings-file: 'vpp-settings'
273             global-settings-file: 'global-settings'
274         - shell:
275             !include-raw-escape:
276                 - ../scripts/maven_push_functions.sh
277                 - include-raw-vpp-maven-push.sh
278     publishers:
279         - archive:
280             artifacts: 'build-root/*.rpm,build-root/*.deb'
281             allow-empty: 'true'
282             fingerprint: false
283             only-if-success: true
284             default-excludes: false
285
286 - job-template:
287     name: 'vpp-csit-verify-virl-{stream}'
288
289     project-type: freestyle
290     node: 'verify-{os}'
291     concurrent: true
292
293     logrotate:
294         daysToKeep: '{build-days-to-keep}'
295         numToKeep: '{build-num-to-keep}'
296         artifactDaysToKeep: '{build-artifact-days-to-keep}'
297         artifactNumToKeep: '{build-artifact-num-to-keep}'
298
299     parameters:
300         - project-parameter:
301             project: '{project}'
302         - gerrit-parameter:
303             branch: '{branch}'
304         - os-parameter:
305             os: '{os}'
306
307     scm:
308         - gerrit-trigger-scm:
309             credentials-id: 'jenkins-gerrit-credentials'
310             refspec: '$GERRIT_REFSPEC'
311             choosing-strategy: 'gerrit'
312
313     wrappers:
314         - fdio-infra-wrappers:
315             build-timeout: '{build-timeout}'
316
317     triggers:
318         - gerrit-trigger-patch-submitted:
319             name: '{project}'
320             branch: '{branch}'
321
322     builders:
323         - shell:
324             !include-raw-escape: include-raw-vpp-checkstyle.sh
325         - shell:
326             !include-raw-escape: include-raw-vpp-build.sh
327         - shell:
328             !include-raw-escape: include-raw-vpp-csit-functional.sh
329
330     publishers:
331         - archive-artifacts:
332             artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
333             latest-only: false
334
335         - robot-report:
336             output-path: 'csit'
337
338 - job-template:
339     name: 'vpp-csit-verify-hw-perf-{stream}-{type}'
340
341     project-type: freestyle
342     node: 'verify-{os}'
343     concurrent: false
344
345     logrotate:
346         daysToKeep: '{build-days-to-keep}'
347         numToKeep: '{build-num-to-keep}'
348         artifactDaysToKeep: '{build-artifact-days-to-keep}'
349         artifactNumToKeep: '{build-artifact-num-to-keep}'
350
351     parameters:
352         - project-parameter:
353             project: '{project}'
354         - gerrit-parameter:
355             branch: '{branch}'
356         - os-parameter:
357             os: '{os}'
358         - type-parameter:
359             type: '{type}'
360
361     scm:
362         - gerrit-trigger-scm:
363             credentials-id: 'jenkins-gerrit-credentials'
364             refspec: '$GERRIT_REFSPEC'
365             choosing-strategy: 'gerrit'
366
367     wrappers:
368         - fdio-infra-wrappers:
369             build-timeout: '{build-timeout}'
370
371     triggers:
372         - gerrit-trigger-manually-triggered:
373             comment-trigger-value: 'verify-perf-{type}'
374             name: '{project}'
375             branch: '{branch}'
376
377     builders:
378         - shell:
379             !include-raw-escape: include-raw-vpp-build.sh
380         - shell:
381             !include-raw-escape: include-raw-vpp-csit-verify-perf.sh
382
383     publishers:
384         - archive-artifacts:
385             artifacts: 'csit/report.html, csit/log.html, csit/output.xml'
386             latest-only: false
387
388         - robot-report:
389             output-path: 'csit'
390
391 - parameter:
392     name: type-parameter
393
394     parameters:
395         - string:
396             name: TYPE
397             default: '{type}'
398             description: "TYPE parameter if not given by trigger"
399
400 - job-template:
401     name: 'vpp-docs-verify-{stream}'
402
403     project-type: freestyle
404     node: 'verify-ubuntu1604'
405     concurrent: true
406
407     logrotate:
408         daysToKeep: '{build-days-to-keep}'
409         numToKeep: '{build-num-to-keep}'
410         artifactDaysToKeep: '{build-artifact-days-to-keep}'
411         artifactNumToKeep: '{build-artifact-num-to-keep}'
412
413     parameters:
414         - project-parameter:
415             project: '{project}'
416         - gerrit-parameter:
417             branch: '{branch}'
418         - os-parameter:
419             os: 'ubuntu1604'
420
421     scm:
422         - gerrit-trigger-scm:
423             credentials-id: 'jenkins-gerrit-credentials'
424             refspec: '$GERRIT_REFSPEC'
425             choosing-strategy: 'gerrit'
426
427     wrappers:
428         - fdio-infra-wrappers:
429             build-timeout: '{build-timeout}'
430
431     triggers:
432         - gerrit-trigger-patch-submitted:
433             name: '{project}'
434             branch: '{branch}'
435
436     builders:
437         - maven-target:
438             maven-version: 'mvn33'
439             goals: '--version'
440             settings: 'vpp-settings'
441             settings-type: cfp
442             global-settings: 'global-settings'
443             global-settings-type: cfp
444         - provide-maven-settings:
445             settings-file: 'vpp-settings'
446             global-settings-file: 'global-settings'
447         - shell:
448             !include-raw-escape: include-raw-vpp-docs.sh
449     publishers:
450         - archive:
451             artifacts: 'build-root/docs/html/*'
452             allow-empty: 'true'
453             fingerprint: false
454             only-if-success: true
455             default-excludes: false
456
457 - job-template:
458     name: 'vpp-docs-merge-{stream}'
459
460     project-type: freestyle
461     node: 'verify-ubuntu1604'
462     concurrent: true
463
464     logrotate:
465         daysToKeep: '{build-days-to-keep}'
466         numToKeep: '{build-num-to-keep}'
467         artifactDaysToKeep: '{build-artifact-days-to-keep}'
468         artifactNumToKeep: '{build-artifact-num-to-keep}'
469
470     parameters:
471         - project-parameter:
472             project: '{project}'
473         - gerrit-parameter:
474             branch: '{branch}'
475         - os-parameter:
476             os: 'ubuntu1604'
477
478     scm:
479         - gerrit-trigger-scm:
480             credentials-id: 'jenkins-gerrit-credentials'
481             refspec: ''
482             choosing-strategy: 'default'
483
484     wrappers:
485         - fdio-infra-wrappers:
486             build-timeout: '{build-timeout}'
487
488     triggers:
489         - reverse:
490             jobs: 'vpp-merge-{stream}-ubuntu1404'
491             result: 'success'
492         - gerrit:
493             server-name: 'Primary'
494             trigger-on:
495                 - comment-added-contains-event:
496                     comment-contains-value: 'run-docs'
497             projects:
498               - project-compare-type: 'ANT'
499                 project-pattern: '{project}'
500                 branches:
501                   - branch-compare-type: 'ANT'
502                     branch-pattern: '**/{branch}'
503             skip-vote:
504                 successful: true
505                 failed: true
506                 unstable: true
507                 notbuilt: true
508
509     builders:
510         - maven-target:
511             maven-version: 'mvn33'
512             goals: '--version'
513             settings: 'vpp-settings'
514             settings-type: cfp
515             global-settings: 'global-settings'
516             global-settings-type: cfp
517         - provide-maven-settings:
518             settings-file: 'vpp-settings'
519             global-settings-file: 'global-settings'
520         - shell:
521             !include-raw-escape: include-raw-vpp-docs.sh
522     publishers:
523         - archive:
524             artifacts: 'build-root/docs/html/*'
525             allow-empty: 'true'
526             fingerprint: false
527             only-if-success: true
528             default-excludes: false