CSIT: Unify path for robot plugin
[ci-management.git] / jjb / vpp / vpp.yaml
index 7a553aa..e911264 100644 (file)
 ---
+# PROJECT DEFINITIONS
+#
+# Please keep projects grouped in this order:
+#     vpp-x86_64, vpp-aarch64, vpp-csit
+#
+# NOTES:
+#   - The 'branch-head-refspec' attribute is used for sandbox testing.
+#         Use the get_gerrit_refspec() bash function in
+#         .../ci-management/docker/scripts/lib_common.sh
+#         to query gerrit for the refspec of HEAD in a branch.
+#         TODO: see if there is a refspec that works without requiring
+#               use of get_gerrit_refspec and hand entering the result
+#               in the WebUI 'Build With Parameters' gerrit refspec field.
+#   - Use the following to import get_gerrit_refspec into a bash shell
+#         from the ci-management directory:
+#         $ eval "$(grep -A12 get_gerrit ./docker/scripts/lib_common.sh)"
+# [end] NOTES
+
+# VPP-CHECKSTYLE-X86_64 PROJECT
 - project:
-    name: vpp
+    name: vpp-checkstyle-x86_64
     jobs:
-      - 'vpp-verify-{stream}-{os}'
-      - 'vpp-merge-{stream}-{os}'
-
+      - 'vpp-checkstyle-verify-{stream}-{os}-{executor-arch}'
     project: 'vpp'
-    os:
-      - ubuntu1804:
-          repo-os-part: 'ubuntu.bionic.main'
-      - centos7:
-          repo-os-part: 'centos7'
-
     stream:
       - master:
           branch: 'master'
           repo-stream-part: 'master'
-      - '1904':
-          branch: 'stable/1904'
-          repo-stream-part: 'stable.1904'
+          branch-head-refspec: ''
       - '1908':
           branch: 'stable/1908'
           repo-stream-part: 'stable.1908'
-      - '2001':
-          branch: 'stable/2001'
-          repo-stream-part: 'stable.2001'
+          branch-head-refspec: ''
+      - '2005':
+          branch: 'stable/2005'
+          repo-stream-part: 'stable.2005'
+          branch-head-refspec: ''
+      - '2009':
+          branch: 'stable/2009'
+          repo-stream-part: 'stable.2009'
+          branch-head-refspec: ''
+    os: 'ubuntu1804'
+    executor-arch: 'x86_64'
+# [end] VPP-CHECKSTYLE-X86_64 PROJECT
+
+# VPP-X86_64 PROJECT
 - project:
-    name: vpp-beta
+    name: vpp-x86_64
     jobs:
-      - 'vpp-beta-verify-{stream}-{os}'
-      - 'vpp-beta-merge-{stream}-{os}'
-
+      - 'vpp-verify-{stream}-{os}-{executor-arch}'
+      - 'vpp-merge-{stream}-{os}-{executor-arch}'
     project: 'vpp'
-    os:
-      - ubuntu2004:
-          repo-os-part: 'ubuntu.focal.main'
-      - centos8:
-          repo-os-part: 'centos8'
-
+    make-parallel-jobs: '4'
     stream:
       - master:
           branch: 'master'
           repo-stream-part: 'master'
+          branch-head-refspec: ''
+      - '1908':
+          branch: 'stable/1908'
+          repo-stream-part: 'stable.1908'
+          branch-head-refspec: ''
+      - '2005':
+          branch: 'stable/2005'
+          repo-stream-part: 'stable.2005'
+          branch-head-refspec: ''
+      - '2009':
+          branch: 'stable/2009'
+          repo-stream-part: 'stable.2009'
+          branch-head-refspec: ''
+    os:
+      - ubuntu1804:
+          repo-os-part: 'ubuntu.bionic.main'
+    executor-arch: 'x86_64'
+# [end] VPP-X86_64 PROJECT
 
+# VPP-OS-EOL-X86_64 PROJECT
 - project:
-    name: vpp-clang
+    name: vpp-os-eol-x86_64
     jobs:
-      - 'vpp-verify-{stream}-clang'
-      - 'vpp-coverity-{stream}'
-
+      - 'vpp-verify-{stream}-{os}-{executor-arch}'
+      - 'vpp-merge-{stream}-{os}-{executor-arch}'
     project: 'vpp'
+    make-parallel-jobs: '4'
+    stream:
+      - '1908':
+          branch: 'stable/1908'
+          repo-stream-part: 'stable.1908'
+          branch-head-refspec: ''
+      - '2005':
+          branch: 'stable/2005'
+          repo-stream-part: 'stable.2005'
+          branch-head-refspec: ''
+      - '2009':
+          branch: 'stable/2009'
+          repo-stream-part: 'stable.2009'
+          branch-head-refspec: ''
     os:
-      - ubuntu1804:
-          repo-os-part: 'ubuntu.bionic.main'
       - centos7:
           repo-os-part: 'centos7'
-      - opensuse:
-          repo-os-part: 'opensuse'
-
-    stream:
-      - master:
-          branch: 'master'
-          repo-stream-part: 'master'
-
+    executor-arch: 'x86_64'
+# [end] VPP-OS-EOL-X86_64 PROJECT
+
+# VPP-OS-IN-2009-X86_64 PROJECT
+#
+# This project is used to separate streams which are only
+# supported on the OS in the release in which it was added
+# or later releases.
+#
+# For each 'os-in-XXXX', the stream for the release is
+# added here in addition to the 'vpp-x86_64' project.
+# Each subsequent release is also added to both.
+#
+# When all of the streams older than the 'os-in-XXXX" have
+# been removed from the 'vpp-x86_64' project, then the OSes
+# in this project get moved to the 'vpp-x86_64' project and
+# this project gets deleted or commented out if it is only
+# 'os-in-XXXX' project.
+#
 - project:
-    name: vpp-misc
+    name: vpp-os-in-2009-x86_64
     jobs:
-      - 'vpp-checkstyle-verify-{stream}'
+      - 'vpp-verify-{stream}-{os}-{executor-arch}'
+      - 'vpp-merge-{stream}-{os}-{executor-arch}'
     project: 'vpp'
