X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=jjb%2Fvpp%2Fvpp.yaml;h=c44a4e0f37f5097a32b2f9df2ea6d2eabef627d7;hb=a24bf5110addf5cb6f2f6c589f0fc3c76954de1d;hp=b761f39a770a05cb3c754e0bdeee4a3dca311093;hpb=7d38249628969cc514c7cc28a1b7af7cf28780c9;p=ci-management.git diff --git a/jjb/vpp/vpp.yaml b/jjb/vpp/vpp.yaml index b761f39a7..c44a4e0f3 100644 --- a/jjb/vpp/vpp.yaml +++ b/jjb/vpp/vpp.yaml @@ -1,119 +1,277 @@ +# Copyright (c) 2021 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' + stream: + - master: + branch: 'master' + branch-refspec: '' + os: 'ubuntu2004' + repo-stream-part: 'master' + - '2009': + branch: 'stable/2009' + branch-refspec: '' + os: 'ubuntu1804' + repo-stream-part: 'stable.2009' + os: 'ubuntu1804' + - '2101': + branch: 'stable/2101' + branch-refspec: '' + os: 'ubuntu1804' + repo-stream-part: 'stable.2101' executor-arch: 'x86_64' - executor-os: 'ubuntu1804' +# [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-x86_64 + jobs: + - 'vpp-verify-{stream}-{os}-{executor-arch}' + - 'vpp-merge-{stream}-{os}-{executor-arch}' + project: 'vpp' + make-parallel-jobs: '4' + make-test-os: 'ubuntu-20.04' + archive-artifacts: '/tmp/vpp-failed-unittests/*/*' + stream: + - master: + branch: 'master' + branch-refspec: '' + repo-stream-part: 'master' + - '2009': + branch: 'stable/2009' + branch-refspec: '' + make-test-os: 'ubuntu-18.04' + repo-stream-part: 'stable.2009' + - '2101': + branch: 'stable/2101' + branch-refspec: '' + make-test-os: 'ubuntu-18.04' + repo-stream-part: 'stable.2101' os: - - ubuntu1804: - repo-os-part: 'ubuntu.bionic.main' - centos7: repo-os-part: 'centos7' - + - centos8: + repo-os-part: 'centos8' + - debian9: + repo-os-part: 'stretch' + - debian10: + repo-os-part: 'buster' + - ubuntu1804: + repo-os-part: 'ubuntu.bionic.main' + - ubuntu2004: + repo-os-part: 'ubuntu.focal.main' + executor-arch: 'x86_64' + exclude: + # OS deprecated in master + - stream: 'master' + os: 'centos7' + - stream: 'master' + os: 'debian9' + # 2009 LTS supports all OS variants + # OS deprecated in 2101 + - stream: '2101' + os: 'centos7' + - stream: '2101' + os: 'debian9' +# [end] VPP-X86_64 PROJECT + +# VPP-DEBUG-X86_64 PROJECT +# +# Currently a periodic 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-debug-x86_64 + jobs: + - 'vpp-debug-verify-{stream}-{os}-{executor-arch}' + project: 'vpp' + make-parallel-jobs: '4' + make-test-os: 'ubuntu-20.04' + archive-artifacts: '/tmp/vpp-failed-unittests/*/*' + comment-trigger-value: 'debug-verify' stream: - master: branch: 'master' + branch-refspec: '' + # Once per hour + periodicity: 'H * * * *' repo-stream-part: 'master' - - '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' - '2009': branch: 'stable/2009' + branch-refspec: '' + make-test-os: 'ubuntu-18.04' + # Once per day + periodicity: 'H H * * *' repo-stream-part: 'stable.2009' + os: + - ubuntu2004: + repo-os-part: 'ubuntu.focal.main' + executor-arch: 'x86_64' +# [end] VPP-DEBUG-X86_64 PROJECT +# VPP-GCC-X86_64 PROJECT - project: - name: vpp-beta + name: vpp-gcc-x86_64 jobs: - - 'vpp-beta-verify-{stream}-{os}' - - 'vpp-beta-merge-{stream}-{os}' - + - 'vpp-gcc-verify-{stream}-{os}-{executor-arch}' project: 'vpp' executor-arch: 'x86_64' os: - ubuntu2004: repo-os-part: 'ubuntu.focal.main' - - centos8: - repo-os-part: 'centos8' - stream: - master: branch: 'master' + branch-refspec: '' repo-stream-part: 'master' - '2009': branch: 'stable/2009' + branch-refspec: '' repo-stream-part: 'stable.2009' - + - '2101': + branch: 'stable/2101' + branch-refspec: '' + repo-stream-part: 'stable.2101' +# [end] VPP-GCC-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-misc + name: vpp-aarch64 jobs: - - 'vpp-checkstyle-verify-{stream}' + - 'vpp-verify-{stream}-{os}-{executor-arch}' + - 'vpp-merge-{stream}-{os}-{executor-arch}' project: 'vpp' - executor-arch: 'x86_64' + make-parallel-jobs: '16' + make-test-os: 'ubuntu-20.04' + archive-artifacts: '/tmp/vpp-failed-unittests/*/*' stream: - master: branch: 'master' + branch-refspec: '' repo-stream-part: 'master' - - '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' - '2009': branch: 'stable/2009' + branch-refspec: '' + make-test-os: 'ubuntu-18.04' repo-stream-part: 'stable.2009' - os: 'ubuntu1804' - + - '2101': + branch: 'stable/2101' + branch-refspec: '' + make-test-os: 'ubuntu-18.04' + repo-stream-part: 'stable.2101' + os: + - centos8: + repo-os-part: 'centos8' + - ubuntu1804: + repo-os-part: 'ubuntu-arm.bionic.main' + - ubuntu2004: + repo-os-part: 'ubuntu.focal.main' + executor-arch: 'aarch64' + exclude: + # OS introduced after 2009 + - stream: '2009' + os: 'centos8' + - stream: '2009' + os: 'ubuntu2004' + # OS introduced after 2101 + - stream: '2101' + os: 'centos8' + - stream: '2101' + os: 'ubuntu2004' +# [end] VPP-AARCH64 PROJECT + +# VPP-CSIT-VERIFY PROJECT - project: - name: vpp-perpatch + name: vpp-csit-verify jobs: - - 'vpp-csit-verify-device-{stream}-{device-node-arch}': + - 'vpp-csit-verify-device-perpatch': + make-parallel-jobs: '32' + exclude: + - device-node-arch: '1n-tx2' + - 'vpp-csit-verify-device-periodic': make-parallel-jobs: '32' + periodicity: 'H * * * *' + skip-vote: 'true' + comment-trigger-value: 'devicetest-periodic' + exclude: + - stream: '2009' + - stream: '2101' + - device-node-arch: '1n-skx' - 'vpp-csit-verify-perf-{stream}-{node-arch}' project: 'vpp' os: ubuntu1804 device-executor: 'vpp-csit-device' executor: '{os}-us' skip-vote: 'false' - trigger: 'gerrit-trigger-vpp-csit-devicetest-full' stream: - master: branch: 'master' + branch-refspec: '' repo-stream-part: 'master' - - '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' - '2009': branch: 'stable/2009' + branch-refspec: '' repo-stream-part: 'stable.2009' + - '2101': + branch: 'stable/2101' + branch-refspec: '' + repo-stream-part: 'stable.2101' 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 + - 2n-zn2 - 3n-skx - 3n-hsw - 2n-dnv @@ -121,53 +279,39 @@ - 3n-tsh: executor: 'ubuntu1804arm-s' make-parallel-jobs: '16' + - 2n-tx2: + executor: 'ubuntu1804arm-s' + make-parallel-jobs: '16' -- project: - name: vpp-arm - jobs: - - 'vpp-arm-verify-{stream}-{os}' - - 'vpp-arm-merge-{stream}-{os}' - project: 'vpp' - executor-arch: 'aarch64' - stream: - - master: - branch: 'master' - repo-stream-part: 'master' - - '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' - - '2009': - branch: 'stable/2009' - repo-stream-part: 'stable.2009' - os: - - ubuntu1804: - repo-os-part: 'ubuntu-arm.bionic.main' - make-parallel-jobs: '16' +# [end] VPP-CSIT-VERIFY PROJECT -# TODO: Merge with (e.g.) vpp-perpatch or similar, -# when number of stable branches supported matches. +# VPP-CSIT-API-CRC PROJECT +# +# Only master and LTS branches are supported. +# - project: - name: vpp-api-crc + name: vpp-csit-api-crc jobs: - 'vpp-csit-verify-api-crc-{stream}' 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: branch: 'master' + branch-refspec: '' + - '2009': + branch: 'stable/2009' + branch-refspec: '' + repo-stream-part: 'stable.2009' + - '2101': + branch: 'stable/2101' + branch-refspec: '' + repo-stream-part: 'stable.2101' os: ubuntu1804 +# [end] VPP-CSIT-API-CRC PROJECT +# LF RELENG VPP PROJECTS - project: name: vpp-info project-name: vpp @@ -182,160 +326,21 @@ views: - project-view project-name: vpp +# [end] LF RELENG VPP PROJECTS +# [end] PROJECT DEFINITIONS -- 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. - - 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 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-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}' - - 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}' - - 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}' + name: 'vpp-checkstyle-verify-{stream}-{os}-{executor-arch}' project-type: freestyle node: 'builder-{os}-prod-{executor-arch}' concurrent: true - archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core' build-discarder: daysToKeep: '{build-days-to-keep}' @@ -343,16 +348,20 @@ artifactDaysToKeep: '{build-artifact-days-to-keep}' artifactNumToKeep: '{build-artifact-num-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}' + - project-parameter: + project: '{project}' - repo-name-parameter: repo-name: '{repo-stream-part}.ubuntu.bionic.main' - - gerrit-refspec-parameter + - workspace-archive-artifacts-parameter: + artifacts: '{archive-artifacts}' scm: - gerrit-trigger-scm: @@ -385,7 +394,8 @@ 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: @@ -420,6 +430,9 @@ notbuilt: false builders: + - shell: + !include-raw-escape: + - ../scripts/setup_executor_env.sh - shell: !include-raw-escape: - ../scripts/vpp/checkstyle.sh @@ -434,16 +447,17 @@ - ../scripts/vpp/commitmsg.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: 'builder-{os}-prod-{executor-arch}' concurrent: true - archive-artifacts: '/tmp/vpp-failed-unittests/*/* **/core' build-discarder: daysToKeep: '{build-days-to-keep}' @@ -451,24 +465,26 @@ artifactDaysToKeep: '{build-artifact-days-to-keep}' artifactNumToKeep: '{build-artifact-num-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}' + - project-parameter: + project: '{project}' - 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 + - workspace-archive-artifacts-parameter: + artifacts: '{archive-artifacts}' scm: - gerrit-trigger-scm: @@ -481,12 +497,14 @@ 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 @@ -498,41 +516,43 @@ - ../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 + numToKeep: '{build-num-to-keep}' artifactDaysToKeep: '{build-artifact-days-to-keep}' artifactNumToKeep: '{build-artifact-num-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}' + os: 'ubuntu1804' + - project-parameter: + project: '{project}' - 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 + - workspace-archive-artifacts-parameter: + artifacts: '{archive-artifacts}' scm: - gerrit-trigger-scm: @@ -542,14 +562,19 @@ wrappers: - fdio-infra-wrappers: - build-timeout: 120 + build-timeout: '{build-timeout}' triggers: - - gerrit-trigger-checkstyle: + - timed: '{periodicity}' + - gerrit-trigger-manually-triggered: + comment-trigger-value: '{comment-trigger-value}' 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 @@ -558,57 +583,71 @@ - ../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' + - fdio-infra-publish +# [end] VPP-DEBUG-VERIFY-PERIODIC JOB TEMPLATE +# VPP-MERGE JOB TEMPLATE - job-template: - name: 'vpp-verify-{stream}-debug' + name: 'vpp-merge-{stream}-{os}-{executor-arch}' project-type: freestyle - node: 'builder-{executor-os}-prod-{executor-arch}' - 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}' + # 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' + os: '{os}' + - project-parameter: + project: '{project}' - repo-name-parameter: - repo-name: '{repo-stream-part}.ubuntu.bionic.main' + repo-name: '{repo-stream-part}.{repo-os-part}' - stream-parameter: stream: '{stream}' - - make-parallel-jobs-parameter: - make-parallel-jobs: '{make-parallel-jobs}' - - gerrit-refspec-parameter + - workspace-archive-artifacts-parameter: + artifacts: '{archive-artifacts}' 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-nonvoting: + - 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 @@ -617,17 +656,26 @@ - ../scripts/setup_vpp_dpdk_dev_env.sh - shell: !include-raw-escape: - - ../scripts/vpp/debug-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' + - 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}' @@ -635,56 +683,44 @@ artifactDaysToKeep: '{build-artifact-days-to-keep}' artifactNumToKeep: '{build-artifact-num-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' - - stream-parameter: - stream: '{stream}' + - project-parameter: + project: '{project}' - 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 + - stream-parameter: + stream: '{stream}' + - workspace-archive-artifacts-parameter: + artifacts: '{archive-artifacts}' 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 @@ -693,23 +729,29 @@ - ../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' + - fdio-infra-publish +# [end] VPP-GCC-VERIFY JOB TEMPLATE +# VPP-CSIT-VERIFY-DEVICE-PERIODIC JOB TEMPLATE - job-template: - name: 'vpp-beta-merge-{stream}-{os}' + name: 'vpp-csit-verify-device-{stream}-{device-node-arch}' + id: 'vpp-csit-verify-device-periodic' + description: | + project-type: freestyle - node: 'builder-{os}-prod-{executor-arch}' + node: '{device-executor}' + concurrent: true + archive-artifacts: '**/csit_current/**/*.*' + latest-only: false build-discarder: daysToKeep: '{build-days-to-keep}' @@ -717,56 +759,49 @@ artifactDaysToKeep: '{build-artifact-days-to-keep}' artifactNumToKeep: '{build-artifact-num-to-keep}' + # Please keep parameters in alphabetical order parameters: - - project-parameter: - project: '{project}' + - archive-artifacts-parameter: + artifacts: '{archive-artifacts}' + - 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}' - - maven-project-parameter: - maven: 'mvn33-new' - - maven-exec: - maven-version: 'mvn33-new' + - project-parameter: + project: '{project}' + - repo-name-parameter: + repo-name: '{repo-stream-part}.ubuntu.bionic.main' - 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: '' + refspec: '$GERRIT_REFSPEC' choosing-strategy: 'default' wrappers: - fdio-infra-wrappers: - build-timeout: '{build-timeout}' + build-timeout: '90' 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 @@ -775,20 +810,20 @@ - ../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/csit-device.sh publishers: + - robot-report: + output-path: 'archives' + - fdio-infra-shiplogs: maven-version: 'mvn36' +# [end] VPP-CSIT-VERIFY-DEVICE-PERIODIC JOB TEMPLATE +# VPP-CSIT-VERIFY-DEVICE-PERPATCH JOB TEMPLATE - job-template: name: 'vpp-csit-verify-device-{stream}-{device-node-arch}' + id: 'vpp-csit-verify-device-perpatch' description: |