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