+    make-parallel-jobs: '4'
     stream:
       - master:
           branch: 'master'
           repo-stream-part: 'master'
-      - '1901':
-          branch: 'stable/1901'
-          repo-stream-part: 'stable.1901'
-      - '1904':
-          branch: 'stable/1904'
-          repo-stream-part: 'stable.1904'
-      - '1908':
-          branch: 'stable/1908'
-          repo-stream-part: 'stable.1908'
-      - '2001':
-          branch: 'stable/2001'
-          repo-stream-part: 'stable.2001'
-    os: ubuntu1804
-
+          branch-head-refspec: ''
+      - '2009':
+          branch: 'stable/2009'
+          repo-stream-part: 'stable.2009'
+          branch-head-refspec: ''
+    os:
+      - centos8:
+          repo-os-part: 'centos8'
+      - debian9:
+          repo-os-part: 'stretch'
+      - debian10:
+          repo-os-part: 'buster'
+      - ubuntu2004:
+          repo-os-part: 'ubuntu.focal.main'
+    executor-arch: 'x86_64'
+# [end] VPP-OS-IN-2009-X86_64 PROJECT
+
+# VPP-DEBUG-X86_64 PROJECT
+#
+# Currently a Non-Voting job due to intermittent failures.
+# Limiting branches to master and 2009, since other branches
+# may not get fixes for the intermittent failures.
+#
 - project:
-    name: vpp-perpatch
+    name: vpp-debug-x86_64
     jobs:
-      - 'vpp-csit-verify-device-{stream}-{device-node-arch}'
-      - 'vpp-csit-verify-perf-{stream}-{node-arch}'
+      - 'vpp-debug-verify-{stream}-{os}-{executor-arch}'
     project: 'vpp'
-    os: ubuntu1804
-    device-executor: 'vpp-csit-device'
-    executor: '{os}-us'
-    skip-vote: 'true'
-    trigger: 'gerrit-trigger-vpp-csit-devicetest-full'
+    make-parallel-jobs: '4'
     stream:
       - master:
           branch: 'master'
           repo-stream-part: 'master'
-      - '1904':
-          branch: 'stable/1904'
-          repo-stream-part: 'stable.1904'
-      - '1908':
-          branch: 'stable/1908'
-          repo-stream-part: 'stable.1908'
-      - '2001':
-          branch: 'stable/2001'
-          repo-stream-part: 'stable.2001'
-    device-node-arch:
-      - 1n-skx
-      - 1n-tx2:
-          device-executor: 'vpp-csit-arm-ubuntu18'
-          trigger: 'gerrit-trigger-vpp-csit-devicetest-manual'
-    node-arch:
-      - 2n-clx
-      - 2n-skx
-      - 3n-skx
-      - 3n-hsw
-      - 2n-dnv
-      - 3n-dnv
-      - 3n-tsh:
-          executor: 'ubuntu1804arm-s'
-    exclude:
-      - stream: '1904'
-        os: 'ubuntu1804'
-        device-node-arch: '1n-tx2'
-
+          branch-head-refspec: ''
+      - '2009':
+          branch: 'stable/2009'
+          repo-stream-part: 'stable.2009'
+          branch-head-refspec: ''
+    os:
+      - ubuntu1804:
+          repo-os-part: 'ubuntu.bionic.main'
+    executor-arch: 'x86_64'
+# [end] VPP-DEBUG-X86_64 PROJECT
+
+# VPP-BETA-X86_64 PROJECT
+#
+# Beta jobs are experimental jobs for testing new OS versions on master.
+#
+# They are only manually triggered.  Either using the Jenkins WebUI
+# 'Build with Parameters' to run a single job or adding 'vpp-beta-verify'
+# or 'vpp-beta-merge' as a comment to run all beta verify or merge jobs.
+#
+# Once testing  is complete, the os is moved to the current
+# 'vpp-os-in-XXXX-x86_64' project. If no OSes are being
+# tested then this project should be commented out.
+#
+#- project:
+#    name: vpp-beta-x86_64
+#    jobs:
+#      - 'vpp-beta-verify-{stream}-{os}-{executor-arch}':
+#          comment-trigger-value: 'vpp-beta-verify'
+#      - 'vpp-beta-merge-{stream}-{os}-{executor-arch}':
+#          comment-trigger-value: 'vpp-beta-merge'
+#    project: 'vpp'
+#    make-parallel-jobs: '4'
+#    stream:
+#      - master:
+#          branch: 'master'
+#          repo-stream-part: 'master'
+#          branch-head-refspec: ''
+#    os:
+#      - debian10:
+#          repo-os-part: 'buster'
+#    executor-arch: x86_64
+# [end] VPP-BETA-X86_64 PROJECT
+
+# VPP-GCC-X86_64 PROJECT
 - project:
-    name: vpp-older-only
+    name: vpp-gcc-x86_64
     jobs:
-      - 'vpp-historic-verify-{stream}-{os}'
-      - 'vpp-historic-merge-{stream}-{os}'
+      - 'vpp-gcc-verify-{stream}-{os}-{executor-arch}'
     project: 'vpp'
-    stream:
-      - '1901':
-          branch: 'stable/1901'
-          repo-stream-part: 'stable.1901'
-      - '1904':
-          branch: 'stable/1904'
-          repo-stream-part: 'stable.1904'
-      - '1908':
-          branch: 'stable/1908'
-          repo-stream-part: 'stable.1908'
-      - '2001':
-          branch: 'stable/2001'
-          repo-stream-part: 'stable.2001'
+    executor-arch: 'x86_64'
     os:
-      - ubuntu1604:
-          repo-os-part: 'ubuntu.xenial.main'
-
+      - ubuntu2004:
+          repo-os-part: 'ubuntu.focal.main'
+    stream:
+      - master:
+          branch: 'master'
+          repo-stream-part: 'master'
+          branch-head-refspec: ''
+      - '2009':
+          branch: 'stable/2009'
+          repo-stream-part: 'stable.2009'
+          branch-head-refspec: ''
+# [end] VPP-GCC-X86_64 PROJECT
+
+# VPP-AARCH64 PROJECT
 - project:
-    name: vpp-arm
+    name: vpp-aarch64
     jobs:
