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