4 # Please keep projects grouped in this order:
5 # vpp-x86_64, vpp-aarch64, vpp-csit
8 # - The 'branch-head-refspec' attribute is used for sandbox testing.
9 # Use the get_gerrit_refspec() bash function in
10 # .../ci-management/docker/scripts/lib_common.sh
11 # to query gerrit for the refspec of HEAD in a branch.
12 # TODO: see if there is a refspec that works without requiring
13 # use of get_gerrit_refspec and hand entering the result
14 # in the WebUI 'Build With Parameters' gerrit refspec field.
15 # - Use the following to import get_gerrit_refspec into a bash shell
16 # from the ci-management directory:
17 # $ eval "$(grep -A12 get_gerrit ./docker/scripts/lib_common.sh)"
20 # VPP-CHECKSTYLE-X86_64 PROJECT
22 name: vpp-checkstyle-x86_64
24 - 'vpp-checkstyle-verify-{stream}-{os}-{executor-arch}'
29 repo-stream-part: 'master'
30 branch-head-refspec: ''
33 repo-stream-part: 'stable.1908'
34 branch-head-refspec: ''
37 repo-stream-part: 'stable.2005'
38 branch-head-refspec: ''
41 repo-stream-part: 'stable.2009'
42 branch-head-refspec: ''
44 executor-arch: 'x86_64'
45 # [end] VPP-CHECKSTYLE-X86_64 PROJECT
51 - 'vpp-verify-{stream}-{os}-{executor-arch}'
52 - 'vpp-merge-{stream}-{os}-{executor-arch}'
54 make-parallel-jobs: '4'
58 repo-stream-part: 'master'
59 branch-head-refspec: ''
62 repo-stream-part: 'stable.1908'
63 branch-head-refspec: ''
66 repo-stream-part: 'stable.2005'
67 branch-head-refspec: ''
70 repo-stream-part: 'stable.2009'
71 branch-head-refspec: ''
74 repo-os-part: 'ubuntu.bionic.main'
75 executor-arch: 'x86_64'
76 # [end] VPP-X86_64 PROJECT
78 # VPP-OS-EOL-X86_64 PROJECT
80 name: vpp-os-eol-x86_64
82 - 'vpp-verify-{stream}-{os}-{executor-arch}'
83 - 'vpp-merge-{stream}-{os}-{executor-arch}'
85 make-parallel-jobs: '4'
89 repo-stream-part: 'stable.1908'
90 branch-head-refspec: ''
93 repo-stream-part: 'stable.2005'
94 branch-head-refspec: ''
97 repo-stream-part: 'stable.2009'
98 branch-head-refspec: ''
101 repo-os-part: 'centos7'
102 executor-arch: 'x86_64'
103 # [end] VPP-OS-EOL-X86_64 PROJECT
105 # VPP-OS-IN-2009-X86_64 PROJECT
107 # This project is used to separate streams which are only
108 # supported on the OS in the release in which it was added
111 # For each 'os-in-XXXX', the stream for the release is
112 # added here in addition to the 'vpp-x86_64' project.
113 # Each subsequent release is also added to both.
115 # When all of the streams older than the 'os-in-XXXX" have
116 # been removed from the 'vpp-x86_64' project, then the OSes
117 # in this project get moved to the 'vpp-x86_64' project and
118 # this project gets deleted or commented out if it is only
119 # 'os-in-XXXX' project.
122 name: vpp-os-in-2009-x86_64
124 - 'vpp-verify-{stream}-{os}-{executor-arch}'
125 - 'vpp-merge-{stream}-{os}-{executor-arch}'
127 make-parallel-jobs: '4'
131 repo-stream-part: 'master'
132 branch-head-refspec: ''
134 branch: 'stable/2009'
135 repo-stream-part: 'stable.2009'
136 branch-head-refspec: ''
139 repo-os-part: 'centos8'
141 repo-os-part: 'stretch'
143 repo-os-part: 'buster'
145 repo-os-part: 'ubuntu.focal.main'
146 executor-arch: 'x86_64'
147 # [end] VPP-OS-IN-2009-X86_64 PROJECT
149 # VPP-DEBUG-X86_64 PROJECT
151 # Currently a Non-Voting job due to intermittent failures.
152 # Limiting branches to master and 2009, since other branches
153 # may not get fixes for the intermittent failures.
156 name: vpp-debug-x86_64
158 - 'vpp-debug-verify-{stream}-{os}-{executor-arch}'
160 make-parallel-jobs: '4'
164 repo-stream-part: 'master'
165 branch-head-refspec: ''
167 branch: 'stable/2009'
168 repo-stream-part: 'stable.2009'
169 branch-head-refspec: ''
172 repo-os-part: 'ubuntu.bionic.main'
173 executor-arch: 'x86_64'
174 # [end] VPP-DEBUG-X86_64 PROJECT
176 # VPP-BETA-X86_64 PROJECT
178 # Beta jobs are experimental jobs for testing new OS versions on master.
180 # They are only manually triggered. Either using the Jenkins WebUI
181 # 'Build with Parameters' to run a single job or adding 'vpp-beta-verify'
182 # or 'vpp-beta-merge' as a comment to run all beta verify or merge jobs.
184 # Once testing is complete, the os is moved to the current
185 # 'vpp-os-in-XXXX-x86_64' project. If no OSes are being
186 # tested then this project should be commented out.
189 # name: vpp-beta-x86_64
191 # - 'vpp-beta-verify-{stream}-{os}-{executor-arch}':
192 # comment-trigger-value: 'vpp-beta-verify'
193 # - 'vpp-beta-merge-{stream}-{os}-{executor-arch}':
194 # comment-trigger-value: 'vpp-beta-merge'
196 # make-parallel-jobs: '4'
200 # repo-stream-part: 'master'
201 # branch-head-refspec: ''
204 # repo-os-part: 'buster'
205 # executor-arch: x86_64
206 # [end] VPP-BETA-X86_64 PROJECT
208 # VPP-GCC-X86_64 PROJECT
212 - 'vpp-gcc-verify-{stream}-{os}-{executor-arch}'
214 executor-arch: 'x86_64'
217 repo-os-part: 'ubuntu.focal.main'
221 repo-stream-part: 'master'
222 branch-head-refspec: ''
224 branch: 'stable/2009'
225 repo-stream-part: 'stable.2009'
226 branch-head-refspec: ''
227 # [end] VPP-GCC-X86_64 PROJECT
229 # VPP-AARCH64 PROJECT
233 - 'vpp-verify-{stream}-{os}-{executor-arch}'
234 - 'vpp-merge-{stream}-{os}-{executor-arch}'
236 make-parallel-jobs: '16'
240 repo-stream-part: 'master'
241 branch-head-refspec: ''
243 branch: 'stable/1908'
244 repo-stream-part: 'stable.1908'
245 branch-head-refspec: ''
247 branch: 'stable/2005'
248 repo-stream-part: 'stable.2005'
249 branch-head-refspec: ''
251 branch: 'stable/2009'
252 repo-stream-part: 'stable.2009'
253 branch-head-refspec: ''
256 repo-os-part: 'ubuntu-arm.bionic.main'
257 executor-arch: 'aarch64'
258 # [end] VPP-AARCH64 PROJECT
260 # VPP-OS-IN-2009-AARCH64 PROJECT
262 # This project is used to separate streams which are only
263 # supported on the OS in the release in which it was added
266 # For each 'os-in-XXXX', the stream for the release is
267 # added here in addition to the 'vpp-aarch64' project.
268 # Each subsequent release is also added to both.
270 # When all of the streams older than the 'os-in-XXXX" have
271 # been removed from the 'vpp-aarch64' project, then the OSes
272 # in this project get moved to the 'vpp-aarch64' project and
273 # this project gets deleted or commented out if it is only
274 # 'os-in-XXXX' project.
277 # name: vpp-os-in-2009-aarch64
279 # - 'vpp-verify-{stream}-{os}-{executor-arch}'
280 # - 'vpp-merge-{stream}-{os}-{executor-arch}'
283 # make-parallel-jobs: '16'
287 # repo-stream-part: 'master'
288 # branch-head-refspec: ''
290 # branch: 'stable/2009'
291 # repo-stream-part: 'stable.2009'
292 # branch-head-refspec: ''
295 # repo-os-part: 'ubuntu.focal.main'
296 # executor-arch: 'aarch64'
297 # [end] VPP-OS-IN-2009-AARCH64 PROJECT
299 # VPP-BETA-AARCH64 PROJECT
301 # Beta jobs are experimental jobs for testing new OS versions on master.
303 # They are only manually triggered. Either using the Jenkins WebUI
304 # 'Build with Parameters' to run a single job or adding 'vpp-beta-verify'
305 # or 'vpp-beta-merge' as a comment to run all beta verify or merge jobs.
307 # Once testing is complete, the os is moved to the current
308 # 'vpp-os-in-XXXX-aarch64' project. If no OSes are being
309 # tested then this project should be commented out.
312 name: vpp-beta-aarch64
314 - 'vpp-beta-verify-{stream}-{os}-{executor-arch}':
315 comment-trigger-value: 'beta-verify'
316 - 'vpp-beta-merge-{stream}-{os}-{executor-arch}':
317 comment-trigger-value: 'beta-merge'
319 make-parallel-jobs: '16'
323 repo-stream-part: 'master'
324 branch-head-refspec: ''
327 repo-os-part: 'centos8'
329 repo-os-part: 'ubuntu.focal.main'
330 executor-arch: aarch64
331 # [end] VPP-BETA-AARCH64 PROJECT
333 # VPP-CSIT-PERPATCH PROJECT
335 name: vpp-csit-perpatch
337 - 'vpp-csit-verify-device-{stream}-{device-node-arch}':
338 make-parallel-jobs: '32'
339 - 'vpp-csit-verify-perf-{stream}-{node-arch}'
342 device-executor: 'vpp-csit-device'
348 repo-stream-part: 'master'
350 branch: 'stable/1908'
351 repo-stream-part: 'stable.1908'
353 branch: 'stable/2005'
354 repo-stream-part: 'stable.2005'
356 branch: 'stable/2009'
357 repo-stream-part: 'stable.2009'
361 device-executor: 'vpp-csit-arm-ubuntu18'
372 executor: 'ubuntu1804arm-s'
373 make-parallel-jobs: '16'
376 device-node-arch: '1n-tx2'
378 device-node-arch: '1n-tx2'
380 device-node-arch: '1n-tx2'
382 # [end] VPP-CSIT-PERPATCH PROJECT
384 # VPP-CSIT-API-CRC PROJECT
386 # Only master and LTS branches are supported.
389 name: vpp-csit-api-crc
391 - 'vpp-csit-verify-api-crc-{stream}'
393 executor: 'vpp-csit-device'
397 branch: 'stable/1908'
398 repo-stream-part: 'stable.1908'
400 branch: 'stable/2009'
401 repo-stream-part: 'stable.2009'
405 # [end] VPP-CSIT-API-CRC PROJECT
407 # LF RELENG VPP PROJECTS
412 - gerrit-info-yaml-verify
413 build-node: centos7-builder-2c-2g
422 # [end] LF RELENG VPP PROJECTS
423 # [end] PROJECT DEFINITIONS
425 # JOB TEMPLATE DEFINITIONS
427 # Please keep job templates in the same order as they are referenced
428 # in the project definitions above.
430 # VPP-CHECKSTYLE-VERIFY JOB TEMPLATE
432 name: 'vpp-checkstyle-verify-{stream}-{os}-{executor-arch}'
434 project-type: freestyle
435 node: 'builder-{os}-prod-{executor-arch}'
437 archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
440 daysToKeep: '{build-days-to-keep}'
441 numToKeep: '{build-num-to-keep}'
442 artifactDaysToKeep: '{build-artifact-days-to-keep}'
443 artifactNumToKeep: '{build-artifact-num-to-keep}'
452 - repo-name-parameter:
453 repo-name: '{repo-stream-part}.ubuntu.bionic.main'
454 - gerrit-refspec-parameter:
455 refspec: '{branch-head-refspec}'
458 - gerrit-trigger-scm:
459 credentials-id: 'jenkins-gerrit-credentials'
460 refspec: '$GERRIT_REFSPEC'
461 choosing-strategy: 'gerrit'
464 - fdio-infra-wrappers:
465 build-timeout: '{build-timeout}'
466 - credentials-binding:
468 credential-id: VppApiCompatNotify
469 variable: SECRET_WEBEX_TEAMS_ACCESS_TOKEN
473 server-name: 'Primary'
475 - patchset-created-event:
476 exclude-drafts: 'true'
477 exclude-trivial-rebase: 'false'
478 exclude-no-code-change: 'false'
479 - draft-published-event
480 - comment-added-contains-event:
481 comment-contains-value: 'checkstylecheck'
482 - comment-added-contains-event:
483 comment-contains-value: 'docsonly'
484 - comment-added-contains-event:
485 comment-contains-value: 'recheck'
486 - comment-added-contains-event:
487 comment-contains-value: 'reverify'
488 # Following two are to cover missing functions of drafts
489 # going to review status
490 - comment-added-contains-event:
491 comment-contains-value: 'runtest'
492 - comment-added-contains-event:
493 comment-contains-value: 'This change is ready for review'
495 - project-compare-type: 'ANT'
496 project-pattern: '{project}'
498 - branch-compare-type: 'ANT'
499 branch-pattern: '**/{branch}'
501 - compare-type: REG_EXP
502 pattern: ^((?!\/COMMIT_MSG|docs|_abc|_def[\/\.]).)*$
503 forbidden-file-paths:
504 - compare-type: REG_EXP
506 - compare-type: REG_EXP
507 pattern: .*extras\/emacs\/.*
508 disable-strict-forbidden-file-verification: 'true'
510 gerrit-build-notbuilt-verified-value: 0
511 gerrit-build-successful-verified-value: 1
512 # yamllint disable-line rule:line-length
513 notbuilt-message: 'Automatic retry of failed jobs may be in process. A proper vote should be set when retry completes.'
514 # yamllint disable-line rule:line-length
515 failed-message: 'Checkstyle failed. No further verify jobs will be started.'
516 successful-message: 'checkstyle_success'
526 - ../scripts/setup_executor_env.sh
529 - ../scripts/vpp/checkstyle.sh
532 - ../scripts/vpp/test-checkstyle.sh
535 - ../scripts/vpp/api-checkstyle.sh
538 - ../scripts/vpp/commitmsg.sh
541 - fdio-infra-shiplogs:
542 maven-version: 'mvn36'
543 # [end] VPP-CHECKSTYLE-VERIFY JOB TEMPLATE
545 # VPP-VERIFY JOB TEMPLATE
547 name: 'vpp-verify-{stream}-{os}-{executor-arch}'
549 project-type: freestyle
550 node: 'builder-{os}-prod-{executor-arch}'
552 archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
555 daysToKeep: '{build-days-to-keep}'
557 artifactDaysToKeep: '{build-artifact-days-to-keep}'
558 artifactNumToKeep: '{build-artifact-num-to-keep}'
567 - repo-name-parameter:
568 repo-name: '{repo-stream-part}.{repo-os-part}'
572 name: ARCHIVE_ARTIFACTS
573 default: '{archive-artifacts}'
574 description: Artifacts to archive to the logs server.
575 - make-parallel-jobs-parameter:
576 make-parallel-jobs: '{make-parallel-jobs}'
577 - gerrit-refspec-parameter:
578 refspec: '{branch-head-refspec}'
581 - gerrit-trigger-scm:
582 credentials-id: 'jenkins-gerrit-credentials'
583 refspec: '$GERRIT_REFSPEC'
584 choosing-strategy: 'gerrit'
587 - fdio-infra-wrappers:
591 - gerrit-trigger-checkstyle:
598 - ../scripts/setup_executor_env.sh
601 - ../scripts/setup_vpp_ubuntu_docker_test.sh
604 - ../scripts/setup_vpp_dpdk_dev_env.sh
607 - ../scripts/vpp/build.sh
610 - fdio-infra-shiplogs:
611 maven-version: 'mvn36'
612 # [end] VPP-VERIFY JOB TEMPLATE
614 # VPP-DEBUG-VERIFY JOB TEMPLATE
616 name: 'vpp-debug-verify-{stream}-{os}-{executor-arch}'
618 project-type: freestyle
619 node: 'builder-{os}-prod-{executor-arch}'
621 archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
624 daysToKeep: '{build-days-to-keep}'
625 numToKeep: '{build-num-to-keep}'
626 artifactDaysToKeep: '{build-artifact-days-to-keep}'
627 artifactNumToKeep: '{build-artifact-num-to-keep}'
636 - repo-name-parameter:
637 repo-name: '{repo-stream-part}.ubuntu.bionic.main'
640 - make-parallel-jobs-parameter:
641 make-parallel-jobs: '{make-parallel-jobs}'
642 - gerrit-refspec-parameter:
643 refspec: '{branch-head-refspec}'
646 - gerrit-trigger-scm:
647 credentials-id: 'jenkins-gerrit-credentials'
648 refspec: '$GERRIT_REFSPEC'
649 choosing-strategy: 'gerrit'
652 - fdio-infra-wrappers:
653 build-timeout: '{build-timeout}'
656 # TODO: Ensure all supported jobs pass reliably before
658 - gerrit-trigger-checkstyle-nonvoting:
665 - ../scripts/setup_executor_env.sh
668 - ../scripts/setup_vpp_ubuntu_docker_test.sh
671 - ../scripts/setup_vpp_dpdk_dev_env.sh
674 - ../scripts/vpp/debug-build.sh
677 - fdio-infra-shiplogs:
678 maven-version: 'mvn36'
679 # [end] VPP-DEBUG-VERIFY JOB TEMPLATE
681 # VPP-MERGE JOB TEMPLATE
683 name: 'vpp-merge-{stream}-{os}-{executor-arch}'
685 project-type: freestyle
686 node: 'builder-{os}-prod-{executor-arch}'
689 daysToKeep: '{build-days-to-keep}'
691 artifactDaysToKeep: '{build-artifact-days-to-keep}'
692 artifactNumToKeep: '{build-artifact-num-to-keep}'
701 - maven-project-parameter:
704 maven-version: 'mvn33-new'
707 - repo-name-parameter:
708 repo-name: '{repo-stream-part}.{repo-os-part}'
710 name: ARCHIVE_ARTIFACTS
711 default: '{archive-artifacts}'
712 description: Artifacts to archive to the logs server.
713 - make-parallel-jobs-parameter:
714 make-parallel-jobs: '{make-parallel-jobs}'
717 - gerrit-trigger-scm:
718 credentials-id: 'jenkins-gerrit-credentials'
720 choosing-strategy: 'default'
723 - fdio-infra-wrappers:
727 - gerrit-trigger-patch-merged:
732 - config-file-provider:
734 - file-id: '.packagecloud'
736 - config-file-provider:
738 - file-id: 'packagecloud_api'
742 - ../scripts/setup_executor_env.sh
745 - ../scripts/setup_vpp_ubuntu_docker_test.sh
748 - ../scripts/setup_vpp_dpdk_dev_env.sh
751 - ../scripts/vpp/build.sh
753 - provide-maven-settings:
754 settings-file: 'vpp-settings'
755 global-settings-file: 'global-settings'
758 - ../scripts/packagecloud_push.sh
761 - fdio-infra-shiplogs:
762 maven-version: 'mvn36'
763 # [end] VPP-MERGE JOB TEMPLATE
765 # VPP-BETA-VERIFY JOB TEMPLATE
767 name: 'vpp-beta-verify-{stream}-{os}-{executor-arch}'
769 project-type: freestyle
770 node: 'builder-{os}-prod-{executor-arch}'
772 archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
775 daysToKeep: '{build-days-to-keep}'
777 artifactDaysToKeep: '{build-artifact-days-to-keep}'
778 artifactNumToKeep: '{build-artifact-num-to-keep}'
787 - repo-name-parameter:
788 repo-name: '{repo-stream-part}.{repo-os-part}'
792 name: ARCHIVE_ARTIFACTS
793 default: '{archive-artifacts}'
794 description: Artifacts to archive to the logs server.
795 - make-parallel-jobs-parameter:
796 make-parallel-jobs: '{make-parallel-jobs}'
797 - gerrit-refspec-parameter:
798 refspec: '{branch-head-refspec}'
801 - gerrit-trigger-scm:
802 credentials-id: 'jenkins-gerrit-credentials'
803 refspec: '$GERRIT_REFSPEC'
804 choosing-strategy: 'gerrit'
807 - fdio-infra-wrappers:
811 - gerrit-trigger-manually-triggered:
812 comment-trigger-value: '{comment-trigger-value}'
819 - ../scripts/setup_executor_env.sh
822 - ../scripts/setup_vpp_ubuntu_docker_test.sh
825 - ../scripts/setup_vpp_dpdk_dev_env.sh
828 - ../scripts/vpp/build.sh
831 - fdio-infra-shiplogs:
832 maven-version: 'mvn36'
833 # [end] VPP-BETA-VERIFY JOB TEMPLATE
835 # VPP-BETA-MERGE JOB TEMPLATE
837 name: 'vpp-beta-merge-{stream}-{os}-{executor-arch}'
839 project-type: freestyle
840 node: 'builder-{os}-prod-{executor-arch}'
843 daysToKeep: '{build-days-to-keep}'
845 artifactDaysToKeep: '{build-artifact-days-to-keep}'
846 artifactNumToKeep: '{build-artifact-num-to-keep}'
855 - maven-project-parameter:
858 maven-version: 'mvn33-new'
861 - repo-name-parameter:
862 repo-name: '{repo-stream-part}.{repo-os-part}'
864 name: ARCHIVE_ARTIFACTS
865 default: '{archive-artifacts}'
866 description: Artifacts to archive to the logs server.
867 - make-parallel-jobs-parameter:
868 make-parallel-jobs: '{make-parallel-jobs}'
871 - gerrit-trigger-scm:
872 credentials-id: 'jenkins-gerrit-credentials'
874 choosing-strategy: 'default'
877 - fdio-infra-wrappers:
878 build-timeout: '{build-timeout}'
881 - gerrit-trigger-manually-triggered:
882 comment-trigger-value: '{comment-trigger-value}'
887 - config-file-provider:
889 - file-id: '.packagecloud'
891 - config-file-provider:
893 - file-id: 'packagecloud_api'
897 - ../scripts/setup_executor_env.sh
900 - ../scripts/vpp/checkstyle.sh
903 - ../scripts/setup_vpp_ubuntu_docker_test.sh
906 - ../scripts/setup_vpp_dpdk_dev_env.sh
909 - ../scripts/vpp/build.sh
910 - provide-maven-settings:
911 settings-file: 'vpp-settings'
912 global-settings-file: 'global-settings'
915 - ../scripts/packagecloud_push.sh
918 - fdio-infra-shiplogs:
919 maven-version: 'mvn36'
920 # [end] VPP-BETA-MERGE JOB TEMPLATE
922 # VPP-GCC-VERIFY JOB TEMPLATE
924 name: 'vpp-gcc-verify-{stream}-{os}-{executor-arch}'
926 project-type: freestyle
927 node: 'builder-{os}-prod-{executor-arch}'
929 archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
932 daysToKeep: '{build-days-to-keep}'
934 artifactDaysToKeep: '{build-artifact-days-to-keep}'
935 artifactNumToKeep: '{build-artifact-num-to-keep}'
944 - repo-name-parameter:
945 repo-name: '{repo-stream-part}.{repo-os-part}'
949 name: ARCHIVE_ARTIFACTS
950 default: '{archive-artifacts}'
951 description: Artifacts to archive to the logs server.
952 - make-parallel-jobs-parameter:
953 make-parallel-jobs: '{make-parallel-jobs}'
954 - gerrit-refspec-parameter:
955 refspec: '{branch-head-refspec}'
958 - gerrit-trigger-scm:
959 credentials-id: 'jenkins-gerrit-credentials'
960 refspec: '$GERRIT_REFSPEC'
961 choosing-strategy: 'gerrit'
964 - fdio-infra-wrappers:
968 - gerrit-trigger-checkstyle:
975 - ../scripts/setup_executor_env.sh
978 - ../scripts/setup_vpp_ubuntu_docker_test.sh
981 - ../scripts/setup_vpp_dpdk_dev_env.sh
984 - ../scripts/vpp/gcc-build.sh
987 - fdio-infra-shiplogs:
988 maven-version: 'mvn36'
989 # [end] VPP-GCC-VERIFY JOB TEMPLATE
991 # VPP-CSIT-VERIFY-DEVICE JOB TEMPLATE
993 name: 'vpp-csit-verify-device-{stream}-{device-node-arch}'
998 <li>{device-executor}
1002 project-type: freestyle
1003 node: '{device-executor}'
1005 archive-artifacts: '**/csit_current/**/*.*'
1009 daysToKeep: '{build-days-to-keep}'
1011 artifactDaysToKeep: '{build-artifact-days-to-keep}'
1012 artifactNumToKeep: '{build-artifact-num-to-keep}'
1015 - project-parameter:
1016 project: '{project}'
1021 - repo-name-parameter:
1022 repo-name: '{repo-stream-part}.ubuntu.bionic.main'
1023 - gerrit-refspec-parameter
1024 - gerrit-event-type-parameter
1025 - gerrit-event-comment-text-parameter
1026 - gerrit-csit-refspec-parameter
1030 name: ARCHIVE_ARTIFACTS
1031 default: '{archive-artifacts}'
1032 description: Artifacts to archive to the logs server.
1033 - make-parallel-jobs-parameter:
1034 make-parallel-jobs: '{make-parallel-jobs}'
1037 - gerrit-trigger-scm:
1038 credentials-id: 'jenkins-gerrit-credentials'
1039 refspec: '$GERRIT_REFSPEC'
1040 choosing-strategy: 'gerrit'
1043 - fdio-infra-wrappers:
1047 - 'gerrit-trigger-vpp-csit-devicetest-full':
1050 skip-vote: '{skip-vote}'
1054 !include-raw-escape:
1055 - ../scripts/setup_executor_env.sh
1057 !include-raw-escape:
1058 - ../scripts/setup_vpp_ubuntu_docker_test.sh
1060 !include-raw-escape:
1061 - ../scripts/setup_vpp_dpdk_dev_env.sh
1063 !include-raw-escape:
1064 - ../scripts/vpp/csit-device.sh
1068 output-path: 'archives'
1070 - fdio-infra-shiplogs:
1071 maven-version: 'mvn36'
1072 # [end] VPP-CSIT-VERIFY-DEVICE JOB TEMPLATE
1074 # VPP-CSIT-VERIFY-PERF JOB TEMPLATE
1076 name: 'vpp-csit-verify-perf-{stream}-{node-arch}'
1084 Contrary to csit-vpp job, this also measures the parent performance,
1085 and fails if performance regression is detected.
1086 See https://github.com/FDio/csit/blob/master/docs/cpta/methodology/perpatch_performance_tests.rst
1089 project-type: freestyle
1092 archive-artifacts: >
1093 **/csit_current/**/*.*
1094 **/csit_parent/**/*.*
1098 daysToKeep: '{build-days-to-keep}'
1100 artifactDaysToKeep: '{build-artifact-days-to-keep}'
1101 artifactNumToKeep: '{build-artifact-num-to-keep}'
1104 - project-parameter:
1105 project: '{project}'
1110 - repo-name-parameter:
1111 repo-name: '{repo-stream-part}.ubuntu.bionic.main'
1112 - gerrit-refspec-parameter
1113 - gerrit-event-type-parameter
1114 - gerrit-event-comment-text-parameter
1115 - gerrit-csit-refspec-parameter
1116 - csit-perf-trial-duration-parameter:
1117 csit-perf-trial-duration: "10.0"
1118 - csit-perf-trial-multiplicity-parameter:
1119 csit-perf-trial-multiplicity: "5"
1123 name: ARCHIVE_ARTIFACTS
1124 default: '{archive-artifacts}'
1125 description: Artifacts to archive to the logs server.
1126 - make-parallel-jobs-parameter:
1127 make-parallel-jobs: '{make-parallel-jobs}'
1130 - gerrit-trigger-scm:
1131 credentials-id: 'jenkins-gerrit-credentials'
1132 refspec: '$GERRIT_REFSPEC'
1133 choosing-strategy: 'gerrit'
1136 - fdio-infra-wrappers-non-activity-timeout:
1140 - gerrit-trigger-csit-perftest:
1141 project: '{project}'
1143 trigger-word: 'perftest-{node-arch}'
1148 !include-raw-escape:
1149 - ../scripts/setup_executor_env.sh
1151 !include-raw-escape:
1152 - ../scripts/setup_vpp_ubuntu_docker_test.sh
1154 !include-raw-escape:
1155 - ../scripts/setup_vpp_dpdk_dev_env.sh
1157 !include-raw-escape:
1158 - ../scripts/vpp/csit-perf.sh
1162 output-path: 'csit_current/0/'
1165 # [end] VPP-CSIT-VERIFY-PERF JOB TEMPLATE
1167 # VPP-CSIT-VERIFY-API-CRC JOB TEMPLATE
1169 name: 'vpp-csit-verify-api-crc-{stream}'
1171 project-type: freestyle
1174 archive-artifacts: ''
1178 daysToKeep: '{build-days-to-keep}'
1180 artifactDaysToKeep: '{build-artifact-days-to-keep}'
1181 artifactNumToKeep: '{build-artifact-num-to-keep}'
1184 - project-parameter:
1185 project: '{project}'
1188 - gerrit-refspec-parameter
1189 - gerrit-csit-refspec-parameter
1193 name: ARCHIVE_ARTIFACTS
1194 default: '{archive-artifacts}'
1195 description: Artifacts to archive to the logs server.
1196 # Not sure whether not failing has any useful usage,
1197 # but it does not hurt to have some flexibility for future.
1198 - csit-fail-on-crc-mismatch-parameter:
1199 fail-on-crc-mismatch: 'True'
1202 - gerrit-trigger-scm:
1203 credentials-id: 'jenkins-gerrit-credentials'
1204 refspec: '$GERRIT_REFSPEC'
1205 choosing-strategy: 'gerrit'
1208 - fdio-infra-wrappers-non-activity-timeout:
1212 # TODO: Make other verify jobs trigger on success of this one,
1213 # without breaking verification for VPP branches before stable/1908.
1214 - gerrit-trigger-checkstyle:
1220 !include-raw-escape:
1221 - ../scripts/setup_executor_env.sh
1223 !include-raw-escape:
1224 - ../scripts/setup_vpp_ubuntu_docker_test.sh
1226 !include-raw-escape:
1227 - ../scripts/vpp/check_crc.sh
1228 # TODO: Add sending e-mail notifications to vpp-api-dev@lists.fd.io
1231 - fdio-infra-shiplogs:
1232 maven-version: 'mvn36'
1233 # [end] VPP-CSIT-VERIFY-API-CRC JOB TEMPLATE
1234 # [end] JOB TEMPLATE DEFINITIONS