diff options
Diffstat (limited to 'jjb/vpp/vpp.yaml')
-rw-r--r-- | jjb/vpp/vpp.yaml | 1479 |
1 files changed, 693 insertions, 786 deletions
diff --git a/jjb/vpp/vpp.yaml b/jjb/vpp/vpp.yaml index 0bad3f1a..62975f00 100644 --- a/jjb/vpp/vpp.yaml +++ b/jjb/vpp/vpp.yaml @@ -1,216 +1,341 @@ +# Copyright (c) 2023 Cisco and/or its affiliates. +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at: +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + --- +# PROJECT DEFINITIONS +# +# Please keep projects grouped in this order: +# vpp-x86_64, vpp-aarch64, vpp-csit +# +# NOTES: +# - The 'branch-refspec' attribute is used for sandbox testing. +# Use the get_gerrit_refspec() bash function in +# .../ci-management/extras/bash/sandbox_test_functions.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. +# [end] NOTES + +# VPP-CHECKSTYLE-X86_64 PROJECT - project: - name: vpp + name: vpp-checkstyle-x86_64 jobs: - - 'vpp-verify-{stream}-{os}' - - 'vpp-verify-{stream}-debug' - - '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' - + - ubuntu2204 stream: - - master: + - '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' - - '2005': - branch: 'stable/2005' - repo-stream-part: 'stable.2005' + branch-refspec: '' + - '2310': + branch: 'stable/2310' + branch-refspec: '' + - '2402': + branch: 'stable/2402' + branch-refspec: '' + executor-arch: 'x86_64' + +# [end] VPP-CHECKSTYLE-X86_64 PROJECT + +# VPP-X86_64 PROJECT +# +# NOTE: The list of supported branches for each OS are maintained +# in .../ci-management/docker/scripts/lib_vpp.sh +# The job configuration must be derived from that list, thus +# modifications to both should be made at the same time. +# Since x86_64 is the primary development architecture, this +# project definition should be identical to the docker image +# build scripts. Other architectures may be a subset. - 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: + - 'master': branch: 'master' - repo-stream-part: 'master' + branch-refspec: '' + make-test-os: 'ubuntu-20.04 ubuntu-22.04' + make-test-multiworker-os: 'debian-11' + - '2310': + branch: 'stable/2310' + branch-refspec: '' + make-test-os: 'ubuntu-20.04 ubuntu-22.04' + make-test-multiworker-os: 'debian-11' + - '2402': + branch: 'stable/2402' + branch-refspec: '' + make-test-os: 'ubuntu-20.04 ubuntu-22.04' + make-test-multiworker-os: 'debian-11' + os: + - debian11 + - ubuntu2004 + - ubuntu2204 + executor-arch: 'x86_64' +# [end] VPP-X86_64 PROJECT +# VPP-GCC-X86_64 PROJECT - project: - name: vpp-clang + name: vpp-gcc-x86_64 jobs: - - 'vpp-coverity-{stream}' - + - 'vpp-gcc-verify-{stream}-{os}-{executor-arch}' project: 'vpp' + make-parallel-jobs: '4' os: - - ubuntu1804: - repo-os-part: 'ubuntu.bionic.main' - - centos7: - repo-os-part: 'centos7' - - opensuse: - repo-os-part: 'opensuse' - + - ubuntu2204 + executor-arch: 'x86_64' stream: - - master: + - 'master': branch: 'master' - repo-stream-part: 'master' - + branch-refspec: '' + - '2310': + branch: 'stable/2310' + branch-refspec: '' + - '2402': + branch: 'stable/2402' + branch-refspec: '' + +# [end] VPP-GCC-X86_64 PROJECT + +# VPP-DEBUG-X86_64 PROJECT +# +# Currently a periodic job due to intermittent failures. +# Limiting branches to master, since other branches +# may not get fixes for the intermittent failures. +# - project: - name: vpp-misc + name: vpp-debug-x86_64 jobs: - - 'vpp-checkstyle-verify-{stream}' + - 'vpp-debug-verify-{stream}-{os}-{executor-arch}' project: 'vpp' + make-parallel-jobs: '4' + make-test-os: 'ubuntu-20.04 ubuntu-22.04' + comment-trigger-value: 'debug-verify' stream: - - master: + - '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' - - '2005': - branch: 'stable/2005' - repo-stream-part: 'stable.2005' - os: ubuntu1804 - + branch-refspec: '' + make-test-os: 'ubuntu-20.04 ubuntu-22.04' + os: 'ubuntu2204' + executor-arch: 'x86_64' + +# [end] VPP-DEBUG-X86_64 PROJECT + +# VPP-DPDK-RDMA-VERSION-MISMATCH-X86_64 PROJECT +# +# Currently a periodic job due to intermittent failures. +# Limiting branches to master, since other branches +# may not get fixes for the intermittent failures. +# - project: - name: vpp-perpatch + name: vpp-dpdk-rdma-version-mismatch-x86_64 jobs: - - 'vpp-csit-verify-device-{stream}-{device-node-arch}': - make-parallel-jobs: '32' - - 'vpp-csit-verify-perf-{stream}-{node-arch}' + - 'vpp-dpdk-rdma-version-mismatch-{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-test-os: 'ubuntu-20.04 ubuntu-22.04' + comment-trigger-value: 'dpdk-rdma-version-mismatch' stream: - - master: + - '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' - - '2005': - branch: 'stable/2005' - repo-stream-part: 'stable.2005' - 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' - make-parallel-jobs: '16' - exclude: - - stream: '1904' - os: 'ubuntu1804' - device-node-arch: '1n-tx2' - + # Once per day at 00:15 + periodicity: '15 0 * * 0-6' + os: 'ubuntu2204' + executor-arch: 'x86_64' + +# [end] VPP-DPDK-RDMA-VERSION-MISMATCH-X86_64 PROJECT + +# VPP-COV-X86_64 PROJECT +# +# A per-patch job to produce code coverage. +# +# TODO: switch OS to ubuntu-22.04 once the skipping of intermittently failing +# tests are removed +# - project: - name: vpp-older-only + name: vpp-cov-x86_64 jobs: - - 'vpp-historic-verify-{stream}-{os}' - - 'vpp-historic-merge-{stream}-{os}' + - 'vpp-cov-verify-{stream}-{os}-{executor-arch}' project: 'vpp' + make-parallel-jobs: '4' + make-test-os: 'ubuntu-20.04 ubuntu-22.04' + comment-trigger-value: 'gcov-report' 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' + - 'master': + branch: 'master' + branch-refspec: '' + # Once per day at 00:25 + periodicity: '25 0 * * 0-6' + os: 'ubuntu2004' + executor-arch: 'x86_64' + +# [end] VPP-COV-X86_64 PROJECT + +# VPP-AARCH64 PROJECT +# +# NOTE: The list of supported branches for each OS are maintained +# in .../ci-management/docker/scripts/lib_vpp.sh +# The job configuration must be derived from that list, thus +# modifications to both should be made at the same time. +# The AARCH64 architecture is in the process of catching up +# with X86_64 in terms of OS coverage. Thus the jobs are +# a subset of those defined in the docker image build script. +- project: + name: vpp-aarch64 + jobs: + - 'vpp-verify-{stream}-{os}-{executor-arch}' + - 'vpp-merge-{stream}-{os}-{executor-arch}' + project: 'vpp' + make-parallel-jobs: '4' + stream: + - 'master': + branch: 'master' + branch-refspec: '' + make-test-os: 'ubuntu-20.04 ubuntu-22.04' + make-test-multiworker-os: '' + - '2310': + branch: 'stable/2310' + branch-refspec: '' + make-test-os: 'ubuntu-20.04 ubuntu-22.04' + make-test-multiworker-os: '' + - '2402': + branch: 'stable/2402' + branch-refspec: '' + make-test-os: 'ubuntu-20.04 ubuntu-22.04' + make-test-multiworker-os: '' os: - - ubuntu1604: - repo-os-part: 'ubuntu.xenial.main' + - ubuntu2004 + - ubuntu2204 + executor-arch: 'aarch64' +# [end] VPP-AARCH64 PROJECT +# VPP-CSIT-VERIFY-DEVICE PROJECT - project: - name: vpp-arm + name: vpp-csit-verify-device jobs: - - 'vpp-arm-verify-{stream}-{os}' - - 'vpp-arm-merge-{stream}-{os}' + - 'vpp-csit-verify-device-{stream}-{os}-{executor-arch}-{testbed-arch}': + make-parallel-jobs: '32' project: 'vpp' + skip-vote: 'false' stream: - - master: + - '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' - - '2005': - branch: 'stable/2005' - repo-stream-part: 'stable.2005' - os: - - ubuntu1804: - repo-os-part: 'ubuntu-arm.bionic.main' - make-parallel-jobs: '16' + branch-refspec: '' + - '2310': + branch: 'stable/2310' + branch-refspec: '' + - '2402': + branch: 'stable/2402' + branch-refspec: '' + testbed-arch: + - 1n-spr: + os: 'ubuntu2204' + executor-arch: 'x86_64' + skip-vote: 'true' + - 1n-alt: + os: 'ubuntu2204' + executor-arch: 'aarch64' + skip-vote: 'true' + exclude: + # 1n-alt testbed not supported + # in CSIT prior to 2402 + - testbed-arch: 1n-alt + stream: '2310' +# [end] VPP-CSIT-VERIFY-DEVICE PROJECT -# TODO: Merge with (e.g.) vpp-perpatch or similar, -# when number of stable branches supported matches. +# VPP-CSIT-VERIFY-PERF PROJECT - project: - name: vpp-api-crc + name: vpp-csit-verify-perf jobs: - - 'vpp-csit-verify-api-crc-{stream}' + - 'vpp-csit-verify-perf-{stream}-{os}-{executor-arch}-{testbed-arch}' + - 'vpp-csit-bisect-{stream}-{os}-{executor-arch}-{testbed-arch}' project: 'vpp' - executor: 'vpp-csit-device' skip-vote: 'false' stream: - # Only master and LTS branches. - - '1908': - branch: 'stable/1908' - repo-stream-part: 'stable.1908' - - master: + - 'master': branch: 'master' - os: ubuntu1804 + branch-refspec: '' + testbed-arch: + - 2n-icx: + os: 'ubuntu2204' + executor-arch: 'x86_64' + - 2n-clx: + os: 'ubuntu2204' + executor-arch: 'x86_64' + - 2n-spr: + os: 'ubuntu2204' + executor-arch: 'x86_64' + - 2n-zn2: + os: 'ubuntu2204' + executor-arch: 'x86_64' + - 3n-icx: + os: 'ubuntu2204' + executor-arch: 'x86_64' + - 3n-tsh: + os: 'ubuntu2204' + executor-arch: 'aarch64' + make-parallel-jobs: '16' + - 3n-alt: + os: 'ubuntu2204' + executor-arch: 'aarch64' + make-parallel-jobs: '16' + - 2n-tx2: + os: 'ubuntu2204' + executor-arch: 'aarch64' + make-parallel-jobs: '16' + - 3n-snr: + os: 'ubuntu2204' + executor-arch: 'x86_64' + - 3n-icxd: + os: 'ubuntu2204' + executor-arch: 'x86_64' + - 3na-spr: + os: 'ubuntu2204' + executor-arch: 'x86_64' + - 3nb-spr: + os: 'ubuntu2204' + executor-arch: 'x86_64' +# [end] VPP-CSIT-VERIFY-PERF PROJECT + +# 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}-{os}-{executor-arch}' + project: 'vpp' + executor-arch: 'x86_64' + skip-vote: 'false' + stream: + - 'master': + branch: 'master' + branch-refspec: '' + - '2310': + branch: 'stable/2310' + branch-refspec: '' + - '2402': + branch: 'stable/2402' + branch-refspec: '' + os: + - 'ubuntu2204' +# [end] VPP-CSIT-API-CRC PROJECT +# LF RELENG VPP PROJECTS - project: name: vpp-info project-name: vpp @@ -225,317 +350,36 @@ views: - project-view project-name: vpp +# [end] LF RELENG VPP PROJECTS +# [end] PROJECT DEFINITIONS -- 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. - - 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' - - 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' +# 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-historic-merge-{stream}-{os}' + name: 'vpp-checkstyle-verify-{stream}-{os}-{executor-arch}' 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. - - make-parallel-jobs-parameter: - make-parallel-jobs: '{make-parallel-jobs}' - - 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' + node: 'builder-{os}-prod-{executor-arch}' 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. - - make-parallel-jobs-parameter: - make-parallel-jobs: '{make-parallel-jobs}' - - gerrit-refspec-parameter - - 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_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' - -- job-template: - name: 'vpp-arm-merge-{stream}-{os}' - - project-type: freestyle - node: '{os}arm-us' - - build-discarder: - daysToKeep: '{build-days-to-keep}' - numToKeep: 100 - artifactDaysToKeep: '{build-artifact-days-to-keep}' - artifactNumToKeep: '{build-artifact-num-to-keep}' + properties: + - lf-infra-properties: + build-days-to-keep: "{build-days-to-keep}" + # Please keep parameters in alphabetical order parameters: - - project-parameter: - project: '{project}' - gerrit-parameter: branch: '{branch}' + - gerrit-refspec-parameter: + refspec: '{branch-refspec}' - 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. - - make-parallel-jobs-parameter: - make-parallel-jobs: '{make-parallel-jobs}' - - gerrit-refspec-parameter - - 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/vpp/checkstyle.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 - - - 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-checkstyle-verify-{stream}' - - project-type: freestyle - node: '{os}-us' - concurrent: true - archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core' - - build-discarder: - daysToKeep: '{build-days-to-keep}' - numToKeep: '{build-num-to-keep}' - 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}.ubuntu.bionic.main' - - gerrit-refspec-parameter scm: - gerrit-trigger-scm: @@ -551,7 +395,6 @@ credential-id: VppApiCompatNotify variable: SECRET_WEBEX_TEAMS_ACCESS_TOKEN - triggers: - gerrit: server-name: 'Primary' @@ -564,12 +407,11 @@ - comment-added-contains-event: comment-contains-value: 'checkstylecheck' - comment-added-contains-event: - comment-contains-value: 'docsonly' - - comment-added-contains-event: 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: @@ -585,8 +427,6 @@ pattern: ^((?!\/COMMIT_MSG|docs|_abc|_def[\/\.]).)*$ forbidden-file-paths: - compare-type: REG_EXP - pattern: .*docs\/.* - - compare-type: REG_EXP pattern: .*extras\/emacs\/.* disable-strict-forbidden-file-verification: 'true' override-votes: true @@ -606,6 +446,9 @@ builders: - shell: !include-raw-escape: + - ../scripts/setup_executor_env.sh + - shell: + !include-raw-escape: - ../scripts/vpp/checkstyle.sh - shell: !include-raw-escape: @@ -616,42 +459,45 @@ - shell: !include-raw-escape: - ../scripts/vpp/commitmsg.sh + - shell: + !include-raw-escape: + - ../scripts/vpp/docs_spell.sh publishers: - - fdio-infra-shiplogs: - maven-version: 'mvn36' + - fdio-infra-publish + +# [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' - build-discarder: - daysToKeep: '{build-days-to-keep}' - numToKeep: 100 - artifactDaysToKeep: '{build-artifact-days-to-keep}' - artifactNumToKeep: '{build-artifact-num-to-keep}' + properties: + - lf-infra-properties: + build-days-to-keep: "{build-days-to-keep}" + # Please keep parameters in alphabetical order parameters: - - project-parameter: - project: '{project}' - gerrit-parameter: branch: '{branch}' + - gerrit-refspec-parameter: + refspec: '{branch-refspec}' + - make-parallel-jobs-parameter: + make-parallel-jobs: '{make-parallel-jobs}' + - make-test-os-parameter: + make-test-os: '{make-test-os}' + - make-test-multiworker-os-parameter: + make-test-multiworker-os: '{make-test-multiworker-os}' - os-parameter: os: '{os}' - - repo-name-parameter: - repo-name: '{repo-stream-part}.{repo-os-part}' + - project-parameter: + project: '{project}' - 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}' scm: - gerrit-trigger-scm: @@ -664,58 +510,56 @@ 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 - shell: !include-raw-escape: - - ../scripts/setup_vpp_dpdk_dev_env.sh + - ../scripts/setup_vpp_ext_deps.sh - shell: !include-raw-escape: - ../scripts/vpp/build.sh publishers: - - fdio-infra-shiplogs: - maven-version: 'mvn36' + - fdio-infra-publish +# [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 - artifactDaysToKeep: '{build-artifact-days-to-keep}' - artifactNumToKeep: '{build-artifact-num-to-keep}' + properties: + - lf-infra-properties: + build-days-to-keep: "{build-days-to-keep}" + # Please keep parameters in alphabetical order parameters: - - project-parameter: - project: '{project}' - gerrit-parameter: branch: '{branch}' + - gerrit-refspec-parameter: + refspec: '{branch-refspec}' + - make-parallel-jobs-parameter: + make-parallel-jobs: '{make-parallel-jobs}' + - make-test-os-parameter: + make-test-os: '{make-test-os}' - os-parameter: os: '{os}' - - repo-name-parameter: - repo-name: '{repo-stream-part}.{repo-os-part}' + - project-parameter: + project: '{project}' - 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 scm: - gerrit-trigger-scm: @@ -725,110 +569,117 @@ wrappers: - fdio-infra-wrappers: - build-timeout: 120 + build-timeout: '{build-timeout}' triggers: - - gerrit-trigger-checkstyle: + - 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 - shell: !include-raw-escape: - - ../scripts/setup_vpp_dpdk_dev_env.sh + - ../scripts/setup_vpp_ext_deps.sh - shell: !include-raw-escape: - - ../scripts/vpp/build.sh + - ../scripts/vpp/debug-build.sh publishers: - - fdio-infra-shiplogs: - maven-version: 'mvn36' + - fdio-infra-publish +# [end] VPP-DEBUG-VERIFY JOB TEMPLATE +# VPP-DPDK-RDMA-VERSION-MISMATCH PERIODIC JOB TEMPLATE - job-template: - name: 'vpp-verify-{stream}-debug' + name: 'vpp-dpdk-rdma-version-mismatch-{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}' - artifactDaysToKeep: '{build-artifact-days-to-keep}' - artifactNumToKeep: '{build-artifact-num-to-keep}' + properties: + - lf-infra-properties: + build-days-to-keep: "{build-days-to-keep}" + # Please keep parameters in alphabetical order parameters: - - project-parameter: - project: '{project}' - gerrit-parameter: branch: '{branch}' + - make-parallel-jobs-parameter: + make-parallel-jobs: '{make-parallel-jobs}' + - make-test-os-parameter: + make-test-os: '{make-test-os}' - os-parameter: - os: 'ubuntu1804' - - repo-name-parameter: - repo-name: '{repo-stream-part}.ubuntu.bionic.main' + os: '{os}' + - project-parameter: + project: '{project}' - stream-parameter: stream: '{stream}' - - make-parallel-jobs-parameter: - make-parallel-jobs: '{make-parallel-jobs}' - - gerrit-refspec-parameter 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}' triggers: - - gerrit-trigger-checkstyle-nonvoting: + - timed: '{periodicity}' + - gerrit-trigger-manually-triggered: + comment-trigger-value: '{comment-trigger-value}' name: '{project}' branch: '{branch}' builders: - shell: !include-raw-escape: - - ../scripts/setup_vpp_ubuntu_docker_test.sh + - ../scripts/setup_executor_env.sh - shell: !include-raw-escape: - - ../scripts/setup_vpp_dpdk_dev_env.sh + - ../scripts/setup_vpp_ubuntu_docker_test.sh - shell: !include-raw-escape: - - ../scripts/vpp/debug-build.sh + - ../scripts/vpp/dpdk-rdma-version-mismatch.sh publishers: - - fdio-infra-shiplogs: - maven-version: 'mvn36' + - vpp-dpdk-rdma-version-mismatch: + branch: '{branch}' + - fdio-infra-publish +# [end] VPP-DPDK-RDMA-VERSION-MISMATCH PERIODIC JOB TEMPLATE +# VPP-MERGE JOB TEMPLATE - job-template: - name: 'vpp-coverity-{stream}' + 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}' - artifactDaysToKeep: '{build-artifact-days-to-keep}' - artifactNumToKeep: '{build-artifact-num-to-keep}' + properties: + - lf-infra-properties: + build-days-to-keep: "{build-days-to-keep}" + # Please keep parameters in alphabetical order parameters: - - project-parameter: - project: '{project}' - gerrit-parameter: branch: '{branch}' + - make-parallel-jobs-parameter: + make-parallel-jobs: '{make-parallel-jobs}' + - make-test-os-parameter: + make-test-os: '{make-test-os}' + - make-test-multiworker-os-parameter: + make-test-multiworker-os: '{make-test-multiworker-os}' - os-parameter: - os: 'ubuntu1804' - - repo-name-parameter: - repo-name: '{repo-stream-part}.ubuntu.bionic.main' + os: '{os}' + - project-parameter: + project: '{project}' - stream-parameter: stream: '{stream}' @@ -836,190 +687,135 @@ - gerrit-trigger-scm: credentials-id: 'jenkins-gerrit-credentials' refspec: '' - choosing-strategy: 'gerrit' + choosing-strategy: 'default' wrappers: - fdio-infra-wrappers: - build-timeout: '{build-timeout}' + build-timeout: 120 triggers: - - timed: '0 14 * * *' + - gerrit-trigger-patch-merged: + name: '{project}' + branch: '{branch}' builders: + - config-file-provider: + files: + - file-id: '.packagecloud' + target: '/root/.packagecloud' + - config-file-provider: + files: + - file-id: 'packagecloud_api' + target: '/root/packagecloud_api' + - shell: + !include-raw-escape: + - ../scripts/setup_executor_env.sh + - shell: + !include-raw-escape: + - ../scripts/vpp/commitmsg.sh + - shell: + !include-raw-escape: + - ../scripts/setup_vpp_ubuntu_docker_test.sh + - shell: + !include-raw-escape: + - ../scripts/setup_vpp_ext_deps.sh - shell: - command: !include-raw-escape: ../scripts/vpp/coverity.sh - unstable-return: 42 + !include-raw-escape: + - ../scripts/vpp/build.sh + - shell: + !include-raw-escape: + - ../scripts/packagecloud_push.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' + - fdio-infra-publish +# [end] VPP-MERGE JOB TEMPLATE +# VPP-GCC-VERIFY JOB TEMPLATE - job-template: - name: 'vpp-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 - build-discarder: - daysToKeep: '{build-days-to-keep}' - numToKeep: 100 - artifactDaysToKeep: '{build-artifact-days-to-keep}' - artifactNumToKeep: '{build-artifact-num-to-keep}' + properties: + - lf-infra-properties: + build-days-to-keep: "{build-days-to-keep}" + # Please keep parameters in alphabetical order parameters: - - project-parameter: - project: '{project}' - gerrit-parameter: branch: '{branch}' + - gerrit-refspec-parameter: + refspec: '{branch-refspec}' + - make-parallel-jobs-parameter: + make-parallel-jobs: '{make-parallel-jobs}' - os-parameter: os: '{os}' - - maven-project-parameter: - maven: 'mvn33-new' - - maven-exec: - maven-version: 'mvn33-new' + - project-parameter: + project: '{project}' - 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}' - - gerrit-refspec-parameter 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-patch-merged: + - 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 - shell: !include-raw-escape: - - ../scripts/setup_vpp_dpdk_dev_env.sh + - ../scripts/setup_vpp_ext_deps.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' + - fdio-infra-publish +# [end] VPP-GCC-VERIFY JOB TEMPLATE +# VPP-COV-VERIFY JOB TEMPLATE - job-template: - name: 'vpp-beta-merge-{stream}-{os}' + name: 'vpp-cov-verify-{stream}-{os}-{executor-arch}' project-type: freestyle - node: '{os}-us' + node: 'builder-{os}-prod-{executor-arch}' + concurrent: true - build-discarder: - daysToKeep: '{build-days-to-keep}' - numToKeep: 100 - artifactDaysToKeep: '{build-artifact-days-to-keep}' - artifactNumToKeep: '{build-artifact-num-to-keep}' + properties: + - lf-infra-properties: + build-days-to-keep: "{build-days-to-keep}" + # Please keep parameters in alphabetical order parameters: - - project-parameter: - project: '{project}' - gerrit-parameter: branch: '{branch}' + - make-parallel-jobs-parameter: + make-parallel-jobs: '{make-parallel-jobs}' + - make-test-os-parameter: + make-test-os: '{make-test-os}' - os-parameter: os: '{os}' - - maven-project-parameter: - maven: 'mvn33-new' - - maven-exec: - maven-version: 'mvn33-new' + - project-parameter: + project: '{project}' - 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: @@ -1032,86 +828,72 @@ build-timeout: '{build-timeout}' triggers: + - timed: '{periodicity}' - gerrit-trigger-manually-triggered: - comment-trigger-value: 'betamerge' + comment-trigger-value: '{comment-trigger-value}' 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 - shell: !include-raw-escape: - - ../scripts/setup_vpp_dpdk_dev_env.sh + - ../scripts/setup_vpp_ext_deps.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/cov-build.sh publishers: - - fdio-infra-shiplogs: - maven-version: 'mvn36' + - fdio-infra-publish-cov-7day + - fdio-infra-publish +# [end] VPP-COV-VERIFY JOB TEMPLATE +# VPP-CSIT-VERIFY-DEVICE-PERPATCH JOB TEMPLATE - job-template: - name: 'vpp-csit-verify-device-{stream}-{device-node-arch}' + name: 'vpp-csit-verify-device-{stream}-{os}-{executor-arch}-{testbed-arch}' description: | <ul> <li>executor <ul> - <li>{device-executor} + <li>csit-builder-{os}-prod-{executor-arch} + </ul> + <li>testbed architecture + <ul> + <li>{testbed-arch} </ul> </ul> project-type: freestyle - node: '{device-executor}' + node: 'csit-builder-{os}-prod-{executor-arch}' concurrent: true - archive-artifacts: '**/csit_current/**/*.*' latest-only: false - build-discarder: - daysToKeep: '{build-days-to-keep}' - numToKeep: 100 - artifactDaysToKeep: '{build-artifact-days-to-keep}' - artifactNumToKeep: '{build-artifact-num-to-keep}' + properties: + - lf-infra-properties: + build-days-to-keep: "{build-days-to-keep}" + # Please keep parameters in alphabetical order parameters: - - project-parameter: - project: '{project}' + - gerrit-csit-refspec-parameter + - gerrit-event-comment-text-parameter + - gerrit-event-type-parameter - gerrit-parameter: branch: '{branch}' + - gerrit-refspec-parameter: + refspec: '{branch-refspec}' + - make-parallel-jobs-parameter: + make-parallel-jobs: '{make-parallel-jobs}' - os-parameter: os: '{os}' - - repo-name-parameter: - repo-name: '{repo-stream-part}.ubuntu.bionic.main' - - gerrit-refspec-parameter - - gerrit-event-type-parameter - - gerrit-event-comment-text-parameter - - gerrit-csit-refspec-parameter + - project-parameter: + project: '{project}' - 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}' scm: - gerrit-trigger-scm: @@ -1124,7 +906,7 @@ build-timeout: '90' triggers: - - '{trigger}': + - 'gerrit-trigger-vpp-csit-devicetest-full': name: '{project}' branch: '{branch}' skip-vote: '{skip-vote}' @@ -1132,28 +914,33 @@ builders: - shell: !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 + - ../scripts/setup_vpp_ext_deps.sh - shell: !include-raw-escape: - ../scripts/vpp/csit-device.sh publishers: - - robot-report: - output-path: 'csit_current/' - - - fdio-infra-shiplogs: - maven-version: 'mvn36' + - fdio-infra-publish +# [end] VPP-CSIT-VERIFY-DEVICE-PERPATCH JOB TEMPLATE +# VPP-CSIT-VERIFY-PERF JOB TEMPLATE - job-template: - name: 'vpp-csit-verify-perf-{stream}-{node-arch}' + name: 'vpp-csit-verify-perf-{stream}-{os}-{executor-arch}-{testbed-arch}' description: | <ul> <li>executor <ul> - <li>{executor} + <li>builder-{os}-prod-{executor-arch} + </ul> + <li>testbed architecture + <ul> + <li>{testbed-arch} </ul> <li>Objective Contrary to csit-vpp job, this also measures the parent performance, @@ -1162,44 +949,35 @@ </ul> project-type: freestyle - node: '{executor}' + node: 'builder-{os}-prod-{executor-arch}' concurrent: true - archive-artifacts: > - **/csit_current/**/*.* - **/csit_parent/**/*.* latest-only: false - build-discarder: - daysToKeep: '{build-days-to-keep}' - numToKeep: 100 - artifactDaysToKeep: '{build-artifact-days-to-keep}' - artifactNumToKeep: '{build-artifact-num-to-keep}' + properties: + - lf-infra-properties: + build-days-to-keep: "{build-days-to-keep}" + # Please keep parameters in alphabetical order parameters: - - project-parameter: - project: '{project}' - - gerrit-parameter: - branch: '{branch}' - - os-parameter: - os: '{os}' - - repo-name-parameter: - repo-name: '{repo-stream-part}.ubuntu.bionic.main' - - gerrit-refspec-parameter - - gerrit-event-type-parameter - - gerrit-event-comment-text-parameter - - gerrit-csit-refspec-parameter - csit-perf-trial-duration-parameter: csit-perf-trial-duration: "10.0" - csit-perf-trial-multiplicity-parameter: csit-perf-trial-multiplicity: "5" - - stream-parameter: - stream: '{stream}' - - string: - name: ARCHIVE_ARTIFACTS - default: '{archive-artifacts}' - description: Artifacts to archive to the logs server. + - gerrit-csit-refspec-parameter + - gerrit-event-comment-text-parameter + - gerrit-event-type-parameter + - gerrit-refspec-parameter: + refspec: '{branch-refspec}' + - gerrit-parameter: + branch: '{branch}' - make-parallel-jobs-parameter: make-parallel-jobs: '{make-parallel-jobs}' + - os-parameter: + os: '{os}' + - project-parameter: + project: '{project}' + - stream-parameter: + stream: '{stream}' scm: - gerrit-trigger-scm: @@ -1215,58 +993,166 @@ - gerrit-trigger-csit-perftest: project: '{project}' branch: '{branch}' - trigger-word: 'perftest-{node-arch}' + trigger-word: 'perftest-{testbed-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 - shell: !include-raw-escape: - - ../scripts/setup_vpp_dpdk_dev_env.sh + - ../scripts/setup_vpp_ext_deps.sh - shell: !include-raw-escape: - ../scripts/vpp/csit-perf.sh publishers: - - robot-report: - output-path: 'csit_current/0/' - - - lf-infra-publish - + - postbuildscript: + # Can be removed when all CSIT branches use correct archive directory. + builders: + - build-on: + - ABORTED + - FAILURE + - NOT_BUILT + - SUCCESS + - UNSTABLE + build-steps: + - shell: + !include-raw-escape: + - ../scripts/vpp/copy_archives.sh + - fdio-infra-publish +# [end] VPP-CSIT-VERIFY-PERF JOB TEMPLATE + +# VPP-CSIT-BISECT JOB TEMPLATE - job-template: - name: 'vpp-csit-verify-api-crc-{stream}' + name: 'vpp-csit-bisect-{stream}-{os}-{executor-arch}-{testbed-arch}' + description: | + <ul> + <li>executor + <ul> + <li>builder-{os}-prod-{executor-arch} + </ul> + <li>testbed architecture + <ul> + <li>{testbed-arch} + </ul> + <li>Objective + <ul> + <li>Find a cause of VPP performance jump among VPP commits. + </ul> + </ul> project-type: freestyle - node: '{os}-us' + node: 'builder-{os}-prod-{executor-arch}' concurrent: true - archive-artifacts: '' latest-only: false - build-discarder: - daysToKeep: '{build-days-to-keep}' - numToKeep: 100 - artifactDaysToKeep: '{build-artifact-days-to-keep}' - artifactNumToKeep: '{build-artifact-num-to-keep}' + properties: + - lf-infra-properties: + build-days-to-keep: "{build-days-to-keep}" + # Please keep parameters in alphabetical order parameters: - - project-parameter: - project: '{project}' + - csit-perf-trial-duration-parameter: + csit-perf-trial-duration: "1.0" + - csit-perf-trial-multiplicity-parameter: + csit-perf-trial-multiplicity: "60" + - gerrit-csit-refspec-parameter + - gerrit-event-comment-text-parameter + - gerrit-event-type-parameter + - gerrit-refspec-parameter: + refspec: '{branch-refspec}' - gerrit-parameter: branch: '{branch}' - - gerrit-refspec-parameter - - gerrit-csit-refspec-parameter + - make-parallel-jobs-parameter: + make-parallel-jobs: '{make-parallel-jobs}' + - os-parameter: + os: '{os}' + - project-parameter: + project: '{project}' - 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-non-activity-timeout: + build-timeout: 300 + + triggers: + - gerrit-trigger-csit-perftest: + project: '{project}' + branch: '{branch}' + trigger-word: 'bisecttest-{testbed-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 + - shell: + !include-raw-escape: + - ../scripts/setup_vpp_ext_deps.sh + - shell: + !include-raw-escape: + - ../scripts/vpp/csit-bisect.sh + + publishers: + - postbuildscript: + # Can be removed when all CSIT branches use correct archive directory. + builders: + - build-on: + - ABORTED + - FAILURE + - NOT_BUILT + - SUCCESS + - UNSTABLE + build-steps: + - shell: + !include-raw-escape: + - ../scripts/vpp/copy_archives.sh + - fdio-infra-publish +# [end] VPP-CSIT-BISECT JOB TEMPLATE + +# VPP-CSIT-VERIFY-API-CRC JOB TEMPLATE +- job-template: + name: 'vpp-csit-verify-api-crc-{stream}-{os}-{executor-arch}' + + project-type: freestyle + node: 'builder-{os}-prod-{executor-arch}' + concurrent: true + latest-only: false + + properties: + - lf-infra-properties: + build-days-to-keep: "{build-days-to-keep}" + + # Please keep parameters in alphabetical order + parameters: # Not sure whether not failing has any useful usage, # but it does not hurt to have some flexibility for future. - csit-fail-on-crc-mismatch-parameter: fail-on-crc-mismatch: 'True' + - gerrit-csit-refspec-parameter + - gerrit-parameter: + branch: '{branch}' + - gerrit-refspec-parameter: + refspec: '{branch-refspec}' + - project-parameter: + project: '{project}' + - stream-parameter: + stream: '{stream}' scm: - gerrit-trigger-scm: @@ -1279,8 +1165,6 @@ build-timeout: 300 triggers: - # TODO: Make other verify jobs trigger on success of this one, - # without breaking verification for VPP branches before stable/1908. - gerrit-trigger-checkstyle: name: '{project}' branch: '{branch}' @@ -1288,12 +1172,35 @@ builders: - shell: !include-raw-escape: + - ../scripts/setup_executor_env.sh + - shell: + !include-raw-escape: - ../scripts/setup_vpp_ubuntu_docker_test.sh - shell: !include-raw-escape: - ../scripts/vpp/check_crc.sh - # TODO: Add sending e-mail notifications to vpp-api-dev@lists.fd.io + # TODO: Add sending e-mail notifications to vpp-api-dev@lists.fd.io publishers: - - fdio-infra-shiplogs: - maven-version: 'mvn36' + - fdio-infra-publish +# [end] VPP-CSIT-VERIFY-API-CRC JOB TEMPLATE +# [end] JOB TEMPLATE DEFINITIONS + +- project: + name: vpp-release + project: vpp + project-name: vpp + build-node: centos8-builder-2c-2g + mvn-settings: vpp-settings + jobs: + - "gerrit-packagecloud-release-verify" + +- project: + name: vpp-packagecloud-release + project: vpp + project-name: vpp + build-node: centos8-builder-2c-2g + mvn-settings: vpp-settings + jobs: + - "gerrit-packagecloud-release-merge" + - "{project-name}-gerrit-release-jobs" |