-      - 'vpp-arm-verify-{stream}-{os}'
-      - 'vpp-arm-merge-{stream}-{os}'
+      - 'vpp-verify-{stream}-{os}-{executor-arch}'
+      - 'vpp-merge-{stream}-{os}-{executor-arch}'
     project: 'vpp'
+    make-parallel-jobs: '16'
     stream:
       - master:
           branch: 'master'
           repo-stream-part: 'master'
-      - '1901':
-          branch: 'stable/1901'
-          repo-stream-part: 'stable.1901'
-      - '1904':
-          branch: 'stable/1904'
-          repo-stream-part: 'stable.1904'
+          branch-head-refspec: ''
       - '1908':
           branch: 'stable/1908'
           repo-stream-part: 'stable.1908'
-      - '2001':
-          branch: 'stable/2001'
-          repo-stream-part: 'stable.2001'
+          branch-head-refspec: ''
+      - '2005':
+          branch: 'stable/2005'
+          repo-stream-part: 'stable.2005'
+          branch-head-refspec: ''
+      - '2009':
+          branch: 'stable/2009'
+          repo-stream-part: 'stable.2009'
+          branch-head-refspec: ''
     os:
       - ubuntu1804:
           repo-os-part: 'ubuntu-arm.bionic.main'
-
-# TODO: Merge with (e.g.) vpp-perpatch or similar,
-# when number of stable branches supported matches.
+    executor-arch: 'aarch64'
+# [end] VPP-AARCH64 PROJECT
+
+# VPP-OS-IN-2009-AARCH64 PROJECT
+#
+# This project is used to separate streams which are only
+# supported on the OS in the release in which it was added
+# or later releases.
+#
+# For each 'os-in-XXXX', the stream for the release is
+# added here in addition to the 'vpp-aarch64' project.
+# Each subsequent release is also added to both.
+#
+# When all of the streams older than the 'os-in-XXXX" have
+# been removed from the 'vpp-aarch64' project, then the OSes
+# in this project get moved to the 'vpp-aarch64' project and
+# this project gets deleted or commented out if it is only
+# 'os-in-XXXX' project.
+#
+#- project:
+#    name: vpp-os-in-2009-aarch64
+#    jobs:
+#      - 'vpp-verify-{stream}-{os}-{executor-arch}'
+#      - 'vpp-merge-{stream}-{os}-{executor-arch}'
+#
+#    project: 'vpp'
+#    make-parallel-jobs: '16'
+#    stream:
+#      - master:
+#          branch: 'master'
+#          repo-stream-part: 'master'
+#          branch-head-refspec: ''
+#      - '2009':
+#          branch: 'stable/2009'
+#          repo-stream-part: 'stable.2009'
+#          branch-head-refspec: ''
+#    os:
+#      - ubuntu2004:
+#          repo-os-part: 'ubuntu.focal.main'
+#    executor-arch: 'aarch64'
+# [end] VPP-OS-IN-2009-AARCH64 PROJECT
+
+# VPP-BETA-AARCH64 PROJECT
+#
+# Beta jobs are experimental jobs for testing new OS versions on master.
+#
+# They are only manually triggered.  Either using the Jenkins WebUI
+# 'Build with Parameters' to run a single job or adding 'vpp-beta-verify'
+# or 'vpp-beta-merge' as a comment to run all beta verify or merge jobs.
+#
+# Once testing  is complete, the os is moved to the current
+# 'vpp-os-in-XXXX-aarch64' project. If no OSes are being
+# tested then this project should be commented out.
+#
 - project:
-    name: vpp-api-crc
+    name: vpp-beta-aarch64
     jobs:
-      - 'vpp-csit-verify-api-crc-{stream}'
+      - 'vpp-beta-verify-{stream}-{os}-{executor-arch}':
+          comment-trigger-value: 'beta-verify'
+      - 'vpp-beta-merge-{stream}-{os}-{executor-arch}':
+          comment-trigger-value: 'beta-merge'
     project: 'vpp'
-    executor: 'vpp-csit-device'
-    skip-vote: 'false'
+    make-parallel-jobs: '16'
     stream:
-      # Only master and LTS branches.
-      - '1908':
-          branch: 'stable/1908'
-          repo-stream-part: 'stable.1908'
       - master:
           branch: 'master'
