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