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