-    os: ubuntu1804
-
-- project:
-    name: vpp-info
-    project-name: vpp
-    jobs:
-      - gerrit-info-yaml-verify
-    build-node: centos7-builder-4c-4g
-    project: vpp
-    branch: master
-
-- project:
-    name: vpp-view
-    views:
-      - project-view
-    project-name: vpp
-
-- job-template:
-    name: 'vpp-historic-verify-{stream}-{os}'
-
-    project-type: freestyle
-    node: '{os}-us'
-    concurrent: true
-    archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
-
-    triggers:
-      - gerrit-trigger-checkstyle:
-          name: '{project}'
-          branch: '{branch}'
-
-    build-discarder:
-      daysToKeep: '{build-days-to-keep}'
-      numToKeep: 100
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
-
-    parameters:
-      - project-parameter:
-          project: '{project}'
-      - gerrit-parameter:
-          branch: '{branch}'
-      - os-parameter:
-          os: '{os}'
-      - repo-name-parameter:
-          repo-name: '{repo-stream-part}.{repo-os-part}'
-      - stream-parameter:
-          stream: '{stream}'
-      - string:
-          name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
-          description: Artifacts to archive to the logs server.
-
-    scm:
-      - gerrit-trigger-scm:
-          credentials-id: 'jenkins-gerrit-credentials'
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
-
-    wrappers:
-      - fdio-infra-wrappers:
-          build-timeout: '75'
-
-    builders:
-      - shell:
-          !include-raw-escape:
-          - ../scripts/setup_vpp_ubuntu_docker_test.sh
-      - shell:
-          !include-raw-escape:
-          - ../scripts/setup_vpp_dpdk_dev_env.sh
-      - shell:
-          !include-raw-escape:
-          - ../scripts/vpp/build.sh
-
-    publishers:
-      - fdio-infra-shiplogs:
-          maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: false
-          max-failed-builds: 1
-          fixed-delay: 90
-
-- job-template:
-    name: 'vpp-historic-merge-{stream}-{os}'
-
-    project-type: freestyle
-    node: '{os}-us'
-
-    build-discarder:
-      daysToKeep: '{build-days-to-keep}'
-      numToKeep: 100
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
-
-    parameters:
-      - project-parameter:
-          project: '{project}'
-      - gerrit-parameter:
-          branch: '{branch}'
-      - os-parameter:
-          os: '{os}'
-      - maven-project-parameter:
-          maven: 'mvn33-new'
-      - maven-exec:
-          maven-version: 'mvn33-new'
-      - stream-parameter:
-          stream: '{stream}'
-      - repo-name-parameter:
-          repo-name: '{repo-stream-part}.{repo-os-part}'
-      - string:
-          name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
-          description: Artifacts to archive to the logs server.
-
-    scm:
-      - gerrit-trigger-scm:
-          credentials-id: 'jenkins-gerrit-credentials'
-          refspec: ''
-          choosing-strategy: 'default'
-
-    wrappers:
-      - fdio-infra-wrappers:
-          build-timeout: 120
-
-    triggers:
-      - gerrit-trigger-patch-merged:
-          name: '{project}'
-          branch: '{branch}'
-
-    builders:
-      - config-file-provider:
-          files:
-            - file-id: '.packagecloud'
-              target: '/root'
-      - config-file-provider:
-          files:
-            - file-id: 'packagecloud_api'
-              target: '/root'
-      - shell:
-          !include-raw-escape:
-          - ../scripts/setup_vpp_ubuntu_docker_test.sh
-      - shell:
-          !include-raw-escape:
-          - ../scripts/setup_vpp_dpdk_dev_env.sh
-      - shell:
-          !include-raw-escape:
-          - ../scripts/vpp/build.sh
-      - provide-maven-settings:
-          settings-file: 'vpp-settings'
-          global-settings-file: 'global-settings'
-      - shell:
-          !include-raw-escape:
-          - ../scripts/packagecloud_push.sh
-
-    publishers:
-      - fdio-infra-shiplogs:
-          maven-version: 'mvn36'
-
-- job-template:
-    name: 'vpp-arm-verify-{stream}-{os}'
-
-    project-type: freestyle
-    node: '{os}arm-us'
-    concurrent: true
-    archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
-
-    build-discarder:
-      daysToKeep: '{build-days-to-keep}'
-      numToKeep: 100
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
-
-    parameters:
-      - project-parameter:
-          project: '{project}'
-      - gerrit-parameter:
-          branch: '{branch}'
-      - os-parameter:
-          os: '{os}'
-      - repo-name-parameter:
-          repo-name: '{repo-stream-part}.{repo-os-part}'
-      - stream-parameter:
-          stream: '{stream}'
-      - string:
-          name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
-          description: Artifacts to archive to the logs server.
-
-    scm:
-      - gerrit-trigger-scm:
-          credentials-id: 'jenkins-gerrit-credentials'
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
-
-    wrappers:
-      - fdio-infra-wrappers:
-          build-timeout: 120
-
-    triggers:
-      - gerrit-trigger-checkstyle:
-          name: '{project}'
-          branch: '{branch}'
-
-    builders:
-      - shell:
-          !include-raw-escape:
-          - ../scripts/setup_vpp_ubuntu_arm_test.sh
-      - shell:
-          !include-raw-escape:
-          - ../scripts/setup_vpp_dpdk_dev_env.sh
-      - shell:
-          !include-raw-escape:
-          - ../scripts/vpp/parallel-vars.sh
-          # Do not split, the line below wants env vars from the line above.
-          - ../scripts/vpp/arm-build.sh
-
-    publishers:
-      - fdio-infra-shiplogs:
-          maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: false
-          max-failed-builds: 1
-          fixed-delay: 90
-
-- job-template:
-    name: 'vpp-arm-merge-{stream}-{os}'
-
-    project-type: freestyle
-    node: '{os}arm-m'
-
-    build-discarder:
-      daysToKeep: '{build-days-to-keep}'
-      numToKeep: 100
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
-
-    parameters:
-      - project-parameter:
-          project: '{project}'
-      - gerrit-parameter:
-          branch: '{branch}'
-      - os-parameter:
-          os: '{os}'
-      - maven-project-parameter:
-          maven: 'mvn33-new'
-      - maven-exec:
-          maven-version: 'mvn33-new'
-      - stream-parameter:
-          stream: '{stream}'
-      - repo-name-parameter:
-          repo-name: '{repo-stream-part}.{repo-os-part}'
-      - string:
-          name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
-          description: Artifacts to archive to the logs server.
+          repo-stream-part: 'master'
+          branch-head-refspec: ''
+    os:
+      - centos8:
+          repo-os-part: 'centos8'
+      - ubuntu2004:
+          repo-os-part: 'ubuntu.focal.main'
+    executor-arch: aarch64
+# [end] VPP-BETA-AARCH64 PROJECT
 
-    scm:
-      - gerrit-trigger-scm:
-          credentials-id: 'jenkins-gerrit-credentials'
-          refspec: ''
-          choosing-strategy: 'default'
+# VPP-CSIT-PERPATCH PROJECT
+- project:
+    name: vpp-csit-perpatch
+    jobs:
+      - 'vpp-csit-verify-device-{stream}-{device-node-arch}':
+          make-parallel-jobs: '32'
+      - 'vpp-csit-verify-perf-{stream}-{node-arch}'
+    project: 'vpp'
+    os: ubuntu1804
+    device-executor: 'vpp-csit-device'
+    executor: '{os}-us'
+    skip-vote: 'false'
+    stream:
+      - master:
+          branch: 'master'
+          repo-stream-part: 'master'
+      - '1908':
+          branch: 'stable/1908'
+          repo-stream-part: 'stable.1908'
+      - '2005':
+          branch: 'stable/2005'
+          repo-stream-part: 'stable.2005'
+      - '2009':
+          branch: 'stable/2009'
+          repo-stream-part: 'stable.2009'
+    device-node-arch:
+      - 1n-skx
+      - 1n-tx2:
+          device-executor: 'vpp-csit-arm-ubuntu18'
+          skip-vote: 'true'
+    node-arch:
+      - 2n-clx
+      - 2n-skx
+      - 2n-zn2
+      - 3n-skx
+      - 3n-hsw
+      - 2n-dnv
+      - 3n-dnv
+      - 3n-tsh:
+          executor: 'ubuntu1804arm-s'
+          make-parallel-jobs: '16'
+    exclude:
+      - stream: '1908'
+        device-node-arch: '1n-tx2'
+      - stream: '2001'
+        device-node-arch: '1n-tx2'
+      - stream: '2005'
+        device-node-arch: '1n-tx2'
 
