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