vpp.yaml revision e3fc6022
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:
759            - include-raw-vpp-test-checkstyle.sh
760            - include-raw-vpp-commitmsg.sh
761
762    publishers:
763      - fdio-infra-shiplogs:
764          maven-version: 'mvn33-new'
765          archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
766      - naginator:
767          rerun-unstable-builds: true
768          max-failed-builds: 1
769          fixed-delay: 90
770
771- job-template:
772    name: 'vpp-verify-{stream}-{os}'
773
774    project-type: freestyle
775    node: '{os}-us'
776    concurrent: true
777
778    build-discarder:
779      daysToKeep: '{build-days-to-keep}'
780      numToKeep: 100
781      artifactDaysToKeep: '{build-artifact-days-to-keep}'
782      artifactNumToKeep: '{build-artifact-num-to-keep}'
783
784    parameters:
785      - project-parameter:
786          project: '{project}'
787      - gerrit-parameter:
788          branch: '{branch}'
789      - os-parameter:
790          os: '{os}'
791      - repo-name-parameter:
792          repo-name: '{repo-stream-part}.{repo-os-part}'
793      - stream-parameter:
794          stream: '{stream}'
795
796    scm:
797      - gerrit-trigger-scm:
798          credentials-id: 'jenkins-gerrit-credentials'
799          refspec: '$GERRIT_REFSPEC'
800          choosing-strategy: 'gerrit'
801
802    wrappers:
803      - fdio-infra-wrappers:
804          build-timeout: 120
805
806    triggers:
807      - gerrit-trigger-checkstyle:
808          name: '{project}'
809          branch: '{branch}'
810
811    builders:
812      - shell:
813          !include-raw-escape: ../scripts/setup_vpp_ubuntu_docker_test.sh
814      - shell:
815          !include-raw-escape:
816          - ../scripts/setup_vpp_dpdk_dev_env.sh
817          - include-raw-vpp-build.sh
818
819    publishers:
820      - archive:
821          artifacts: >
822            **/build-root/*.rpm,
823            **/build-root/*.deb,
824            **/dpdk/*.rpm,
825            **/dpdk/*.deb
826
827          allow-empty: 'true'
828          fingerprint: false
829          only-if-success: true
830          default-excludes: false
831      - fdio-infra-shiplogs:
832          maven-version: 'mvn33-new'
833          archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
834      - naginator:
835          rerun-unstable-builds: false
836          max-failed-builds: 2
837          fixed-delay: 90
838
839- job-template:
840    name: 'vpp-verify-{stream}-clang'
841
842    project-type: freestyle
843    node: 'ubuntu1804-us'
844    concurrent: true
845
846    build-discarder:
847      daysToKeep: '{build-days-to-keep}'
848      numToKeep: '{build-num-to-keep}'
849      artifactDaysToKeep: '{build-artifact-days-to-keep}'
850      artifactNumToKeep: '{build-artifact-num-to-keep}'
851
852    parameters:
853      - project-parameter:
854          project: '{project}'
855      - gerrit-parameter:
856          branch: '{branch}'
857      - os-parameter:
858          os: 'ubuntu1604'
859      - repo-name-parameter:
860          repo-name: '{repo-stream-part}.ubuntu.bionic.main'
861      - stream-parameter:
862          stream: '{stream}'
863
864    scm:
865      - gerrit-trigger-scm:
866          credentials-id: 'jenkins-gerrit-credentials'
867          refspec: '$GERRIT_REFSPEC'
868          choosing-strategy: 'gerrit'
869
870    wrappers:
871      - fdio-infra-wrappers:
872          build-timeout: '{build-timeout}'
873
874    triggers:
875      - gerrit-trigger-checkstyle:
876          name: '{project}'
877          branch: '{branch}'
878
879    builders:
880      - shell:
881          !include-raw-escape: ../scripts/setup_vpp_ubuntu_docker_test.sh
882      - shell:
883          !include-raw-escape:
884          - ../scripts/setup_vpp_dpdk_dev_env.sh
885          - include-raw-vpp-clang-build.sh
886
887    publishers:
888      - fdio-infra-shiplogs:
889          maven-version: 'mvn33-new'
890          archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
891      - naginator:
892          rerun-unstable-builds: false
893          max-failed-builds: 1
894          fixed-delay: 90
895
896- job-template:
897    name: 'vpp-merge-{stream}-{os}'
898
899    project-type: freestyle
900    node: '{os}-us'
901
902    build-discarder:
903      daysToKeep: '{build-days-to-keep}'
904      numToKeep: 100
905      artifactDaysToKeep: '{build-artifact-days-to-keep}'
906      artifactNumToKeep: '{build-artifact-num-to-keep}'
907
908    parameters:
909      - project-parameter:
910          project: '{project}'
911      - gerrit-parameter:
912          branch: '{branch}'
913      - os-parameter:
914          os: '{os}'
915      - maven-project-parameter:
916          maven: 'mvn33-new'
917      - maven-exec:
918          maven-version: 'mvn33-new'
919      - stream-parameter:
920          stream: '{stream}'
921      - repo-name-parameter:
922          repo-name: '{repo-stream-part}.{repo-os-part}'
923
924    scm:
925      - gerrit-trigger-scm:
926          credentials-id: 'jenkins-gerrit-credentials'
927          refspec: ''
928          choosing-strategy: 'default'
929
930    wrappers:
931      - fdio-infra-wrappers:
932          build-timeout: '{build-timeout}'
933
934    triggers:
935      - gerrit-trigger-patch-merged:
936          name: '{project}'
937          branch: '{branch}'
938
939    builders:
940      - config-file-provider:
941          files:
942            - file-id: '.packagecloud'
943              target: '/root'
944      - config-file-provider:
945          files:
946            - file-id: 'packagecloud_api'
947              target: '/root'
948      - maven-target:
949          maven-version: 'mvn33-new'
950          goals: '--version'
951          settings: 'vpp-settings'
952          settings-type: cfp
953          global-settings: 'global-settings'
954          global-settings-type: cfp
955      - shell:
956          !include-raw-escape: include-raw-vpp-checkstyle.sh
957      - shell:
958          !include-raw-escape: ../scripts/setup_vpp_ubuntu_docker_test.sh
959      - shell:
960          !include-raw-escape:
961          - ../scripts/setup_vpp_dpdk_dev_env.sh
962          - include-raw-vpp-build.sh
963      - provide-maven-settings:
964          settings-file: 'vpp-settings'
965          global-settings-file: 'global-settings'
966      - shell:
967          !include-raw-escape:
968          - ../scripts/packagecloud_push.sh
969      - shell:
970          !include-raw-escape:
971          - ../scripts/maven_push_functions.sh
972          - include-raw-vpp-maven-push.sh
973
974    publishers:
975      - archive:
976          artifacts: >
977            **/build-root/*.rpm,
978            **/build-root/*.deb,
979            **/dpdk/*.rpm,
980            **/dpdk/*.deb
981          allow-empty: 'true'
982          fingerprint: false
983          only-if-success: true
984          default-excludes: false
985      - fdio-infra-shiplogs:
986          maven-version: 'mvn33-new'
987      - naginator:
988          rerun-unstable-builds: false
989          max-failed-builds: 1
990          fixed-delay: 90
991
992- job-template:
993    name: 'vpp-csit-verify-device-{stream}-1n-skx'
994
995    project-type: freestyle
996    node: 'vpp-csit-device'
997    concurrent: true
998
999    build-discarder:
1000      daysToKeep: '{build-days-to-keep}'
1001      numToKeep: 100
1002      artifactDaysToKeep: '{build-artifact-days-to-keep}'
1003      artifactNumToKeep: '{build-artifact-num-to-keep}'
1004
1005    parameters:
1006      - project-parameter:
1007          project: '{project}'
1008      - gerrit-parameter:
1009          branch: '{branch}'
1010      - os-parameter:
1011          os: '{os}'
1012      - repo-name-parameter:
1013          repo-name: '{repo-stream-part}.ubuntu.bionic.main'
1014      - gerrit-refspec-parameter
1015      - gerrit-event-type-parameter
1016      - gerrit-event-comment-text-parameter
1017      - gerrit-csit-refspec-parameter
1018      - stream-parameter:
1019          stream: '{stream}'
1020
1021    scm:
1022      - gerrit-trigger-scm:
1023          credentials-id: 'jenkins-gerrit-credentials'
1024          refspec: '$GERRIT_REFSPEC'
1025          choosing-strategy: 'gerrit'
1026
1027    wrappers:
1028      - fdio-infra-wrappers:
1029          build-timeout: '90'
1030
1031    triggers:
1032      - gerrit-trigger-csit-devicetest:
1033          name: '{project}'
1034          branch: '{branch}'
1035
1036    builders:
1037      - shell:
1038          !include-raw-escape: ../scripts/setup_vpp_ubuntu_docker_test.sh
1039      - shell:
1040          !include-raw-escape:
1041          - include-raw-vpp-csit-device.sh
1042
1043
1044    publishers:
1045      - archive-artifacts:
1046          artifacts: >
1047            **/csit_current/**/*.*
1048          latest-only: false
1049
1050      - robot-report:
1051          output-path: 'csit_current/'
1052
1053      - fdio-infra-shiplogs:
1054          maven-version: 'mvn33-new'
1055
1056- job-template:
1057    name: 'vpp-csit-verify-perf-{stream}-{node-arch}'
1058
1059    project-type: freestyle
1060    node: '{os}-us'
1061    concurrent: true
1062
1063    build-discarder:
1064      daysToKeep: '{build-days-to-keep}'
1065      numToKeep: 100
1066      artifactDaysToKeep: '{build-artifact-days-to-keep}'
1067      artifactNumToKeep: '{build-artifact-num-to-keep}'
1068
1069    parameters:
1070      - project-parameter:
1071          project: '{project}'
1072      - gerrit-parameter:
1073          branch: '{branch}'
1074      - os-parameter:
1075          os: '{os}'
1076      - repo-name-parameter:
1077          repo-name: '{repo-stream-part}.ubuntu.bionic.main'
1078      - gerrit-refspec-parameter
1079      - gerrit-event-type-parameter
1080      - gerrit-event-comment-text-parameter
1081      - gerrit-csit-refspec-parameter
1082      - string:
1083          name: CSIT_PERF_TRIAL_DURATION
1084          default: "10.0"
1085          description: "Duration of a trial measurement in BMRR tests."
1086      - string:
1087          name: CSIT_PERF_TRIAL_MULTIPLICITY
1088          default: "5"
1089          description: "Number of subsamples for BMRR tests."
1090      - stream-parameter:
1091          stream: '{stream}'
1092
1093    scm:
1094      - gerrit-trigger-scm:
1095          credentials-id: 'jenkins-gerrit-credentials'
1096          refspec: '$GERRIT_REFSPEC'
1097          choosing-strategy: 'gerrit'
1098
1099    wrappers:
1100      - fdio-infra-wrappers-non-activity-timeout:
1101          build-timeout: 300
1102
1103    triggers:
1104      - gerrit-trigger-csit-perftest:
1105          name: '{project}'
1106          branch: '{branch}'
1107          node-arch: '{node-arch}'
1108
1109    builders:
1110      - shell:
1111          !include-raw-escape: ../scripts/setup_vpp_ubuntu_docker_test.sh
1112      - shell:
1113          !include-raw-escape:
1114          - include-raw-vpp-csit-perf.sh
1115
1116    publishers:
1117      - archive-artifacts:
1118          artifacts: >
1119            **/csit_current/**/*.*,
1120            **/csit_parent/**/*.*
1121          latest-only: false
1122
1123      - robot-report:
1124          output-path: 'csit_current/0/'
1125
1126      - fdio-infra-shiplogs:
1127          maven-version: 'mvn33-new'
1128