-    wrappers:
-      - fdio-infra-wrappers:
-          build-timeout: 120
+# [end] VPP-CSIT-PERPATCH PROJECT
 
-    triggers:
-      - gerrit-trigger-patch-merged:
-          name: '{project}'
-          branch: '{branch}'
+# VPP-CSIT-API-CRC PROJECT
+#
+# Only master and LTS branches are supported.
+#
+- project:
+    name: vpp-csit-api-crc
+    jobs:
+      - 'vpp-csit-verify-api-crc-{stream}'
+    project: 'vpp'
+    executor: 'vpp-csit-device'
+    skip-vote: 'false'
+    stream:
+      - '1908':
+          branch: 'stable/1908'
+          repo-stream-part: 'stable.1908'
+      - '2009':
+          branch: 'stable/2009'
+          repo-stream-part: 'stable.2009'
+      - master:
+          branch: 'master'
+    os: ubuntu1804
+# [end] VPP-CSIT-API-CRC PROJECT
 
-    builders:
-      - config-file-provider:
-          files:
-            - file-id: '.packagecloud'
-              target: '/root'
-      - config-file-provider:
-          files:
-            - file-id: 'packagecloud_api'
-              target: '/root'
-      - shell:
-          !include-raw-escape:
-          - ../scripts/setup_vpp_ubuntu_arm_test.sh
-      - shell:
-          !include-raw-escape:
-          - ../scripts/setup_vpp_dpdk_dev_env.sh
-      - shell:
-          !include-raw-escape:
-          - ../scripts/vpp/parallel-vars.sh
-          # Do not split, the line below wants env vars from the line above.
-          - ../scripts/vpp/arm-build-no-test.sh
+# LF RELENG VPP PROJECTS
+- project:
+    name: vpp-info
+    project-name: vpp
+    jobs:
+      - gerrit-info-yaml-verify
+    build-node: centos7-builder-2c-2g
+    project: vpp
+    branch: master
 
-      - provide-maven-settings:
-          settings-file: 'vpp-settings'
-          global-settings-file: 'global-settings'
-      - shell:
-          !include-raw-escape:
-          - ../scripts/packagecloud_push.sh
+- project:
+    name: vpp-view
+    views:
+      - project-view
+    project-name: vpp
+# [end] LF RELENG VPP PROJECTS
+# [end] PROJECT DEFINITIONS
 
-    publishers:
-      - fdio-infra-shiplogs:
-          maven-version: 'mvn36'
+# JOB TEMPLATE DEFINITIONS
+#
+# Please keep job templates in the same order as they are referenced
+# in the project definitions above.
 
+# VPP-CHECKSTYLE-VERIFY JOB TEMPLATE
 - job-template:
-    name: 'vpp-checkstyle-verify-{stream}'
+    name: 'vpp-checkstyle-verify-{stream}-{os}-{executor-arch}'
 
     project-type: freestyle
-    node: '{os}-us'
+    node: 'builder-{os}-prod-{executor-arch}'
     concurrent: true
     archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
 
           os: '{os}'
       - repo-name-parameter:
           repo-name: '{repo-stream-part}.ubuntu.bionic.main'
+      - gerrit-refspec-parameter:
+          refspec: '{branch-head-refspec}'
 
     scm:
       - gerrit-trigger-scm:
     wrappers:
       - fdio-infra-wrappers:
           build-timeout: '{build-timeout}'
+      - credentials-binding:
+          - text:
+              credential-id: VppApiCompatNotify
+              variable: SECRET_WEBEX_TEAMS_ACCESS_TOKEN
 
     triggers:
       - gerrit:
                 comment-contains-value: 'recheck'
             - comment-added-contains-event:
                 comment-contains-value: 'reverify'
-            # Following two are to cover missing functions of drafts going to review status
+            # Following two are to cover missing functions of drafts
+            # going to review status
             - comment-added-contains-event:
                 comment-contains-value: 'runtest'
             - comment-added-contains-event:
             notbuilt: false
 
     builders:
+      - shell:
+          !include-raw-escape:
+          - ../scripts/setup_executor_env.sh
       - shell:
           !include-raw-escape:
           - ../scripts/vpp/checkstyle.sh
       - shell:
           !include-raw-escape:
           - ../scripts/vpp/test-checkstyle.sh
+      - shell:
+          !include-raw-escape:
+          - ../scripts/vpp/api-checkstyle.sh
       - shell:
           !include-raw-escape:
           - ../scripts/vpp/commitmsg.sh
     publishers:
       - fdio-infra-shiplogs:
           maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: true
-          max-failed-builds: 1
-          fixed-delay: 90
+# [end] VPP-CHECKSTYLE-VERIFY JOB TEMPLATE
 
+# VPP-VERIFY JOB TEMPLATE
 - job-template:
-    name: 'vpp-beta-verify-{stream}-{os}'
+    name: 'vpp-verify-{stream}-{os}-{executor-arch}'
 
     project-type: freestyle
-    node: '{os}-us'
+    node: 'builder-{os}-prod-{executor-arch}'
     concurrent: true
     archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
 
           name: ARCHIVE_ARTIFACTS
           default: '{archive-artifacts}'
           description: Artifacts to archive to the logs server.
+      - make-parallel-jobs-parameter:
+          make-parallel-jobs: '{make-parallel-jobs}'
+      - gerrit-refspec-parameter:
+          refspec: '{branch-head-refspec}'
 
     scm:
       - gerrit-trigger-scm:
           build-timeout: 120
 
     triggers:
