Merge "Revert "Migrate cicn job templates to global-jjb""
[ci-management.git] / jjb / vpp / vpp.yaml
1 ---
2 - project:
3     name: vpp
4     jobs:
5       - 'vpp-verify-{stream}-{os}'
6       - 'vpp-merge-{stream}-{os}'
7
8     project: 'vpp'
9     os:
10       - ubuntu1604:
11           repo-os-part: 'ubuntu.xenial.main'
12       - centos7:
13           repo-os-part: 'centos7'
14
15     stream:
16       - master:
17           branch: 'master'
18           repo-stream-part: 'master'
19       - '1810':
20           branch: 'stable/1810'
21           repo-stream-part: 'stable.1810'
22       - '1901':
23           branch: 'stable/1901'
24           repo-stream-part: 'stable.1901'
25       - '1904':
26           branch: 'stable/1904'
27           repo-stream-part: 'stable.1904'
28
29 - project:
30     name: vpp-clang
31     jobs:
32       - 'vpp-verify-{stream}-clang'
33
34     project: 'vpp'
35     os:
36       - ubuntu1804:
37           repo-os-part: 'ubuntu.bionic.main'
38       - centos7:
39           repo-os-part: 'centos7'
40       - opensuse:
41           repo-os-part: 'opensuse'
42
43     stream:
44       - master:
45           branch: 'master'
46           repo-stream-part: 'master'
47
48 - project:
49     name: vpp-misc
50     jobs:
51       - 'vpp-checkstyle-verify-{stream}'
52     project: 'vpp'
53     stream:
54       - master:
55           branch: 'master'
56           repo-stream-part: 'master'
57       - '1810':
58           branch: 'stable/1810'
59           repo-stream-part: 'stable.1810'
60       - '1901':
61           branch: 'stable/1901'
62           repo-stream-part: 'stable.1901'
63       - '1904':
64           branch: 'stable/1904'
65           repo-stream-part: 'stable.1904'
66     os: ubuntu1604
67
68 - project:
69     name: vpp-perpatch
70     jobs:
71       - 'vpp-csit-verify-device-{stream}-1n-skx'
72       - 'vpp-csit-verify-perf-{stream}-{node-arch}'
73     project: 'vpp'
74     stream:
75       - master:
76           branch: 'master'
77           repo-stream-part: 'master'
78     os: ubuntu1804
79     node-arch:
80       - 2n-skx
81       - 3n-skx
82       - 3n-hsw
83
84 - project:
85     name: vpp-master-only
86     jobs:
87       - 'vpp-beta-verify-{stream}-{os}'
88       - 'vpp-beta-verify-gcc8-{stream}-{os}'
89       - 'vpp-beta-merge-{stream}-{os}'
90     project: 'vpp'
91     stream:
92       - master:
93           branch: 'master'
94           repo-stream-part: 'master'
95       - '1901':
96           branch: 'stable/1901'
97           repo-stream-part: 'stable.1901'
98       - '1904':
99           branch: 'stable/1904'
100           repo-stream-part: 'stable.1904'
101     os:
102       - ubuntu1804:
103           repo-os-part: 'ubuntu.bionic.main'
104
105 - project:
106     name: vpp-arm
107     jobs:
108       - 'vpp-arm-verify-{stream}-{os}'
109       - 'vpp-arm-merge-{stream}-{os}'
110     project: 'vpp'
111     stream:
112       - master:
113           branch: 'master'
114           repo-stream-part: 'master'
115       - '1901':
116           branch: 'stable/1901'
117           repo-stream-part: 'stable.1901'
118       - '1904':
119           branch: 'stable/1904'
120           repo-stream-part: 'stable.1904'
121     os:
122       - ubuntu1804:
123           repo-os-part: 'ubuntu-arm.bionic.main'
124
125 - project:
126     name: vpp-arm-old
127     jobs:
128       - 'vpp-arm-old-verify-{stream}-{os}'
129       - 'vpp-arm-old-merge-{stream}-{os}'
130     project: 'vpp'
131     stream:
132       - '1810':
133           branch: 'stable/1810'
134           repo-stream-part: 'stable.1810'
135     os:
136       - ubuntu1604:
137           repo-os-part: 'ubuntu-arm.xenial.main'
138
139 - project:
140     name: vpp-view
141     views:
142       - project-view
143     project-name: vpp
144
145 - job-template:
146     name: 'vpp-beta-verify-{stream}-{os}'
147
148     project-type: freestyle
149     node: '{os}-us'
150     concurrent: true
151     triggers:
152       - gerrit-trigger-checkstyle:
153           name: '{project}'
154           branch: '{branch}'
155
156     build-discarder:
157       daysToKeep: '{build-days-to-keep}'
158       numToKeep: 100
159       artifactDaysToKeep: '{build-artifact-days-to-keep}'
160       artifactNumToKeep: '{build-artifact-num-to-keep}'
161
162     parameters:
163       - project-parameter:
164           project: '{project}'
165       - gerrit-parameter:
166           branch: '{branch}'
167       - os-parameter:
168           os: '{os}'
169       - repo-name-parameter:
170           repo-name: '{repo-stream-part}.{repo-os-part}'
171       - stream-parameter:
172           stream: '{stream}'
173
174     scm:
175       - gerrit-trigger-scm:
176           credentials-id: 'jenkins-gerrit-credentials'
177           refspec: '$GERRIT_REFSPEC'
178           choosing-strategy: 'gerrit'
179
180     wrappers:
181       - fdio-infra-wrappers:
182           build-timeout: '75'
183
184     builders:
185       - shell:
186           !include-raw-escape: ../scripts/setup_vpp_ubuntu_docker_test.sh
187       - shell:
188           !include-raw-escape:
189           - ../scripts/setup_vpp_dpdk_dev_env.sh
190           - include-raw-vpp-build.sh
191
192     publishers:
193       - archive:
194           artifacts: >
195             **/build-root/*.rpm,
196             **/build-root/*.deb,
197             **/dpdk/*.rpm,
198             **/dpdk/*.deb
199           allow-empty: 'true'
200           fingerprint: false
201           only-if-success: true
202           default-excludes: false
203       - fdio-infra-shiplogs:
204           maven-version: 'mvn33-new'
205           archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
206       - naginator:
207           rerun-unstable-builds: false
208           max-failed-builds: 1
209           fixed-delay: 90
210
211 - job-template:
212     name: 'vpp-beta-verify-gcc8-{stream}-{os}'
213
214     project-type: freestyle
215     node: '{os}-us'
216     concurrent: true
217     triggers:
218       - gerrit-trigger-checkstyle-nonvoting:
219           name: '{project}'
220           branch: '{branch}'
221
222     build-discarder:
223       daysToKeep: '{build-days-to-keep}'
224       numToKeep: 100
225       artifactDaysToKeep: '{build-artifact-days-to-keep}'
226       artifactNumToKeep: '{build-artifact-num-to-keep}'
227
228     parameters:
229       - project-parameter:
230           project: '{project}'
231       - gerrit-parameter:
232           branch: '{branch}'
233       - os-parameter:
234           os: '{os}'
235       - repo-name-parameter:
236           repo-name: '{repo-stream-part}.{repo-os-part}'
237       - stream-parameter:
238           stream: '{stream}'
239
240     scm:
241       - gerrit-trigger-scm:
242           credentials-id: 'jenkins-gerrit-credentials'
243           refspec: '$GERRIT_REFSPEC'
244           choosing-strategy: 'gerrit'
245
246     wrappers:
247       - fdio-infra-wrappers:
248           build-timeout: '75'
249
250     builders:
251       - shell:
252           !include-raw-escape: ../scripts/setup_vpp_ubuntu_docker_test.sh
253       - shell:
254           !include-raw-escape:
255           - include-gcc8-prefer.sh
256           - ../scripts/setup_vpp_dpdk_dev_env.sh
257           - include-raw-vpp-build.sh
258
259     publishers:
260       - archive:
261           artifacts: >
262             **/build-root/*.rpm,
263             **/build-root/*.deb,
264             **/dpdk/*.rpm,
265             **/dpdk/*.deb
266           allow-empty: 'true'
267           fingerprint: false
268           only-if-success: true
269           default-excludes: false
270       - fdio-infra-shiplogs:
271           maven-version: 'mvn33-new'
272           archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
273
274 - job-template:
275     name: 'vpp-beta-merge-{stream}-{os}'
276
277     project-type: freestyle
278     node: '{os}-us'
279
280     build-discarder:
281       daysToKeep: '{build-days-to-keep}'
282       numToKeep: 100
283       artifactDaysToKeep: '{build-artifact-days-to-keep}'
284       artifactNumToKeep: '{build-artifact-num-to-keep}'
285
286     parameters:
287       - project-parameter:
288           project: '{project}'
289       - gerrit-parameter:
290           branch: '{branch}'
291       - os-parameter:
292           os: '{os}'
293       - maven-project-parameter:
294           maven: 'mvn33-new'
295       - maven-exec:
296           maven-version: 'mvn33-new'
297       - stream-parameter:
298           stream: '{stream}'
299       - repo-name-parameter:
300           repo-name: '{repo-stream-part}.{repo-os-part}'
301
302     scm:
303       - gerrit-trigger-scm:
304           credentials-id: 'jenkins-gerrit-credentials'
305           refspec: ''
306           choosing-strategy: 'default'
307
308     wrappers:
309       - fdio-infra-wrappers:
310           build-timeout: 120
311
312     triggers:
313       - gerrit-trigger-patch-merged:
314           name: '{project}'
315           branch: '{branch}'
316
317     builders:
318       - config-file-provider:
319           files:
320             - file-id: '.packagecloud'
321               target: '/root'
322       - config-file-provider:
323           files:
324             - file-id: 'packagecloud_api'
325               target: '/root'
326       - maven-target:
327           maven-version: 'mvn33-new'
328           goals: '--version'
329           settings: 'vpp-settings'
330           settings-type: cfp
331           global-settings: 'global-settings'
332           global-settings-type: cfp
333       - shell:
334           !include-raw-escape: ../scripts/setup_vpp_ubuntu_docker_test.sh
335       - shell:
336           !include-raw-escape:
337           - ../scripts/setup_vpp_dpdk_dev_env.sh
338           - include-raw-vpp-build.sh
339       - provide-maven-settings:
340           settings-file: 'vpp-settings'
341           global-settings-file: 'global-settings'
342       - shell:
343           !include-raw-escape:
344           - ../scripts/packagecloud_push.sh
345       - shell:
346           !include-raw-escape:
347           - ../scripts/maven_push_functions.sh
348           - include-raw-vpp-maven-push.sh
349
350     publishers:
351       - archive:
352           artifacts: >
353             **/build-root/*.rpm,
354             **/build-root/*.deb,
355             **/dpdk/*.rpm,
356             **/dpdk/*.deb
357           allow-empty: 'true'
358           fingerprint: false
359           only-if-success: true
360           default-excludes: false
361       - fdio-infra-shiplogs:
362           maven-version: 'mvn33-new'
363
364 - job-template:
365     name: 'vpp-arm-old-verify-{stream}-{os}'
366
367     project-type: freestyle
368     node: '{os}arm-us'
369     concurrent: true
370
371     build-discarder:
372       daysToKeep: '{build-days-to-keep}'
373       numToKeep: 100
374       artifactDaysToKeep: '{build-artifact-days-to-keep}'
375       artifactNumToKeep: '{build-artifact-num-to-keep}'
376
377     parameters:
378       - project-parameter:
379           project: '{project}'
380       - gerrit-parameter:
381           branch: '{branch}'
382       - os-parameter:
383           os: '{os}'
384       - repo-name-parameter:
385           repo-name: '{repo-stream-part}.{repo-os-part}'
386       - stream-parameter:
387           stream: '{stream}'
388
389     scm:
390       - gerrit-trigger-scm:
391           credentials-id: 'jenkins-gerrit-credentials'
392           refspec: '$GERRIT_REFSPEC'
393           choosing-strategy: 'gerrit'
394
395     wrappers:
396       - fdio-infra-wrappers:
397           build-timeout: 120
398
399     triggers:
400       - gerrit-trigger-checkstyle:
401           name: '{project}'
402           branch: '{branch}'
403
404     builders:
405       - shell:
406           !include-raw-escape: ../scripts/setup_vpp_ubuntu_arm_test.sh
407       - shell:
408           !include-raw-escape:
409           - ../scripts/setup_vpp_dpdk_dev_env.sh
410           - include-raw-vpp-arm-build-no-test.sh
411
412     publishers:
413       - archive:
414           artifacts: >
415             **/build-root/*.rpm,
416             **/build-root/*.deb,
417             **/dpdk/*.rpm,
418             **/dpdk/*.deb
419           allow-empty: 'true'
420           fingerprint: false
421           only-if-success: true
422           default-excludes: false
423       - fdio-infra-shiplogs:
424           maven-version: 'mvn33-new'
425           archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
426
427 - job-template:
428     name: 'vpp-arm-verify-{stream}-{os}'
429
430     project-type: freestyle
431     node: '{os}arm-us'
432     concurrent: true
433
434     build-discarder:
435       daysToKeep: '{build-days-to-keep}'
436       numToKeep: 100
437       artifactDaysToKeep: '{build-artifact-days-to-keep}'
438       artifactNumToKeep: '{build-artifact-num-to-keep}'
439
440     parameters:
441       - project-parameter:
442           project: '{project}'
443       - gerrit-parameter:
444           branch: '{branch}'
445       - os-parameter:
446           os: '{os}'
447       - repo-name-parameter:
448           repo-name: '{repo-stream-part}.{repo-os-part}'
449       - stream-parameter:
450           stream: '{stream}'
451
452     scm:
453       - gerrit-trigger-scm:
454           credentials-id: 'jenkins-gerrit-credentials'
455           refspec: '$GERRIT_REFSPEC'
456           choosing-strategy: 'gerrit'
457
458     wrappers:
459       - fdio-infra-wrappers:
460           build-timeout: 120
461
462     triggers:
463       - gerrit-trigger-checkstyle-nonvoting:
464           name: '{project}'
465           branch: '{branch}'
466
467     builders:
468       - shell:
469           !include-raw-escape: ../scripts/setup_vpp_ubuntu_arm_test.sh
470       - shell:
471           !include-raw-escape:
472           - ../scripts/setup_vpp_dpdk_dev_env.sh
473           - include-raw-vpp-parallel-vars.sh
474           - include-raw-vpp-arm-build.sh
475
476     publishers:
477       - archive:
478           artifacts: >
479             **/build-root/*.rpm,
480             **/build-root/*.deb,
481             **/dpdk/*.rpm,
482             **/dpdk/*.deb
483           allow-empty: 'true'
484           fingerprint: false
485           only-if-success: true
486           default-excludes: false
487       - fdio-infra-shiplogs:
488           maven-version: 'mvn33-new'
489           archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
490       - naginator:
491           rerun-unstable-builds: false
492           max-failed-builds: 1
493           fixed-delay: 90
494
495 - job-template:
496     name: 'vpp-arm-merge-{stream}-{os}'
497
498     project-type: freestyle
499     node: '{os}arm-m'
500
501     build-discarder:
502       daysToKeep: '{build-days-to-keep}'
503       numToKeep: 100
504       artifactDaysToKeep: '{build-artifact-days-to-keep}'
505       artifactNumToKeep: '{build-artifact-num-to-keep}'
506
507     parameters:
508       - project-parameter:
509           project: '{project}'
510       - gerrit-parameter:
511           branch: '{branch}'
512       - os-parameter:
513           os: '{os}'
514       - maven-project-parameter:
515           maven: 'mvn33-new'
516       - maven-exec:
517           maven-version: 'mvn33-new'
518       - stream-parameter:
519           stream: '{stream}'
520       - repo-name-parameter:
521           repo-name: '{repo-stream-part}.{repo-os-part}'
522
523     scm:
524       - gerrit-trigger-scm:
525           credentials-id: 'jenkins-gerrit-credentials'
526           refspec: ''
527           choosing-strategy: 'default'
528
529     wrappers:
530       - fdio-infra-wrappers:
531           build-timeout: 120
532
533     triggers:
534       - gerrit-trigger-patch-merged:
535           name: '{project}'
536           branch: '{branch}'
537
538     builders:
539       - config-file-provider:
540           files:
541             - file-id: '.packagecloud'
542               target: '/root'
543       - config-file-provider:
544           files:
545             - file-id: 'packagecloud_api'
546               target: '/root'
547       - maven-target:
548           maven-version: 'mvn33-new'
549           goals: '--version'
550           settings: 'vpp-settings'
551           settings-type: cfp
552           global-settings: 'global-settings'
553           global-settings-type: cfp
554       - shell:
555           !include-raw-escape: ../scripts/setup_vpp_ubuntu_arm_test.sh
556       - shell:
557           !include-raw-escape:
558           - ../scripts/setup_vpp_dpdk_dev_env.sh
559           - include-raw-vpp-parallel-vars.sh
560           - include-raw-vpp-arm-build-no-test.sh
561
562       - provide-maven-settings:
563           settings-file: 'vpp-settings'
564           global-settings-file: 'global-settings'
565       - shell:
566           !include-raw-escape:
567           - ../scripts/packagecloud_push.sh
568
569     publishers:
570       - archive:
571           artifacts: >
572             **/build-root/*.rpm,
573             **/build-root/*.deb,
574             **/dpdk/*.rpm,
575             **/dpdk/*.deb
576           allow-empty: 'true'
577           fingerprint: false
578           only-if-success: true
579           default-excludes: false
580       - fdio-infra-shiplogs:
581           maven-version: 'mvn33-new'
582
583 - job-template:
584     name: 'vpp-arm-old-merge-{stream}-{os}'
585
586     project-type: freestyle
587     node: '{os}arm-us'
588
589     build-discarder:
590       daysToKeep: '{build-days-to-keep}'
591       numToKeep: 100
592       artifactDaysToKeep: '{build-artifact-days-to-keep}'
593       artifactNumToKeep: '{build-artifact-num-to-keep}'
594
595     parameters:
596       - project-parameter:
597           project: '{project}'
598       - gerrit-parameter:
599           branch: '{branch}'
600       - os-parameter:
601           os: '{os}'
602       - maven-project-parameter:
603           maven: 'mvn33-new'
604       - maven-exec:
605           maven-version: 'mvn33-new'
606       - stream-parameter:
607           stream: '{stream}'
608       - repo-name-parameter:
609           repo-name: '{repo-stream-part}.{repo-os-part}'
610
611     scm:
612       - gerrit-trigger-scm:
613           credentials-id: 'jenkins-gerrit-credentials'
614           refspec: ''
615           choosing-strategy: 'default'
616
617     wrappers:
618       - fdio-infra-wrappers:
619           build-timeout: 120
620
621     triggers:
622       - gerrit-trigger-patch-merged:
623           name: '{project}'
624           branch: '{branch}'
625
626     builders:
627       - config-file-provider:
628           files:
629             - file-id: '.packagecloud'
630               target: '/root'
631       - config-file-provider:
632           files:
633             - file-id: 'packagecloud_api'
634               target: '/root'
635       - maven-target:
636           maven-version: 'mvn33-new'
637           goals: '--version'
638           settings: 'vpp-settings'
639           settings-type: cfp
640           global-settings: 'global-settings'
641           global-settings-type: cfp
642       - shell:
643           !include-raw-escape: ../scripts/setup_vpp_ubuntu_arm_test.sh
644       - shell:
645           !include-raw-escape:
646           - ../scripts/setup_vpp_dpdk_dev_env.sh
647           - include-raw-vpp-parallel-vars.sh
648           - include-raw-vpp-arm-build-no-test.sh
649
650       - provide-maven-settings:
651           settings-file: 'vpp-settings'
652           global-settings-file: 'global-settings'
653       - shell:
654           !include-raw-escape:
655           - ../scripts/packagecloud_push.sh
656       - shell:
657           !include-raw-escape:
658           - ../scripts/maven_push_functions.sh
659           - include-raw-vpp-maven-push.sh
660
661     publishers:
662       - archive:
663           artifacts: >
664             **/build-root/*.rpm,
665             **/build-root/*.deb,
666             **/dpdk/*.rpm,
667             **/dpdk/*.deb
668           allow-empty: 'true'
669           fingerprint: false
670           only-if-success: true
671           default-excludes: false
672       - fdio-infra-shiplogs:
673           maven-version: 'mvn33-new'
674
675 - job-template:
676     name: 'vpp-checkstyle-verify-{stream}'
677
678     project-type: freestyle
679     node: '{os}-us'
680     concurrent: true
681
682     build-discarder:
683       daysToKeep: '{build-days-to-keep}'
684       numToKeep: '{build-num-to-keep}'
685       artifactDaysToKeep: '{build-artifact-days-to-keep}'
686       artifactNumToKeep: '{build-artifact-num-to-keep}'
687
688     parameters:
689       - project-parameter:
690           project: '{project}'
691       - gerrit-parameter:
692           branch: '{branch}'
693       - os-parameter:
694           os: '{os}'
695       - repo-name-parameter:
696           repo-name: '{repo-stream-part}.ubuntu.xenial.main'
697
698     scm:
699       - gerrit-trigger-scm:
700           credentials-id: 'jenkins-gerrit-credentials'
701           refspec: '$GERRIT_REFSPEC'
702           choosing-strategy: 'gerrit'
703
704     wrappers:
705       - fdio-infra-wrappers:
706           build-timeout: '{build-timeout}'
707
708     triggers:
709       - gerrit:
710           server-name: 'Primary'
711           trigger-on:
712             - patchset-created-event:
713                 exclude-drafts: 'true'
714                 exclude-trivial-rebase: 'false'
715                 exclude-no-code-change: 'true'
716             - draft-published-event
717             - comment-added-contains-event:
718                 comment-contains-value: 'checkstylecheck'
719             - comment-added-contains-event:
720                 comment-contains-value: 'docsonly'
721             - comment-added-contains-event:
722                 comment-contains-value: 'recheck'
723             - comment-added-contains-event:
724                 comment-contains-value: 'reverify'
725           projects:
726             - project-compare-type: 'ANT'
727               project-pattern: '{project}'
728               branches:
729                 - branch-compare-type: 'ANT'
730                   branch-pattern: '**/{branch}'
731               file-paths:
732                 - compare-type: REG_EXP
733                   pattern: ^((?!\/COMMIT_MSG|docs|_abc|_def[\/\.]).)*$
734               forbidden-file-paths:
735                 - compare-type: REG_EXP
736                   pattern: .*docs\/.*
737                 - compare-type: REG_EXP
738                   pattern: .*extras\/emacs\/.*
739               disable-strict-forbidden-file-verification: 'true'
740           override-votes: true
741           gerrit-build-notbuilt-verified-value: 0
742           gerrit-build-successful-verified-value: 1
743           # yamllint disable-line rule:line-length
744           notbuilt-message: 'Automatic retry of failed jobs may be in process. A proper vote should be set when retry completes.'
745           # yamllint disable-line rule:line-length
746           failed-message: 'Checkstyle failed. No further verify jobs will be started.'
747           successful-message: 'checkstyle_success'
748           skip-vote:
749             successful: true
750             failed: false
751             unstable: false
752             notbuilt: false
753
754     builders:
755       - shell:
756           !include-raw-escape: include-raw-vpp-checkstyle.sh
757       - shell:
758           !include-raw-escape: include-raw-vpp-test-checkstyle.sh
759
760     publishers:
761       - fdio-infra-shiplogs:
762           maven-version: 'mvn33-new'
763           archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
764       - naginator:
765           rerun-unstable-builds: true
766           max-failed-builds: 1
767           fixed-delay: 90
768
769 - job-template:
770     name: 'vpp-verify-{stream}-{os}'
771
772     project-type: freestyle
773     node: '{os}-us'
774     concurrent: true
775
776     build-discarder:
777       daysToKeep: '{build-days-to-keep}'
778       numToKeep: 100
779       artifactDaysToKeep: '{build-artifact-days-to-keep}'
780       artifactNumToKeep: '{build-artifact-num-to-keep}'
781
782     parameters:
783       - project-parameter:
784           project: '{project}'
785       - gerrit-parameter:
786           branch: '{branch}'
787       - os-parameter:
788           os: '{os}'
789       - repo-name-parameter:
790           repo-name: '{repo-stream-part}.{repo-os-part}'
791       - stream-parameter:
792           stream: '{stream}'
793
794     scm:
795       - gerrit-trigger-scm:
796           credentials-id: 'jenkins-gerrit-credentials'
797           refspec: '$GERRIT_REFSPEC'
798           choosing-strategy: 'gerrit'
799
800     wrappers:
801       - fdio-infra-wrappers:
802           build-timeout: 120
803
804     triggers:
805       - gerrit-trigger-checkstyle:
806           name: '{project}'
807           branch: '{branch}'
808
809     builders:
810       - shell:
811           !include-raw-escape: ../scripts/setup_vpp_ubuntu_docker_test.sh
812       - shell:
813           !include-raw-escape:
814           - ../scripts/setup_vpp_dpdk_dev_env.sh
815           - include-raw-vpp-build.sh
816
817     publishers:
818       - archive:
819           artifacts: >
820             **/build-root/*.rpm,
821             **/build-root/*.deb,
822             **/dpdk/*.rpm,
823             **/dpdk/*.deb
824
825           allow-empty: 'true'
826           fingerprint: false
827           only-if-success: true
828           default-excludes: false
829       - fdio-infra-shiplogs:
830           maven-version: 'mvn33-new'
831           archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
832       - naginator:
833           rerun-unstable-builds: false
834           max-failed-builds: 2
835           fixed-delay: 90
836
837 - job-template:
838     name: 'vpp-verify-{stream}-clang'
839
840     project-type: freestyle
841     node: 'ubuntu1804-us'
842     concurrent: true
843
844     build-discarder:
845       daysToKeep: '{build-days-to-keep}'
846       numToKeep: '{build-num-to-keep}'
847       artifactDaysToKeep: '{build-artifact-days-to-keep}'
848       artifactNumToKeep: '{build-artifact-num-to-keep}'
849
850     parameters:
851       - project-parameter:
852           project: '{project}'
853       - gerrit-parameter:
854           branch: '{branch}'
855       - os-parameter:
856           os: 'ubuntu1604'
857       - repo-name-parameter:
858           repo-name: '{repo-stream-part}.ubuntu.bionic.main'
859       - stream-parameter:
860           stream: '{stream}'
861
862     scm:
863       - gerrit-trigger-scm:
864           credentials-id: 'jenkins-gerrit-credentials'
865           refspec: '$GERRIT_REFSPEC'
866           choosing-strategy: 'gerrit'
867
868     wrappers:
869       - fdio-infra-wrappers:
870           build-timeout: '{build-timeout}'
871
872     triggers:
873       - gerrit-trigger-checkstyle:
874           name: '{project}'
875           branch: '{branch}'
876
877     builders:
878       - shell:
879           !include-raw-escape: ../scripts/setup_vpp_ubuntu_docker_test.sh
880       - shell:
881           !include-raw-escape:
882           - ../scripts/setup_vpp_dpdk_dev_env.sh
883           - include-raw-vpp-clang-build.sh
884
885     publishers:
886       - fdio-infra-shiplogs:
887           maven-version: 'mvn33-new'
888           archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
889       - naginator:
890           rerun-unstable-builds: false
891           max-failed-builds: 1
892           fixed-delay: 90
893
894 - job-template:
895     name: 'vpp-merge-{stream}-{os}'
896
897     project-type: freestyle
898     node: '{os}-us'
899
900     build-discarder:
901       daysToKeep: '{build-days-to-keep}'
902       numToKeep: 100
903       artifactDaysToKeep: '{build-artifact-days-to-keep}'
904       artifactNumToKeep: '{build-artifact-num-to-keep}'
905
906     parameters:
907       - project-parameter:
908           project: '{project}'
909       - gerrit-parameter:
910           branch: '{branch}'
911       - os-parameter:
912           os: '{os}'
913       - maven-project-parameter:
914           maven: 'mvn33-new'
915       - maven-exec:
916           maven-version: 'mvn33-new'
917       - stream-parameter:
918           stream: '{stream}'
919       - repo-name-parameter:
920           repo-name: '{repo-stream-part}.{repo-os-part}'
921
922     scm:
923       - gerrit-trigger-scm:
924           credentials-id: 'jenkins-gerrit-credentials'
925           refspec: ''
926           choosing-strategy: 'default'
927
928     wrappers:
929       - fdio-infra-wrappers:
930           build-timeout: '{build-timeout}'
931
932     triggers:
933       - gerrit-trigger-patch-merged:
934           name: '{project}'
935           branch: '{branch}'
936
937     builders:
938       - config-file-provider:
939           files:
940             - file-id: '.packagecloud'
941               target: '/root'
942       - config-file-provider:
943           files:
944             - file-id: 'packagecloud_api'
945               target: '/root'
946       - maven-target:
947           maven-version: 'mvn33-new'
948           goals: '--version'
949           settings: 'vpp-settings'
950           settings-type: cfp
951           global-settings: 'global-settings'
952           global-settings-type: cfp
953       - shell:
954           !include-raw-escape: include-raw-vpp-checkstyle.sh
955       - shell:
956           !include-raw-escape: ../scripts/setup_vpp_ubuntu_docker_test.sh
957       - shell:
958           !include-raw-escape:
959           - ../scripts/setup_vpp_dpdk_dev_env.sh
960           - include-raw-vpp-build.sh
961       - provide-maven-settings:
962           settings-file: 'vpp-settings'
963           global-settings-file: 'global-settings'
964       - shell:
965           !include-raw-escape:
966           - ../scripts/packagecloud_push.sh
967       - shell:
968           !include-raw-escape:
969           - ../scripts/maven_push_functions.sh
970           - include-raw-vpp-maven-push.sh
971
972     publishers:
973       - archive:
974           artifacts: >
975             **/build-root/*.rpm,
976             **/build-root/*.deb,
977             **/dpdk/*.rpm,
978             **/dpdk/*.deb
979           allow-empty: 'true'
980           fingerprint: false
981           only-if-success: true
982           default-excludes: false
983       - fdio-infra-shiplogs:
984           maven-version: 'mvn33-new'
985       - naginator:
986           rerun-unstable-builds: false
987           max-failed-builds: 1
988           fixed-delay: 90
989
990 - job-template:
991     name: 'vpp-csit-verify-device-{stream}-1n-skx'
992
993     project-type: freestyle
994     node: 'vpp-csit-device'
995     concurrent: true
996
997     build-discarder:
998       daysToKeep: '{build-days-to-keep}'
999       numToKeep: 100
1000       artifactDaysToKeep: '{build-artifact-days-to-keep}'
1001       artifactNumToKeep: '{build-artifact-num-to-keep}'
1002
1003     parameters:
1004       - project-parameter:
1005           project: '{project}'
1006       - gerrit-parameter:
1007           branch: '{branch}'
1008       - os-parameter:
1009           os: '{os}'
1010       - repo-name-parameter:
1011           repo-name: '{repo-stream-part}.ubuntu.bionic.main'
1012       - gerrit-refspec-parameter
1013       - gerrit-event-type-parameter
1014       - gerrit-event-comment-text-parameter
1015       - gerrit-csit-refspec-parameter
1016       - stream-parameter:
1017           stream: '{stream}'
1018
1019     scm:
1020       - gerrit-trigger-scm:
1021           credentials-id: 'jenkins-gerrit-credentials'
1022           refspec: '$GERRIT_REFSPEC'
1023           choosing-strategy: 'gerrit'
1024
1025     wrappers:
1026       - fdio-infra-wrappers:
1027           build-timeout: '90'
1028
1029     triggers:
1030       - gerrit-trigger-csit-devicetest:
1031           name: '{project}'
1032           branch: '{branch}'
1033
1034     builders:
1035       - shell:
1036           !include-raw-escape: ../scripts/setup_vpp_ubuntu_docker_test.sh
1037       - shell:
1038           !include-raw-escape:
1039           - include-raw-vpp-csit-device.sh
1040
1041
1042     publishers:
1043       - archive-artifacts:
1044           artifacts: >
1045             **/csit_current/**/*.*
1046           latest-only: false
1047
1048       - robot-report:
1049           output-path: 'csit_current/'
1050
1051       - fdio-infra-shiplogs:
1052           maven-version: 'mvn33-new'
1053
1054 - job-template:
1055     name: 'vpp-csit-verify-perf-{stream}-{node-arch}'
1056
1057     project-type: freestyle
1058     node: '{os}-us'
1059     concurrent: true
1060
1061     build-discarder:
1062       daysToKeep: '{build-days-to-keep}'
1063       numToKeep: 100
1064       artifactDaysToKeep: '{build-artifact-days-to-keep}'
1065       artifactNumToKeep: '{build-artifact-num-to-keep}'
1066
1067     parameters:
1068       - project-parameter:
1069           project: '{project}'
1070       - gerrit-parameter:
1071           branch: '{branch}'
1072       - os-parameter:
1073           os: '{os}'
1074       - repo-name-parameter:
1075           repo-name: '{repo-stream-part}.ubuntu.bionic.main'
1076       - gerrit-refspec-parameter
1077       - gerrit-event-type-parameter
1078       - gerrit-event-comment-text-parameter
1079       - gerrit-csit-refspec-parameter
1080       - string:
1081           name: CSIT_PERF_TRIAL_DURATION
1082           default: "10.0"
1083           description: "Duration of a trial measurement in BMRR tests."
1084       - string:
1085           name: CSIT_PERF_TRIAL_MULTIPLICITY
1086           default: "5"
1087           description: "Number of subsamples for BMRR tests."
1088       - stream-parameter:
1089           stream: '{stream}'
1090
1091     scm:
1092       - gerrit-trigger-scm:
1093           credentials-id: 'jenkins-gerrit-credentials'
1094           refspec: '$GERRIT_REFSPEC'
1095           choosing-strategy: 'gerrit'
1096
1097     wrappers:
1098       - fdio-infra-wrappers-non-activity-timeout:
1099           build-timeout: 300
1100
1101     triggers:
1102       - gerrit-trigger-csit-perftest:
1103           name: '{project}'
1104           branch: '{branch}'
1105           node-arch: '{node-arch}'
1106
1107     builders:
1108       - shell:
1109           !include-raw-escape: ../scripts/setup_vpp_ubuntu_docker_test.sh
1110       - shell:
1111           !include-raw-escape:
1112           - include-raw-vpp-csit-perf.sh
1113
1114     publishers:
1115       - archive-artifacts:
1116           artifacts: >
1117             **/csit_current/**/*.*,
1118             **/csit_parent/**/*.*
1119           latest-only: false
1120
1121       - robot-report:
1122           output-path: 'csit_current/0/'
1123
1124       - fdio-infra-shiplogs:
1125           maven-version: 'mvn33-new'