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