-      - gerrit-trigger-manually-triggered:
-          comment-trigger-value: 'betacheck'
+      - gerrit-trigger-checkstyle:
           name: '{project}'
           branch: '{branch}'
 
     builders:
+      - shell:
+          !include-raw-escape:
+          - ../scripts/setup_executor_env.sh
       - shell:
           !include-raw-escape:
           - ../scripts/setup_vpp_ubuntu_docker_test.sh
     publishers:
       - fdio-infra-shiplogs:
           maven-version: 'mvn36'
+# [end] VPP-VERIFY JOB TEMPLATE
 
+# VPP-DEBUG-VERIFY JOB TEMPLATE
 - job-template:
-    name: 'vpp-verify-{stream}-{os}'
+    name: 'vpp-debug-verify-{stream}-{os}-{executor-arch}'
 
     project-type: freestyle
-    node: '{os}-us'
+    node: 'builder-{os}-prod-{executor-arch}'
     concurrent: true
     archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
 
     build-discarder:
       daysToKeep: '{build-days-to-keep}'
-      numToKeep: 100
+      numToKeep: '{build-num-to-keep}'
       artifactDaysToKeep: '{build-artifact-days-to-keep}'
       artifactNumToKeep: '{build-artifact-num-to-keep}'
 
       - gerrit-parameter:
           branch: '{branch}'
       - os-parameter:
-          os: '{os}'
+          os: 'ubuntu1804'
       - repo-name-parameter:
-          repo-name: '{repo-stream-part}.{repo-os-part}'
+          repo-name: '{repo-stream-part}.ubuntu.bionic.main'
       - stream-parameter:
           stream: '{stream}'
-      - string:
-          name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
-          description: Artifacts to archive to the logs server.
+      - make-parallel-jobs-parameter:
+          make-parallel-jobs: '{make-parallel-jobs}'
+      - gerrit-refspec-parameter:
+          refspec: '{branch-head-refspec}'
 
     scm:
       - gerrit-trigger-scm:
 
     wrappers:
       - fdio-infra-wrappers:
-          build-timeout: 120
+          build-timeout: '{build-timeout}'
 
     triggers:
-      - gerrit-trigger-checkstyle:
+      # TODO: Ensure all supported jobs pass reliably before
+      #       enabling voting.
+      - gerrit-trigger-checkstyle-nonvoting:
           name: '{project}'
           branch: '{branch}'
 
     builders:
+      - shell:
+          !include-raw-escape:
+          - ../scripts/setup_executor_env.sh
       - shell:
           !include-raw-escape:
           - ../scripts/setup_vpp_ubuntu_docker_test.sh
           - ../scripts/setup_vpp_dpdk_dev_env.sh
       - shell:
           !include-raw-escape:
-          - ../scripts/vpp/build.sh
+          - ../scripts/vpp/debug-build.sh
 
     publishers:
       - fdio-infra-shiplogs:
           maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: false
-          max-failed-builds: 2
-          fixed-delay: 90
+# [end] VPP-DEBUG-VERIFY JOB TEMPLATE
 
+# VPP-MERGE JOB TEMPLATE
 - job-template:
-    name: 'vpp-verify-{stream}-clang'
+    name: 'vpp-merge-{stream}-{os}-{executor-arch}'
 
     project-type: freestyle
-    node: 'ubuntu1804-us'
-    concurrent: true
-    archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
+    node: 'builder-{os}-prod-{executor-arch}'
 
     build-discarder:
       daysToKeep: '{build-days-to-keep}'
-      numToKeep: '{build-num-to-keep}'
+      numToKeep: 100
       artifactDaysToKeep: '{build-artifact-days-to-keep}'
       artifactNumToKeep: '{build-artifact-num-to-keep}'
 
       - gerrit-parameter:
           branch: '{branch}'
       - os-parameter:
-          os: 'ubuntu1804'
-      - repo-name-parameter:
-          repo-name: '{repo-stream-part}.ubuntu.bionic.main'
+          os: '{os}'
+      - maven-project-parameter:
+          maven: 'mvn33-new'
+      - maven-exec:
+          maven-version: 'mvn33-new'
       - stream-parameter:
           stream: '{stream}'
+      - repo-name-parameter:
+          repo-name: '{repo-stream-part}.{repo-os-part}'
+      - string:
+          name: ARCHIVE_ARTIFACTS
+          default: '{archive-artifacts}'
+          description: Artifacts to archive to the logs server.
+      - make-parallel-jobs-parameter:
+          make-parallel-jobs: '{make-parallel-jobs}'
 
     scm:
       - gerrit-trigger-scm:
           credentials-id: 'jenkins-gerrit-credentials'
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
+          refspec: ''
+          choosing-strategy: 'default'
 
     wrappers:
       - fdio-infra-wrappers:
-          build-timeout: '{build-timeout}'
+          build-timeout: 120
 
     triggers:
-      - gerrit-trigger-checkstyle:
+      - gerrit-trigger-patch-merged:
           name: '{project}'
           branch: '{branch}'
 
     builders:
+      - config-file-provider:
+          files:
+            - file-id: '.packagecloud'
+              target: '/root'
+      - config-file-provider:
+          files:
+            - file-id: 'packagecloud_api'
+              target: '/root'
+      - shell:
+          !include-raw-escape:
+          - ../scripts/setup_executor_env.sh
       - shell:
           !include-raw-escape:
           - ../scripts/setup_vpp_ubuntu_docker_test.sh
           - ../scripts/setup_vpp_dpdk_dev_env.sh
       - shell:
           !include-raw-escape:
-          - ../scripts/vpp/clang-build.sh
+          - ../scripts/vpp/build.sh
+
+      - provide-maven-settings:
+          settings-file: 'vpp-settings'
+          global-settings-file: 'global-settings'
+      - shell:
+          !include-raw-escape:
+          - ../scripts/packagecloud_push.sh
 
     publishers:
       - fdio-infra-shiplogs:
           maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: false
-          max-failed-builds: 1
-          fixed-delay: 90
+# [end] VPP-MERGE JOB TEMPLATE
 
+# VPP-BETA-VERIFY JOB TEMPLATE
 - job-template:
