1 # Copyright (c) 2020 Cisco and/or its affiliates.
2 # Licensed under the Apache License, Version 2.0 (the "License");
3 # you may not use this file except in compliance with the License.
4 # You may obtain a copy of the License at:
6 # http://www.apache.org/licenses/LICENSE-2.0
8 # Unless required by applicable law or agreed to in writing, software
9 # distributed under the License is distributed on an "AS IS" BASIS,
10 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11 # See the License for the specific language governing permissions and
12 # limitations under the License.
17 # Please keep projects grouped in this order:
18 # vpp-x86_64, vpp-aarch64, vpp-csit
21 # - The 'branch-head-refspec' attribute is used for sandbox testing.
22 # Use the get_gerrit_refspec() bash function in
23 # .../ci-management/docker/scripts/lib_common.sh
24 # to query gerrit for the refspec of HEAD in a branch.
25 # TODO: see if there is a refspec that works without requiring
26 # use of get_gerrit_refspec and hand entering the result
27 # in the WebUI 'Build With Parameters' gerrit refspec field.
28 # - Use the following to import get_gerrit_refspec into a bash shell
29 # from the ci-management directory:
30 # $ eval "$(grep -A12 get_gerrit ./docker/scripts/lib_common.sh)"
33 # VPP-CHECKSTYLE-X86_64 PROJECT
35 name: vpp-checkstyle-x86_64
37 - 'vpp-checkstyle-verify-{stream}-{os}-{executor-arch}'
42 repo-stream-part: 'master'
43 branch-head-refspec: ''
46 repo-stream-part: 'stable.1908'
47 branch-head-refspec: ''
50 repo-stream-part: 'stable.2005'
51 branch-head-refspec: ''
54 repo-stream-part: 'stable.2009'
55 branch-head-refspec: ''
58 repo-stream-part: 'stable.2101'
59 branch-head-refspec: ''
61 executor-arch: 'x86_64'
62 # [end] VPP-CHECKSTYLE-X86_64 PROJECT
68 - 'vpp-verify-{stream}-{os}-{executor-arch}'
69 - 'vpp-merge-{stream}-{os}-{executor-arch}'
71 make-parallel-jobs: '4'
72 archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
76 repo-stream-part: 'master'
77 branch-head-refspec: ''
80 repo-stream-part: 'stable.1908'
81 branch-head-refspec: ''
84 repo-stream-part: 'stable.2005'
85 branch-head-refspec: ''
88 repo-stream-part: 'stable.2009'
89 branch-head-refspec: ''
92 repo-stream-part: 'stable.2101'
93 branch-head-refspec: ''
96 repo-os-part: 'ubuntu.bionic.main'
97 executor-arch: 'x86_64'
98 # [end] VPP-X86_64 PROJECT
100 # VPP-OS-EOL-X86_64 PROJECT
102 name: vpp-os-eol-x86_64
104 - 'vpp-verify-{stream}-{os}-{executor-arch}'
105 - 'vpp-merge-{stream}-{os}-{executor-arch}'
107 make-parallel-jobs: '4'
108 archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
111 branch: 'stable/1908'
112 repo-stream-part: 'stable.1908'
113 branch-head-refspec: ''
115 branch: 'stable/2005'
116 repo-stream-part: 'stable.2005'
117 branch-head-refspec: ''
119 branch: 'stable/2009'
120 repo-stream-part: 'stable.2009'
121 branch-head-refspec: ''
124 repo-os-part: 'centos7'
125 executor-arch: 'x86_64'
126 # [end] VPP-OS-EOL-X86_64 PROJECT
128 # VPP-OS-IN-2009-X86_64 PROJECT
130 # This project is used to separate streams which are only
131 # supported on the OS in the release in which it was added
134 # For each 'os-in-XXXX', the stream for the release is
135 # added here in addition to the 'vpp-x86_64' project.
136 # Each subsequent release is also added to both.
138 # When all of the streams older than the 'os-in-XXXX" have
139 # been removed from the 'vpp-x86_64' project, then the OSes
140 # in this project get moved to the 'vpp-x86_64' project and
141 # this project gets deleted or commented out if it is only
142 # 'os-in-XXXX' project.
145 name: vpp-os-in-2009-x86_64
147 - 'vpp-verify-{stream}-{os}-{executor-arch}'
148 - 'vpp-merge-{stream}-{os}-{executor-arch}'
150 make-parallel-jobs: '4'
151 archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
155 repo-stream-part: 'master'
156 branch-head-refspec: ''
158 branch: 'stable/2009'
159 repo-stream-part: 'stable.2009'
160 branch-head-refspec: ''
162 branch: 'stable/2101'
163 repo-stream-part: 'stable.2101'
164 branch-head-refspec: ''
168 repo-os-part: 'centos8'
170 repo-os-part: 'stretch'
172 repo-os-part: 'buster'
174 repo-os-part: 'ubuntu.focal.main'
175 executor-arch: 'x86_64'
176 # [end] VPP-OS-IN-2009-X86_64 PROJECT
178 # VPP-DEBUG-X86_64 PROJECT
180 # Currently a Non-Voting job due to intermittent failures.
181 # Limiting branches to master and 2009, since other branches
182 # may not get fixes for the intermittent failures.
185 name: vpp-debug-x86_64
187 - 'vpp-debug-verify-{stream}-{os}-{executor-arch}'
189 make-parallel-jobs: '4'
190 archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
194 repo-stream-part: 'master'
195 branch-head-refspec: ''
197 branch: 'stable/2009'
198 repo-stream-part: 'stable.2009'
199 branch-head-refspec: ''
202 repo-os-part: 'ubuntu.focal.main'
203 executor-arch: 'x86_64'
204 # [end] VPP-DEBUG-X86_64 PROJECT
206 # VPP-BETA-X86_64 PROJECT
208 # Beta jobs are experimental jobs for testing new OS versions on master.
210 # They are only manually triggered. Either using the Jenkins WebUI
211 # 'Build with Parameters' to run a single job or adding 'vpp-beta-verify'
212 # or 'vpp-beta-merge' as a comment to run all beta verify or merge jobs.
214 # Once testing is complete, the os is moved to the current
215 # 'vpp-os-in-XXXX-x86_64' project. If no OSes are being
216 # tested then this project should be commented out.
219 # name: vpp-beta-x86_64
221 # - 'vpp-beta-verify-{stream}-{os}-{executor-arch}':
222 # comment-trigger-value: 'vpp-beta-verify'
223 # - 'vpp-beta-merge-{stream}-{os}-{executor-arch}':
224 # comment-trigger-value: 'vpp-beta-merge'
226 # make-parallel-jobs: '4'
227 # archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
231 # repo-stream-part: 'master'
232 # branch-head-refspec: ''
235 # repo-os-part: 'buster'
236 # executor-arch: x86_64
237 # [end] VPP-BETA-X86_64 PROJECT
239 # VPP-GCC-X86_64 PROJECT
243 - 'vpp-gcc-verify-{stream}-{os}-{executor-arch}'
245 executor-arch: 'x86_64'
248 repo-os-part: 'ubuntu.focal.main'
252 repo-stream-part: 'master'
253 branch-head-refspec: ''
255 branch: 'stable/2009'
256 repo-stream-part: 'stable.2009'
257 branch-head-refspec: ''
259 branch: 'stable/2101'
260 repo-stream-part: 'stable.2101'
261 branch-head-refspec: ''
262 # [end] VPP-GCC-X86_64 PROJECT
264 # VPP-AARCH64 PROJECT
268 - 'vpp-verify-{stream}-{os}-{executor-arch}'
269 - 'vpp-merge-{stream}-{os}-{executor-arch}'
271 make-parallel-jobs: '16'
272 archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
276 repo-stream-part: 'master'
277 branch-head-refspec: ''
279 branch: 'stable/1908'
280 repo-stream-part: 'stable.1908'
281 branch-head-refspec: ''
283 branch: 'stable/2005'
284 repo-stream-part: 'stable.2005'
285 branch-head-refspec: ''
287 branch: 'stable/2009'
288 repo-stream-part: 'stable.2009'
289 branch-head-refspec: ''
291 branch: 'stable/2101'
292 repo-stream-part: 'stable.2101'
293 branch-head-refspec: ''
296 repo-os-part: 'ubuntu-arm.bionic.main'
297 executor-arch: 'aarch64'
298 # [end] VPP-AARCH64 PROJECT
300 # VPP-OS-IN-2009-AARCH64 PROJECT
302 # This project is used to separate streams which are only
303 # supported on the OS in the release in which it was added
306 # For each 'os-in-XXXX', the stream for the release is
307 # added here in addition to the 'vpp-aarch64' project.
308 # Each subsequent release is also added to both.
310 # When all of the streams older than the 'os-in-XXXX" have
311 # been removed from the 'vpp-aarch64' project, then the OSes
312 # in this project get moved to the 'vpp-aarch64' project and
313 # this project gets deleted or commented out if it is only
314 # 'os-in-XXXX' project.
317 # name: vpp-os-in-2009-aarch64
319 # - 'vpp-verify-{stream}-{os}-{executor-arch}'
320 # - 'vpp-merge-{stream}-{os}-{executor-arch}'
323 # make-parallel-jobs: '16'
324 # archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
328 # repo-stream-part: 'master'
329 # branch-head-refspec: ''
331 # branch: 'stable/2009'
332 # repo-stream-part: 'stable.2009'
333 # branch-head-refspec: ''
336 # repo-os-part: 'ubuntu.focal.main'
337 # executor-arch: 'aarch64'
338 # [end] VPP-OS-IN-2009-AARCH64 PROJECT
340 # VPP-BETA-AARCH64 PROJECT
342 # Beta jobs are experimental jobs for testing new OS versions on master.
344 # They are only manually triggered. Either using the Jenkins WebUI
345 # 'Build with Parameters' to run a single job or adding 'vpp-beta-verify'
346 # or 'vpp-beta-merge' as a comment to run all beta verify or merge jobs.
348 # Once testing is complete, the os is moved to the current
349 # 'vpp-os-in-XXXX-aarch64' project. If no OSes are being
350 # tested then this project should be commented out.
353 name: vpp-beta-aarch64
355 - 'vpp-beta-verify-{stream}-{os}-{executor-arch}':
356 comment-trigger-value: 'beta-verify'
357 - 'vpp-beta-merge-{stream}-{os}-{executor-arch}':
358 comment-trigger-value: 'beta-merge'
360 make-parallel-jobs: '16'
361 archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
365 repo-stream-part: 'master'
366 branch-head-refspec: ''
369 repo-os-part: 'centos8'
371 repo-os-part: 'ubuntu.focal.main'
372 executor-arch: aarch64
373 # [end] VPP-BETA-AARCH64 PROJECT
375 # VPP-CSIT-PERPATCH PROJECT
377 name: vpp-csit-perpatch
379 - 'vpp-csit-verify-device-{stream}-{device-node-arch}':
380 make-parallel-jobs: '32'
381 - 'vpp-csit-verify-perf-{stream}-{node-arch}'
384 device-executor: 'vpp-csit-device'
390 repo-stream-part: 'master'
392 branch: 'stable/1908'
393 repo-stream-part: 'stable.1908'
395 branch: 'stable/2005'
396 repo-stream-part: 'stable.2005'
398 branch: 'stable/2009'
399 repo-stream-part: 'stable.2009'
401 branch: 'stable/2101'
402 repo-stream-part: 'stable.2101'
406 device-executor: 'vpp-csit-arm-ubuntu18'
417 executor: 'ubuntu1804arm-s'
418 make-parallel-jobs: '16'
421 device-node-arch: '1n-tx2'
423 device-node-arch: '1n-tx2'
425 device-node-arch: '1n-tx2'
427 # [end] VPP-CSIT-PERPATCH PROJECT
429 # VPP-CSIT-API-CRC PROJECT
431 # Only master and LTS branches are supported.
434 name: vpp-csit-api-crc
436 - 'vpp-csit-verify-api-crc-{stream}'
438 executor: 'vpp-csit-device'
442 branch: 'stable/1908'
443 repo-stream-part: 'stable.1908'
445 branch: 'stable/2009'
446 repo-stream-part: 'stable.2009'
448 branch: 'stable/2101'
449 repo-stream-part: 'stable.2101'
453 # [end] VPP-CSIT-API-CRC PROJECT
455 # LF RELENG VPP PROJECTS
460 - gerrit-info-yaml-verify
461 build-node: centos7-builder-2c-2g
470 # [end] LF RELENG VPP PROJECTS
471 # [end] PROJECT DEFINITIONS
473 # JOB TEMPLATE DEFINITIONS
475 # Please keep job templates in the same order as they are referenced
476 # in the project definitions above.
478 # VPP-CHECKSTYLE-VERIFY JOB TEMPLATE
480 name: 'vpp-checkstyle-verify-{stream}-{os}-{executor-arch}'
482 project-type: freestyle
483 node: 'builder-{os}-prod-{executor-arch}'
487 daysToKeep: '{build-days-to-keep}'
488 numToKeep: '{build-num-to-keep}'
489 artifactDaysToKeep: '{build-artifact-days-to-keep}'
490 artifactNumToKeep: '{build-artifact-num-to-keep}'
492 # Please keep parameters in alphabetical order
496 - gerrit-refspec-parameter:
497 refspec: '{branch-head-refspec}'
502 - repo-name-parameter:
503 repo-name: '{repo-stream-part}.ubuntu.bionic.main'
504 - workspace-archive-artifacts-parameter:
505 artifacts: '{archive-artifacts}'
508 - gerrit-trigger-scm:
509 credentials-id: 'jenkins-gerrit-credentials'
510 refspec: '$GERRIT_REFSPEC'
511 choosing-strategy: 'gerrit'
514 - fdio-infra-wrappers:
515 build-timeout: '{build-timeout}'
516 - credentials-binding:
518 credential-id: VppApiCompatNotify
519 variable: SECRET_WEBEX_TEAMS_ACCESS_TOKEN
523 server-name: 'Primary'
525 - patchset-created-event:
526 exclude-drafts: 'true'
527 exclude-trivial-rebase: 'false'
528 exclude-no-code-change: 'false'
529 - draft-published-event
530 - comment-added-contains-event:
531 comment-contains-value: 'checkstylecheck'
532 - comment-added-contains-event:
533 comment-contains-value: 'docsonly'
534 - comment-added-contains-event:
535 comment-contains-value: 'recheck'
536 - comment-added-contains-event:
537 comment-contains-value: 'reverify'
538 # Following two are to cover missing functions of drafts
539 # going to review status
540 - comment-added-contains-event:
541 comment-contains-value: 'runtest'
542 - comment-added-contains-event:
543 comment-contains-value: 'This change is ready for review'
545 - project-compare-type: 'ANT'
546 project-pattern: '{project}'
548 - branch-compare-type: 'ANT'
549 branch-pattern: '**/{branch}'
551 - compare-type: REG_EXP
552 pattern: ^((?!\/COMMIT_MSG|docs|_abc|_def[\/\.]).)*$
553 forbidden-file-paths:
554 - compare-type: REG_EXP
556 - compare-type: REG_EXP
557 pattern: .*extras\/emacs\/.*
558 disable-strict-forbidden-file-verification: 'true'
560 gerrit-build-notbuilt-verified-value: 0
561 gerrit-build-successful-verified-value: 1
562 # yamllint disable-line rule:line-length
563 notbuilt-message: 'Automatic retry of failed jobs may be in process. A proper vote should be set when retry completes.'
564 # yamllint disable-line rule:line-length
565 failed-message: 'Checkstyle failed. No further verify jobs will be started.'
566 successful-message: 'checkstyle_success'
576 - ../scripts/setup_executor_env.sh
579 - ../scripts/vpp/checkstyle.sh
582 - ../scripts/vpp/test-checkstyle.sh
585 - ../scripts/vpp/api-checkstyle.sh
588 - ../scripts/vpp/commitmsg.sh
593 # [end] VPP-CHECKSTYLE-VERIFY JOB TEMPLATE
595 # VPP-VERIFY JOB TEMPLATE
597 name: 'vpp-verify-{stream}-{os}-{executor-arch}'
599 project-type: freestyle
600 node: 'builder-{os}-prod-{executor-arch}'
604 daysToKeep: '{build-days-to-keep}'
606 artifactDaysToKeep: '{build-artifact-days-to-keep}'
607 artifactNumToKeep: '{build-artifact-num-to-keep}'
609 # Please keep parameters in alphabetical order
613 - gerrit-refspec-parameter:
614 refspec: '{branch-head-refspec}'
615 - make-parallel-jobs-parameter:
616 make-parallel-jobs: '{make-parallel-jobs}'
621 - repo-name-parameter:
622 repo-name: '{repo-stream-part}.{repo-os-part}'
625 - workspace-archive-artifacts-parameter:
626 artifacts: '{archive-artifacts}'
629 - gerrit-trigger-scm:
630 credentials-id: 'jenkins-gerrit-credentials'
631 refspec: '$GERRIT_REFSPEC'
632 choosing-strategy: 'gerrit'
635 - fdio-infra-wrappers:
639 - gerrit-trigger-checkstyle:
646 - ../scripts/setup_executor_env.sh
649 - ../scripts/setup_vpp_ubuntu_docker_test.sh
652 - ../scripts/setup_vpp_dpdk_dev_env.sh
655 - ../scripts/vpp/build.sh
659 # [end] VPP-VERIFY JOB TEMPLATE
661 # VPP-DEBUG-VERIFY JOB TEMPLATE
663 name: 'vpp-debug-verify-{stream}-{os}-{executor-arch}'
665 project-type: freestyle
666 node: 'builder-{os}-prod-{executor-arch}'
670 daysToKeep: '{build-days-to-keep}'
671 numToKeep: '{build-num-to-keep}'
672 artifactDaysToKeep: '{build-artifact-days-to-keep}'
673 artifactNumToKeep: '{build-artifact-num-to-keep}'
675 # Please keep parameters in alphabetical order
679 - gerrit-refspec-parameter:
680 refspec: '{branch-head-refspec}'
681 - make-parallel-jobs-parameter:
682 make-parallel-jobs: '{make-parallel-jobs}'
687 - repo-name-parameter:
688 repo-name: '{repo-stream-part}.ubuntu.bionic.main'
691 - workspace-archive-artifacts-parameter:
692 artifacts: '{archive-artifacts}'
695 - gerrit-trigger-scm:
696 credentials-id: 'jenkins-gerrit-credentials'
697 refspec: '$GERRIT_REFSPEC'
698 choosing-strategy: 'gerrit'
701 - fdio-infra-wrappers:
702 build-timeout: '{build-timeout}'
705 # TODO: Ensure all supported jobs pass reliably before
707 - gerrit-trigger-checkstyle-nonvoting:
714 - ../scripts/setup_executor_env.sh
717 - ../scripts/setup_vpp_ubuntu_docker_test.sh
720 - ../scripts/setup_vpp_dpdk_dev_env.sh
723 - ../scripts/vpp/debug-build.sh
727 # [end] VPP-DEBUG-VERIFY JOB TEMPLATE
729 # VPP-MERGE JOB TEMPLATE
731 name: 'vpp-merge-{stream}-{os}-{executor-arch}'
733 project-type: freestyle
734 node: 'builder-{os}-prod-{executor-arch}'
737 daysToKeep: '{build-days-to-keep}'
739 artifactDaysToKeep: '{build-artifact-days-to-keep}'
740 artifactNumToKeep: '{build-artifact-num-to-keep}'
742 # Please keep parameters in alphabetical order
746 - make-parallel-jobs-parameter:
747 make-parallel-jobs: '{make-parallel-jobs}'
752 - repo-name-parameter:
753 repo-name: '{repo-stream-part}.{repo-os-part}'
756 - workspace-archive-artifacts-parameter:
757 artifacts: '{archive-artifacts}'
760 - gerrit-trigger-scm:
761 credentials-id: 'jenkins-gerrit-credentials'
763 choosing-strategy: 'default'
766 - fdio-infra-wrappers:
770 - gerrit-trigger-patch-merged:
775 - config-file-provider:
777 - file-id: '.packagecloud'
779 - config-file-provider:
781 - file-id: 'packagecloud_api'
785 - ../scripts/setup_executor_env.sh
788 - ../scripts/setup_vpp_ubuntu_docker_test.sh
791 - ../scripts/setup_vpp_dpdk_dev_env.sh
794 - ../scripts/vpp/build.sh
796 - provide-maven-settings:
797 settings-file: 'vpp-settings'
798 global-settings-file: 'global-settings'
801 - ../scripts/packagecloud_push.sh
805 # [end] VPP-MERGE JOB TEMPLATE
807 # VPP-BETA-VERIFY JOB TEMPLATE
809 name: 'vpp-beta-verify-{stream}-{os}-{executor-arch}'
811 project-type: freestyle
812 node: 'builder-{os}-prod-{executor-arch}'
816 daysToKeep: '{build-days-to-keep}'
818 artifactDaysToKeep: '{build-artifact-days-to-keep}'
819 artifactNumToKeep: '{build-artifact-num-to-keep}'
821 # Please keep parameters in alphabetical order
825 - gerrit-refspec-parameter:
826 refspec: '{branch-head-refspec}'
827 - make-parallel-jobs-parameter:
828 make-parallel-jobs: '{make-parallel-jobs}'
833 - repo-name-parameter:
834 repo-name: '{repo-stream-part}.{repo-os-part}'
837 - workspace-archive-artifacts-parameter:
838 artifacts: '{archive-artifacts}'
841 - gerrit-trigger-scm:
842 credentials-id: 'jenkins-gerrit-credentials'
843 refspec: '$GERRIT_REFSPEC'
844 choosing-strategy: 'gerrit'
847 - fdio-infra-wrappers:
851 - gerrit-trigger-manually-triggered:
852 comment-trigger-value: '{comment-trigger-value}'
859 - ../scripts/setup_executor_env.sh
862 - ../scripts/setup_vpp_ubuntu_docker_test.sh
865 - ../scripts/setup_vpp_dpdk_dev_env.sh
868 - ../scripts/vpp/build.sh
872 # [end] VPP-BETA-VERIFY JOB TEMPLATE
874 # VPP-BETA-MERGE JOB TEMPLATE
876 name: 'vpp-beta-merge-{stream}-{os}-{executor-arch}'
878 project-type: freestyle
879 node: 'builder-{os}-prod-{executor-arch}'
882 daysToKeep: '{build-days-to-keep}'
884 artifactDaysToKeep: '{build-artifact-days-to-keep}'
885 artifactNumToKeep: '{build-artifact-num-to-keep}'
887 # Please keep parameters in alphabetical order
891 - make-parallel-jobs-parameter:
892 make-parallel-jobs: '{make-parallel-jobs}'
897 - repo-name-parameter:
898 repo-name: '{repo-stream-part}.{repo-os-part}'
901 - workspace-archive-artifacts-parameter:
902 artifacts: '{archive-artifacts}'
905 - gerrit-trigger-scm:
906 credentials-id: 'jenkins-gerrit-credentials'
908 choosing-strategy: 'default'
911 - fdio-infra-wrappers:
912 build-timeout: '{build-timeout}'
915 - gerrit-trigger-manually-triggered:
916 comment-trigger-value: '{comment-trigger-value}'
921 - config-file-provider:
923 - file-id: '.packagecloud'
925 - config-file-provider:
927 - file-id: 'packagecloud_api'
931 - ../scripts/setup_executor_env.sh
934 - ../scripts/vpp/checkstyle.sh
937 - ../scripts/setup_vpp_ubuntu_docker_test.sh
940 - ../scripts/setup_vpp_dpdk_dev_env.sh
943 - ../scripts/vpp/build.sh
946 - ../scripts/packagecloud_push.sh
950 # [end] VPP-BETA-MERGE JOB TEMPLATE
952 # VPP-GCC-VERIFY JOB TEMPLATE
954 name: 'vpp-gcc-verify-{stream}-{os}-{executor-arch}'
956 project-type: freestyle
957 node: 'builder-{os}-prod-{executor-arch}'
961 daysToKeep: '{build-days-to-keep}'
963 artifactDaysToKeep: '{build-artifact-days-to-keep}'
964 artifactNumToKeep: '{build-artifact-num-to-keep}'
966 # Please keep parameters in alphabetical order
970 - gerrit-refspec-parameter:
971 refspec: '{branch-head-refspec}'
972 - make-parallel-jobs-parameter:
973 make-parallel-jobs: '{make-parallel-jobs}'
978 - repo-name-parameter:
979 repo-name: '{repo-stream-part}.{repo-os-part}'
982 - workspace-archive-artifacts-parameter:
983 artifacts: '{archive-artifacts}'
986 - gerrit-trigger-scm:
987 credentials-id: 'jenkins-gerrit-credentials'
988 refspec: '$GERRIT_REFSPEC'
989 choosing-strategy: 'gerrit'
992 - fdio-infra-wrappers:
996 - gerrit-trigger-checkstyle:
1002 !include-raw-escape:
1003 - ../scripts/setup_executor_env.sh
1005 !include-raw-escape:
1006 - ../scripts/setup_vpp_ubuntu_docker_test.sh
1008 !include-raw-escape:
1009 - ../scripts/setup_vpp_dpdk_dev_env.sh
1011 !include-raw-escape:
1012 - ../scripts/vpp/gcc-build.sh
1015 - fdio-infra-publish
1016 # [end] VPP-GCC-VERIFY JOB TEMPLATE
1018 # VPP-CSIT-VERIFY-DEVICE JOB TEMPLATE
1020 name: 'vpp-csit-verify-device-{stream}-{device-node-arch}'
1025 <li>{device-executor}
1029 project-type: freestyle
1030 node: '{device-executor}'
1032 archive-artifacts: '**/csit_current/**/*.*'
1036 daysToKeep: '{build-days-to-keep}'
1038 artifactDaysToKeep: '{build-artifact-days-to-keep}'
1039 artifactNumToKeep: '{build-artifact-num-to-keep}'
1041 # Please keep parameters in alphabetical order
1043 - archive-artifacts-parameter:
1044 artifacts: '{archive-artifacts}'
1045 - gerrit-csit-refspec-parameter
1046 - gerrit-event-comment-text-parameter
1047 - gerrit-event-type-parameter
1050 - gerrit-refspec-parameter
1051 - make-parallel-jobs-parameter:
1052 make-parallel-jobs: '{make-parallel-jobs}'
1055 - project-parameter:
1056 project: '{project}'
1057 - repo-name-parameter:
1058 repo-name: '{repo-stream-part}.ubuntu.bionic.main'
1063 - gerrit-trigger-scm:
1064 credentials-id: 'jenkins-gerrit-credentials'
1065 refspec: '$GERRIT_REFSPEC'
1066 choosing-strategy: 'gerrit'
1069 - fdio-infra-wrappers:
1073 - 'gerrit-trigger-vpp-csit-devicetest-full':
1076 skip-vote: '{skip-vote}'
1080 !include-raw-escape:
1081 - ../scripts/setup_executor_env.sh
1083 !include-raw-escape:
1084 - ../scripts/setup_vpp_ubuntu_docker_test.sh
1086 !include-raw-escape:
1087 - ../scripts/setup_vpp_dpdk_dev_env.sh
1089 !include-raw-escape:
1090 - ../scripts/vpp/csit-device.sh
1094 output-path: 'archives'
1096 - fdio-infra-shiplogs:
1097 maven-version: 'mvn36'
1098 # [end] VPP-CSIT-VERIFY-DEVICE JOB TEMPLATE
1100 # VPP-CSIT-VERIFY-PERF JOB TEMPLATE
1102 name: 'vpp-csit-verify-perf-{stream}-{node-arch}'
1110 Contrary to csit-vpp job, this also measures the parent performance,
1111 and fails if performance regression is detected.
1112 See https://github.com/FDio/csit/blob/master/docs/cpta/methodology/perpatch_performance_tests.rst
1115 project-type: freestyle
1118 archive-artifacts: >
1119 **/csit_current/**/*.*
1120 **/csit_parent/**/*.*
1124 daysToKeep: '{build-days-to-keep}'
1126 artifactDaysToKeep: '{build-artifact-days-to-keep}'
1127 artifactNumToKeep: '{build-artifact-num-to-keep}'
1129 # Please keep parameters in alphabetical order
1131 - archive-artifacts-parameter:
1132 artifacts: '{archive-artifacts}'
1133 - csit-perf-trial-duration-parameter:
1134 csit-perf-trial-duration: "10.0"
1135 - csit-perf-trial-multiplicity-parameter:
1136 csit-perf-trial-multiplicity: "5"
1137 - gerrit-csit-refspec-parameter
1138 - gerrit-event-comment-text-parameter
1139 - gerrit-event-type-parameter
1140 - gerrit-refspec-parameter
1143 - make-parallel-jobs-parameter:
1144 make-parallel-jobs: '{make-parallel-jobs}'
1147 - project-parameter:
1148 project: '{project}'
1149 - repo-name-parameter:
1150 repo-name: '{repo-stream-part}.ubuntu.bionic.main'
1155 - gerrit-trigger-scm:
1156 credentials-id: 'jenkins-gerrit-credentials'
1157 refspec: '$GERRIT_REFSPEC'
1158 choosing-strategy: 'gerrit'
1161 - fdio-infra-wrappers-non-activity-timeout:
1165 - gerrit-trigger-csit-perftest:
1166 project: '{project}'
1168 trigger-word: 'perftest-{node-arch}'
1173 !include-raw-escape:
1174 - ../scripts/setup_executor_env.sh
1176 !include-raw-escape:
1177 - ../scripts/setup_vpp_ubuntu_docker_test.sh
1179 !include-raw-escape:
1180 - ../scripts/setup_vpp_dpdk_dev_env.sh
1182 !include-raw-escape:
1183 - ../scripts/vpp/csit-perf.sh
1187 output-path: 'csit_current/0/'
1189 - fdio-infra-shiplogs:
1190 maven-version: 'mvn36'
1191 # [end] VPP-CSIT-VERIFY-PERF JOB TEMPLATE
1193 # VPP-CSIT-VERIFY-API-CRC JOB TEMPLATE
1195 name: 'vpp-csit-verify-api-crc-{stream}'
1197 project-type: freestyle
1203 daysToKeep: '{build-days-to-keep}'
1205 artifactDaysToKeep: '{build-artifact-days-to-keep}'
1206 artifactNumToKeep: '{build-artifact-num-to-keep}'
1208 # Please keep parameters in alphabetical order
1210 - archive-artifacts-parameter:
1211 artifacts: '{archive-artifacts}'
1212 # Not sure whether not failing has any useful usage,
1213 # but it does not hurt to have some flexibility for future.
1214 - csit-fail-on-crc-mismatch-parameter:
1215 fail-on-crc-mismatch: 'True'
1216 - gerrit-csit-refspec-parameter
1219 - gerrit-refspec-parameter
1220 - project-parameter:
1221 project: '{project}'
1226 - gerrit-trigger-scm:
1227 credentials-id: 'jenkins-gerrit-credentials'
1228 refspec: '$GERRIT_REFSPEC'
1229 choosing-strategy: 'gerrit'
1232 - fdio-infra-wrappers-non-activity-timeout:
1236 # TODO: Make other verify jobs trigger on success of this one,
1237 # without breaking verification for VPP branches before stable/1908.
1238 - gerrit-trigger-checkstyle:
1244 !include-raw-escape:
1245 - ../scripts/setup_executor_env.sh
1247 !include-raw-escape:
1248 - ../scripts/setup_vpp_ubuntu_docker_test.sh
1250 !include-raw-escape:
1251 - ../scripts/vpp/check_crc.sh
1252 # TODO: Add sending e-mail notifications to vpp-api-dev@lists.fd.io
1255 - fdio-infra-shiplogs:
1256 maven-version: 'mvn36'
1257 # [end] VPP-CSIT-VERIFY-API-CRC JOB TEMPLATE
1258 # [end] JOB TEMPLATE DEFINITIONS