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