-    name: 'vpp-coverity-{stream}'
+    name: 'vpp-beta-verify-{stream}-{os}-{executor-arch}'
 
     project-type: freestyle
-    node: 'ubuntu1804-us'
+    node: 'builder-{os}-prod-{executor-arch}'
     concurrent: true
     archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
 
     build-discarder:
       daysToKeep: '{build-days-to-keep}'
-      numToKeep: '{build-num-to-keep}'
+      numToKeep: 100
       artifactDaysToKeep: '{build-artifact-days-to-keep}'
       artifactNumToKeep: '{build-artifact-num-to-keep}'
 
       - gerrit-parameter:
           branch: '{branch}'
       - os-parameter:
-          os: 'ubuntu1804'
+          os: '{os}'
       - repo-name-parameter:
-          repo-name: '{repo-stream-part}.ubuntu.bionic.main'
+          repo-name: '{repo-stream-part}.{repo-os-part}'
       - stream-parameter:
           stream: '{stream}'
+      - string:
+          name: ARCHIVE_ARTIFACTS
+          default: '{archive-artifacts}'
+          description: Artifacts to archive to the logs server.
+      - make-parallel-jobs-parameter:
+          make-parallel-jobs: '{make-parallel-jobs}'
+      - gerrit-refspec-parameter:
+          refspec: '{branch-head-refspec}'
 
     scm:
       - gerrit-trigger-scm:
           credentials-id: 'jenkins-gerrit-credentials'
-          refspec: ''
+          refspec: '$GERRIT_REFSPEC'
           choosing-strategy: 'gerrit'
 
     wrappers:
       - fdio-infra-wrappers:
-          build-timeout: '{build-timeout}'
+          build-timeout: 120
 
     triggers:
-      - timed: '0 14 * * *'
+      - gerrit-trigger-manually-triggered:
+          comment-trigger-value: '{comment-trigger-value}'
+          name: '{project}'
+          branch: '{branch}'
 
     builders:
       - shell:
-          command: !include-raw-escape: ../scripts/vpp/coverity.sh
-          unstable-return: 42
+          !include-raw-escape:
+          - ../scripts/setup_executor_env.sh
+      - shell:
+          !include-raw-escape:
+          - ../scripts/setup_vpp_ubuntu_docker_test.sh
+      - shell:
+          !include-raw-escape:
+          - ../scripts/setup_vpp_dpdk_dev_env.sh
+      - shell:
+          !include-raw-escape:
+          - ../scripts/vpp/build.sh
 
     publishers:
-      - email-ext:
-          # yamllint disable-line rule:line-length
-          recipients: 'ejk@cisco.com'
-          reply-to: ''
-          content-type: 'text'
-          subject: 'Coverity run passing as of $BUILD_TIMESTAMP'
-          # yamllint disable-line rule:line-length
-          body: |
-                Coverity run passing.
-
-                ${{FILE,path="output.txt"}}
-          failure: false
-          success: true
-      - email-ext:
-          # yamllint disable-line rule:line-length
-          recipients: 'ejk@cisco.com'
-          reply-to: ''
-          content-type: 'text'
-          subject: 'Coverity run UNSTABLE as of $BUILD_TIMESTAMP'
-          # yamllint disable-line rule:line-length
-          body: |
-                Coverity run UNSTABLE.
-
-                Something went wrong with daily scan.
-          failure: false
-          unstable: true
-      - email-ext:
-          # yamllint disable-line rule:line-length
-          recipients: 'vpp-dev@lists.fd.io, ejk@cisco.com'
-          reply-to: ''
-          content-type: 'text'
-          subject: 'Coverity run FAILED as of $BUILD_TIMESTAMP'
-          # yamllint disable-line rule:line-length
-          body: |
-                Coverity run failed today.
-
-                ${{FILE,path="output.txt"}}
-          failure: true
-      - email-ext:
-          # yamllint disable-line rule:line-length
-          recipients: 'vpp-dev@lists.fd.io, ejk@cisco.com'
-          reply-to: ''
-          content-type: 'text'
-          subject: 'Coverity run as of $BUILD_TIMESTAMP'
-          # yamllint disable-line rule:line-length
-          body: |
-                Coverity run fixed today.
-
-                ${{FILE,path="output.txt"}}
-          failure: false
-          fixed: true
       - fdio-infra-shiplogs:
           maven-version: 'mvn36'
+# [end] VPP-BETA-VERIFY JOB TEMPLATE
 
+# VPP-BETA-MERGE JOB TEMPLATE
 - job-template:
-    name: 'vpp-merge-{stream}-{os}'
+    name: 'vpp-beta-merge-{stream}-{os}-{executor-arch}'
 
     project-type: freestyle
-    node: '{os}-us'
+    node: 'builder-{os}-prod-{executor-arch}'
 
     build-discarder:
       daysToKeep: '{build-days-to-keep}'
           name: ARCHIVE_ARTIFACTS
           default: '{archive-artifacts}'
           description: Artifacts to archive to the logs server.
+      - make-parallel-jobs-parameter:
+          make-parallel-jobs: '{make-parallel-jobs}'
 
     scm:
       - gerrit-trigger-scm:
           build-timeout: '{build-timeout}'
 
     triggers:
-      - gerrit-trigger-patch-merged:
+      - gerrit-trigger-manually-triggered:
+          comment-trigger-value: '{comment-trigger-value}'
           name: '{project}'
           branch: '{branch}'
 
           files:
             - file-id: 'packagecloud_api'
               target: '/root'
+      - shell:
+          !include-raw-escape:
+          - ../scripts/setup_executor_env.sh
       - shell:
           !include-raw-escape:
           - ../scripts/vpp/checkstyle.sh
     publishers:
       - fdio-infra-shiplogs:
           maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: false
-          max-failed-builds: 1
-          fixed-delay: 90
+# [end] VPP-BETA-MERGE JOB TEMPLATE
 
+# VPP-GCC-VERIFY JOB TEMPLATE
 - job-template:
-    name: 'vpp-beta-merge-{stream}-{os}'
+    name: 'vpp-gcc-verify-{stream}-{os}-{executor-arch}'
 
     project-type: freestyle
