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