-    node: '{os}-us'
+    node: 'builder-{os}-prod-{executor-arch}'
+    concurrent: true
+    archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core'
 
     build-discarder:
       daysToKeep: '{build-days-to-keep}'
           branch: '{branch}'
       - os-parameter:
           os: '{os}'
-      - maven-project-parameter:
-          maven: 'mvn33-new'
-      - maven-exec:
-          maven-version: 'mvn33-new'
-      - stream-parameter:
-          stream: '{stream}'
       - repo-name-parameter:
           repo-name: '{repo-stream-part}.{repo-os-part}'
+      - stream-parameter:
+          stream: '{stream}'
       - string:
           name: ARCHIVE_ARTIFACTS
           default: '{archive-artifacts}'
           description: Artifacts to archive to the logs server.
+      - make-parallel-jobs-parameter:
+          make-parallel-jobs: '{make-parallel-jobs}'
+      - gerrit-refspec-parameter:
+          refspec: '{branch-head-refspec}'
 
     scm:
       - gerrit-trigger-scm:
           credentials-id: 'jenkins-gerrit-credentials'
-          refspec: ''
-          choosing-strategy: 'default'
+          refspec: '$GERRIT_REFSPEC'
+          choosing-strategy: 'gerrit'
 
     wrappers:
       - fdio-infra-wrappers:
-          build-timeout: '{build-timeout}'
+          build-timeout: 120
 
     triggers:
-      - gerrit-trigger-manually-triggered:
-          comment-trigger-value: 'betamerge'
+      - gerrit-trigger-checkstyle:
           name: '{project}'
           branch: '{branch}'
 
     builders:
-      - config-file-provider:
-          files:
-            - file-id: '.packagecloud'
-              target: '/root'
-      - config-file-provider:
-          files:
-            - file-id: 'packagecloud_api'
-              target: '/root'
       - shell:
           !include-raw-escape:
-          - ../scripts/vpp/checkstyle.sh
+          - ../scripts/setup_executor_env.sh
       - shell:
           !include-raw-escape:
           - ../scripts/setup_vpp_ubuntu_docker_test.sh
           - ../scripts/setup_vpp_dpdk_dev_env.sh
       - shell:
           !include-raw-escape:
-          - ../scripts/vpp/build.sh
-      - provide-maven-settings:
-          settings-file: 'vpp-settings'
-          global-settings-file: 'global-settings'
-      - shell:
-          !include-raw-escape:
-          - ../scripts/packagecloud_push.sh
+          - ../scripts/vpp/gcc-build.sh
 
     publishers:
       - fdio-infra-shiplogs:
           maven-version: 'mvn36'
+# [end] VPP-GCC-VERIFY JOB TEMPLATE
 
+# VPP-CSIT-VERIFY-DEVICE JOB TEMPLATE
 - job-template:
     name: 'vpp-csit-verify-device-{stream}-{device-node-arch}'
     description: |
           name: ARCHIVE_ARTIFACTS
           default: '{archive-artifacts}'
           description: Artifacts to archive to the logs server.
+      - make-parallel-jobs-parameter:
+          make-parallel-jobs: '{make-parallel-jobs}'
 
     scm:
       - gerrit-trigger-scm:
           build-timeout: '90'
 
     triggers:
-      - '{trigger}':
+      - 'gerrit-trigger-vpp-csit-devicetest-full':
           name: '{project}'
           branch: '{branch}'
           skip-vote: '{skip-vote}'
 
     builders:
+      - shell:
+          !include-raw-escape:
+          - ../scripts/setup_executor_env.sh
       - shell:
           !include-raw-escape:
           - ../scripts/setup_vpp_ubuntu_docker_test.sh
 
     publishers:
       - robot-report:
-          output-path: 'csit_current/'
+          output-path: 'archives'
 
       - fdio-infra-shiplogs:
           maven-version: 'mvn36'
+# [end] VPP-CSIT-VERIFY-DEVICE JOB TEMPLATE
 
+# VPP-CSIT-VERIFY-PERF JOB TEMPLATE
 - job-template:
     name: 'vpp-csit-verify-perf-{stream}-{node-arch}'
     description: |
               <ul>
                   <li>{executor}
               </ul>
+          <li>Objective
+          Contrary to csit-vpp job, this also measures the parent performance,
+          and fails if performance regression is detected.
+          See https://github.com/FDio/csit/blob/master/docs/cpta/methodology/perpatch_performance_tests.rst
       </ul>
 
     project-type: freestyle
           name: ARCHIVE_ARTIFACTS
           default: '{archive-artifacts}'
           description: Artifacts to archive to the logs server.
+      - make-parallel-jobs-parameter:
+          make-parallel-jobs: '{make-parallel-jobs}'
 
     scm:
       - gerrit-trigger-scm:
 
     triggers:
       - gerrit-trigger-csit-perftest:
-          name: '{project}'
+          project: '{project}'
           branch: '{branch}'
-          node-arch: '{node-arch}'
+          trigger-word: 'perftest-{node-arch}'
+          skip-vote: true
 
     builders:
+      - shell:
+          !include-raw-escape:
+          - ../scripts/setup_executor_env.sh
       - shell:
           !include-raw-escape:
           - ../scripts/setup_vpp_ubuntu_docker_test.sh
       - robot-report:
           output-path: 'csit_current/0/'
 
-      - fdio-infra-shiplogs:
-          maven-version: 'mvn36'
+      - lf-infra-publish
+# [end] VPP-CSIT-VERIFY-PERF JOB TEMPLATE
 
+# VPP-CSIT-VERIFY-API-CRC JOB TEMPLATE
 - job-template:
     name: 'vpp-csit-verify-api-crc-{stream}'
 
           branch: '{branch}'
 
     builders:
+      - shell:
+          !include-raw-escape:
+          - ../scripts/setup_executor_env.sh
       - shell:
           !include-raw-escape:
           - ../scripts/setup_vpp_ubuntu_docker_test.sh
     publishers:
       - fdio-infra-shiplogs:
           maven-version: 'mvn36'
+# [end] VPP-CSIT-VERIFY-API-CRC JOB TEMPLATE
+# [end] JOB TEMPLATE DEFINITIONS