From eb72439885a4614c83213dc4b15fc7d629d29aba Mon Sep 17 00:00:00 2001 From: Cédric Ollivier Date: Mon, 3 Aug 2020 11:28:11 +0200 Subject: Remove Apex jobs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Apex dropped a few years ago and false dependencies between Apex and Functest jobs forbid Functest maintainance. Change-Id: Ic63995325a281e0308abc28e9a89e8054c123391 Signed-off-by: Cédric Ollivier --- jjb/3rd_party_ci/create-apex-vms.sh | 12 - jjb/3rd_party_ci/detect-snapshot.sh | 30 - jjb/3rd_party_ci/download-netvirt-artifact.sh | 38 - jjb/3rd_party_ci/install-netvirt.sh | 32 - jjb/3rd_party_ci/odl-netvirt.yaml | 287 ---- jjb/3rd_party_ci/postprocess-netvirt.sh | 11 - jjb/apex/apex-build.sh | 98 -- jjb/apex/apex-deploy.sh | 213 --- jjb/apex/apex-download-artifact.sh | 89 -- jjb/apex/apex-fetch-logs.sh | 25 - jjb/apex/apex-fetch-snap-info.sh | 46 - jjb/apex/apex-functest-scenario.sh | 18 - jjb/apex/apex-iso-verify.sh | 75 - jjb/apex/apex-jjb-renderer.py | 51 - jjb/apex/apex-project-jobs.yaml | 146 -- jjb/apex/apex-rtd-jobs.yaml | 20 - jjb/apex/apex-snapshot-create.sh | 105 -- jjb/apex/apex-snapshot-deploy.sh | 184 --- jjb/apex/apex-unit-test.sh | 33 - jjb/apex/apex-upload-artifact.sh | 163 -- jjb/apex/apex-verify-jobs.yaml | 409 ----- jjb/apex/apex.yaml | 2008 ------------------------- jjb/apex/apex.yaml.j2 | 1361 ----------------- jjb/apex/scenarios.yaml.hidden | 68 - jjb/apex/update-build-result.groovy | 5 - 25 files changed, 5527 deletions(-) delete mode 100755 jjb/3rd_party_ci/create-apex-vms.sh delete mode 100755 jjb/3rd_party_ci/detect-snapshot.sh delete mode 100755 jjb/3rd_party_ci/download-netvirt-artifact.sh delete mode 100755 jjb/3rd_party_ci/install-netvirt.sh delete mode 100644 jjb/3rd_party_ci/odl-netvirt.yaml delete mode 100755 jjb/3rd_party_ci/postprocess-netvirt.sh delete mode 100755 jjb/apex/apex-build.sh delete mode 100755 jjb/apex/apex-deploy.sh delete mode 100755 jjb/apex/apex-download-artifact.sh delete mode 100755 jjb/apex/apex-fetch-logs.sh delete mode 100755 jjb/apex/apex-fetch-snap-info.sh delete mode 100644 jjb/apex/apex-functest-scenario.sh delete mode 100755 jjb/apex/apex-iso-verify.sh delete mode 100644 jjb/apex/apex-jjb-renderer.py delete mode 100644 jjb/apex/apex-project-jobs.yaml delete mode 100644 jjb/apex/apex-rtd-jobs.yaml delete mode 100644 jjb/apex/apex-snapshot-create.sh delete mode 100644 jjb/apex/apex-snapshot-deploy.sh delete mode 100755 jjb/apex/apex-unit-test.sh delete mode 100755 jjb/apex/apex-upload-artifact.sh delete mode 100644 jjb/apex/apex-verify-jobs.yaml delete mode 100644 jjb/apex/apex.yaml delete mode 100644 jjb/apex/apex.yaml.j2 delete mode 100644 jjb/apex/scenarios.yaml.hidden delete mode 100644 jjb/apex/update-build-result.groovy diff --git a/jjb/3rd_party_ci/create-apex-vms.sh b/jjb/3rd_party_ci/create-apex-vms.sh deleted file mode 100755 index 0744ac89a..000000000 --- a/jjb/3rd_party_ci/create-apex-vms.sh +++ /dev/null @@ -1,12 +0,0 @@ -#!/bin/bash -set -o errexit -set -o nounset -set -o pipefail - -# clone opnfv sdnvpn repo -git clone https://gerrit.opnfv.org/gerrit/p/sdnvpn.git $WORKSPACE/sdnvpn - -. $WORKSPACE/sdnvpn/odl-pipeline/odl-pipeline-common.sh -pushd $LIB -./test_environment.sh --env-number $APEX_ENV_NUMBER --cloner-info $CLONER_INFO --snapshot-disks $SNAPSHOT_DISKS --vjump-hosts $VIRTUAL_JUMPHOSTS -popd diff --git a/jjb/3rd_party_ci/detect-snapshot.sh b/jjb/3rd_party_ci/detect-snapshot.sh deleted file mode 100755 index 77788aa2c..000000000 --- a/jjb/3rd_party_ci/detect-snapshot.sh +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/bash -set -o errexit -set -o nounset -set -o pipefail - -echo "Detecting requested OpenStack branch and topology type in gerrit comment" -parsed_comment=$(echo $GERRIT_EVENT_COMMENT_TEXT | sed -n 's/^.*check-opnfv\s*//p') -parsed_comment=$(echo $parsed_comment | sed -n 's/\s*$//p') -if [ ! -z "$parsed_comment" ]; then - if echo $parsed_comment | grep -E '^[a-z]+-(no)?ha'; then - os_version=${parsed_comment%%"-"*} - topo=${parsed_comment#*"-"} - echo "OS version detected in gerrit comment: ${os_version}" - echo "Topology type detected in gerrit comment: ${topo}" - else - echo "Invalid format given for scenario in gerrit comment: ${parsed_comment}...aborting" - exit 1 - fi -else - echo "No scenario given in gerrit comment, will use default (master OpenStack, noha)" - os_version='master' - topo='noha' -fi - -echo "Writing variables to file" -cat > detected_snapshot << EOI -OS_VERSION=$os_version -TOPOLOGY=$topo -SNAP_CACHE=$HOME/snap_cache/$os_version/$topo -EOI diff --git a/jjb/3rd_party_ci/download-netvirt-artifact.sh b/jjb/3rd_party_ci/download-netvirt-artifact.sh deleted file mode 100755 index ac7f76ccd..000000000 --- a/jjb/3rd_party_ci/download-netvirt-artifact.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/bin/bash -set -o errexit -set -o nounset -set -o pipefail - -echo "Attempting to fetch the artifact location from ODL Jenkins" -if [ "$ODL_BRANCH" != 'master' ]; then - DIST=$(echo ${ODL_BRANCH} | sed -rn 's#([a-zA-Z]+)/([a-zA-Z]+)#\2#p') - ODL_BRANCH=$(echo ${ODL_BRANCH} | sed -rn 's#([a-zA-Z]+)/([a-zA-Z]+)#\1%2F\2#p') -else - DIST='neon' -fi - -echo "ODL Distribution is ${DIST}" -ODL_ZIP="karaf-SNAPSHOT.zip" -CHANGE_DETAILS_URL="https://git.opendaylight.org/gerrit/changes/${GERRIT_PROJECT}~${ODL_BRANCH}~${GERRIT_CHANGE_ID}/detail" -# due to limitation with the Jenkins Gerrit Trigger, we need to use Gerrit REST API to get the change details -ODL_BUILD_JOB_NUM=$(curl --fail ${CHANGE_DETAILS_URL} | grep -Eo "${GERRIT_PROJECT}-distribution-check-${DIST}/[0-9]+" | tail -1 | grep -Eo [0-9]+) -DISTRO_CHECK_CONSOLE_LOG="https://logs.opendaylight.org/releng/vex-yul-odl-jenkins-1/${GERRIT_PROJECT}-distribution-check-${DIST}/${ODL_BUILD_JOB_NUM}/console.log.gz" -NETVIRT_ARTIFACT_URL=$(curl --fail --compressed ${DISTRO_CHECK_CONSOLE_LOG} | grep 'BUNDLE_URL' | cut -d = -f 2) - -echo -e "URL to artifact is\n\t$NETVIRT_ARTIFACT_URL" - -echo "Downloading the artifact. This could take time..." -if ! wget -q -O $ODL_ZIP $NETVIRT_ARTIFACT_URL; then - echo "The artifact does not exist! Probably removed due to ODL Jenkins artifact retention policy." - echo "Use 'recheck' on the gerrit to get artifact rebuilt." - exit 1 -fi - -#TODO(trozet) remove this once odl-pipeline accepts zip files -echo "Converting artifact zip to tar.gz" -UNZIPPED_DIR=`dirname $(unzip -qql ${ODL_ZIP} | head -n1 | tr -s ' ' | cut -d' ' -f5-)` -unzip ${ODL_ZIP} -tar czf /tmp/${NETVIRT_ARTIFACT} ${UNZIPPED_DIR} - -echo "Download complete" -ls -al /tmp/${NETVIRT_ARTIFACT} diff --git a/jjb/3rd_party_ci/install-netvirt.sh b/jjb/3rd_party_ci/install-netvirt.sh deleted file mode 100755 index 232d60e5c..000000000 --- a/jjb/3rd_party_ci/install-netvirt.sh +++ /dev/null @@ -1,32 +0,0 @@ -#!/bin/bash -set -o errexit -set -o nounset -set -o pipefail - -SNAP_CACHE=$HOME/snap_cache/$OS_VERSION/$TOPOLOGY -# clone opnfv sdnvpn repo -git clone https://gerrit.opnfv.org/gerrit/p/sdnvpn.git $WORKSPACE/sdnvpn - -if [ ! -f "/tmp/${NETVIRT_ARTIFACT}" ]; then - echo "ERROR: /tmp/${NETVIRT_ARTIFACT} specified as NetVirt Artifact, but file does not exist" - exit 1 -fi - -if [ ! -f "${SNAP_CACHE}/node.yaml" ]; then - echo "ERROR: node.yaml pod config missing in ${SNAP_CACHE}" - exit 1 -fi - -if [ ! -f "${SNAP_CACHE}/id_rsa" ]; then - echo "ERROR: id_rsa ssh creds missing in ${SNAP_CACHE}" - exit 1 -fi - -# TODO (trozet) snapshot should have already been unpacked into cache folder -# but we really should check the cache here, and not use a single cache folder -# for when we support multiple jobs on a single slave -pushd sdnvpn/odl-pipeline/lib > /dev/null -git fetch https://gerrit.opnfv.org/gerrit/sdnvpn refs/changes/17/59017/5 && git checkout FETCH_HEAD -./odl_reinstaller.sh --pod-config ${SNAP_CACHE}/node.yaml \ - --odl-artifact /tmp/${NETVIRT_ARTIFACT} --ssh-key-file ${SNAP_CACHE}/id_rsa -popd > /dev/null diff --git a/jjb/3rd_party_ci/odl-netvirt.yaml b/jjb/3rd_party_ci/odl-netvirt.yaml deleted file mode 100644 index 15d28486f..000000000 --- a/jjb/3rd_party_ci/odl-netvirt.yaml +++ /dev/null @@ -1,287 +0,0 @@ ---- -- project: - name: 'netvirt' - - project: 'netvirt' - - installer: 'netvirt' - ##################################### - # branch definitions - ##################################### - stream: - - master: - branch: '{stream}' - gs-pathname: '' - disabled: false - - oxygen: - branch: 'stable/oxygen' - gs-pathname: '' - disabled: false - ##################################### - # patch verification phases - ##################################### - phase: - - 'create-apex-vms': - slave-label: 'apex-virtual-master' - - 'install-netvirt': - slave-label: 'apex-virtual-master' - - 'postprocess': - slave-label: 'apex-virtual-master' - ##################################### - # jobs - ##################################### - jobs: - - 'odl-netvirt-verify-virtual-{stream}' - - 'odl-netvirt-verify-virtual-{phase}-{stream}' - -##################################### -# job templates -##################################### -- job-template: - name: 'odl-netvirt-verify-virtual-{stream}' - - project-type: multijob - - disabled: '{obj:disabled}' - - concurrent: true - - properties: - - logrotate-default - - throttle: - enabled: true - max-total: 5 - max-per-node: 1 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'apex-verify.*' - - 'apex-.*-promote.*' - - 'apex-virtual.*' - - 'odl-netvirt-verify-virtual-create-apex-vms-.*' - - 'odl-netvirt-verify-virtual-install-netvirt-.*' - - 'functest-netvirt-virtual-suite-.*' - - 'odl-netvirt-verify-virtual-postprocess-.*' - blocking-level: 'NODE' - scm: - - git: - url: https://gerrit.opnfv.org/gerrit/apex - branches: - - 'origin/master' - timeout: 15 - wipe-workspace: true - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - string: - name: NETVIRT_ARTIFACT - default: distribution-karaf.tar.gz - - 'apex-virtual-master-defaults' - - triggers: - - gerrit: - server-name: 'git.opendaylight.org' - trigger-on: - # yamllint disable rule:line-length - # - comment-added-contains-event: - # comment-contains-value: 'https://jenkins.opendaylight.org/releng/job/netvirt-patch-test-current-carbon/.*?/ : SUCCESS' - # - comment-added-contains-event: - # comment-contains-value: 'https://jenkins.opendaylight.org/releng/job/netvirt-patch-test-current-carbon/.*?/ : UNSTABLE' - # yamllint enable rule:line-length - - comment-added-contains-event: - comment-contains-value: 'check-opnfv' - projects: - - project-compare-type: 'ANT' - project-pattern: '*' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - readable-message: true - - builders: - - description-setter: - description: "Built on $NODE_NAME" - - detect-opnfv-snapshot - - inject: - properties-file: detected_snapshot - - multijob: - name: create-apex-vms - condition: SUCCESSFUL - projects: - - name: 'odl-netvirt-verify-virtual-create-apex-vms-{stream}' - current-parameters: false - predefined-parameters: | - BRANCH=$BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_ID=$GERRIT_CHANGE_ID - GERRIT_PATCHSET_NUMBER=$GERRIT_PATCHSET_NUMBER - GERRIT_PATCHSET_REVISION=$GERRIT_PATCHSET_REVISION - NETVIRT_ARTIFACT=$NETVIRT_ARTIFACT - APEX_ENV_NUMBER=$APEX_ENV_NUMBER - GERRIT_EVENT_COMMENT_TEXT=$GERRIT_EVENT_COMMENT_TEXT - TOPOLOGY=$TOPOLOGY - OS_VERSION=$OS_VERSION - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - - multijob: - name: install-netvirt - condition: SUCCESSFUL - projects: - - name: 'odl-netvirt-verify-virtual-install-netvirt-{stream}' - current-parameters: false - predefined-parameters: | - ODL_BRANCH=$BRANCH - BRANCH=$BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_ID=$GERRIT_CHANGE_ID - GERRIT_PATCHSET_NUMBER=$GERRIT_PATCHSET_NUMBER - GERRIT_PATCHSET_REVISION=$GERRIT_PATCHSET_REVISION - GERRIT_PROJECT=$GERRIT_PROJECT - NETVIRT_ARTIFACT=$NETVIRT_ARTIFACT - TOPOLOGY=$TOPOLOGY - OS_VERSION=$OS_VERSION - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - - multijob: - name: csit - condition: ALWAYS - projects: - - name: cperf-apex-csit-master - predefined-parameters: | - ODL_BRANCH=$BRANCH - RC_FILE_PATH=$SNAP_CACHE/overcloudrc - NODE_FILE_PATH=$SNAP_CACHE/node.yaml - SSH_KEY_PATH=$SNAP_CACHE/id_rsa - ODL_CONTAINERIZED=false - OS_VERSION=$OS_VERSION - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - - multijob: - name: csit-collect-logs - condition: ALWAYS - projects: - - name: cperf-upload-logs-csit - predefined-parameters: | - ODL_BRANCH=$BRANCH - OS_VERSION=$OS_VERSION - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - - multijob: - name: apex-fetch-logs - condition: ALWAYS - projects: - - name: 'apex-fetch-logs-{stream}' - current-parameters: false - node-parameters: true - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - multijob: - name: postprocess - condition: ALWAYS - projects: - - name: 'odl-netvirt-verify-virtual-postprocess-{stream}' - current-parameters: false - predefined-parameters: | - BRANCH=$BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_ID=$GERRIT_CHANGE_ID - GERRIT_PATCHSET_NUMBER=$GERRIT_PATCHSET_NUMBER - GERRIT_PATCHSET_REVISION=$GERRIT_PATCHSET_REVISION - NETVIRT_ARTIFACT=$NETVIRT_ARTIFACT - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - -- job-template: - name: 'odl-netvirt-verify-virtual-{phase}-{stream}' - - disabled: '{obj:disabled}' - - concurrent: true - - properties: - - logrotate-default - - throttle: - enabled: true - max-total: 5 - max-per-node: 1 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'odl-netvirt-verify-virtual-create-apex-vms-.*' - - 'odl-netvirt-verify-virtual-install-netvirt-.*' - - 'functest-netvirt-virtual-suite-.*' - - 'odl-netvirt-verify-virtual-postprocess-.*' - blocking-level: 'NODE' - - wrappers: - - ssh-agent-wrapper - - timeout: - timeout: 360 - fail: true - - scm: - - git: - url: https://gerrit.opnfv.org/gerrit/apex - branches: - - 'origin/master' - timeout: 15 - wipe-workspace: true - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - '{slave-label}-defaults' - - '{installer}-defaults' - - string: - name: DEPLOY_SCENARIO - default: 'os-odl-nofeature-noha' - description: 'Scenario to deploy and test' - - string: - name: GS_URL - default: artifacts.opnfv.org/apex - description: "URL to Google Storage with snapshot artifacts." - - builders: - - description-setter: - description: "Built on $NODE_NAME" - - '{project}-verify-{phase}-builder' -##################################### -# builder macros -##################################### -- builder: - name: 'netvirt-verify-create-apex-vms-builder' - builders: - - shell: - !include-raw: ../apex/apex-snapshot-deploy.sh -- builder: - name: 'netvirt-verify-install-netvirt-builder' - builders: - - shell: - !include-raw: ./download-netvirt-artifact.sh - - shell: - !include-raw: ./install-netvirt.sh -- builder: - name: 'netvirt-verify-postprocess-builder' - builders: - - shell: - !include-raw: ./postprocess-netvirt.sh - -- builder: - name: 'detect-opnfv-snapshot' - builders: - - shell: - !include-raw: ./detect-snapshot.sh diff --git a/jjb/3rd_party_ci/postprocess-netvirt.sh b/jjb/3rd_party_ci/postprocess-netvirt.sh deleted file mode 100755 index 796514259..000000000 --- a/jjb/3rd_party_ci/postprocess-netvirt.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/bash -set -o errexit -set -o nounset -set -o pipefail - -# clone opnfv sdnvpn repo -git clone https://gerrit.opnfv.org/gerrit/p/sdnvpn.git $WORKSPACE/sdnvpn -. $WORKSPACE/sdnvpn/odl-pipeline/odl-pipeline-common.sh -pushd $LIB -./post_process.sh -popd diff --git a/jjb/apex/apex-build.sh b/jjb/apex/apex-build.sh deleted file mode 100755 index 618d18110..000000000 --- a/jjb/apex/apex-build.sh +++ /dev/null @@ -1,98 +0,0 @@ -#!/bin/bash -set -o errexit -set -o nounset -set -o pipefail -# log info to console -echo "Starting the build of Apex using OpenStack Master packages. This will take some time..." -echo "---------------------------------------------------------------------------------------" -echo -# create the cache directory if it doesn't exist -[[ -d $CACHE_DIRECTORY ]] || mkdir -p $CACHE_DIRECTORY -# set OPNFV_ARTIFACT_VERSION -if echo $ARTIFACT_VERSION | grep "dev" 1> /dev/null; then - GERRIT_PATCHSET_NUMBER=$(echo $GERRIT_REFSPEC | grep -Eo '[0-9]+$') - export OPNFV_ARTIFACT_VERSION="dev${GERRIT_CHANGE_NUMBER}_${GERRIT_PATCHSET_NUMBER}" - if [[ "$BRANCH" != 'stable/fraser' ]]; then - # build rpm - export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY --rpms" - else - export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY" - fi -elif echo $BUILD_TAG | grep "csit" 1> /dev/null; then - export OPNFV_ARTIFACT_VERSION=csit${BUILD_NUMBER} - export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY" -elif [ "$ARTIFACT_VERSION" == "daily" ]; then - export OPNFV_ARTIFACT_VERSION=$(date -u +"%Y-%m-%d") - if [[ "$BRANCH" != 'stable/fraser' ]]; then - export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY --rpms" - else - export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY --iso" - fi -else - export OPNFV_ARTIFACT_VERSION=${ARTIFACT_VERSION} - if [[ "$BRANCH" != 'stable/fraser' ]]; then - export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY --rpms" - else - export BUILD_ARGS="-r $OPNFV_ARTIFACT_VERSION -c $CACHE_DIRECTORY --iso" - fi -fi - -# Temporary hack until we fix apex build script -BUILD_DIRECTORY=${WORKSPACE}/build - -# start the build -pushd ${BUILD_DIRECTORY} -make clean -popd -export PYTHONPATH=${WORKSPACE} -python3 apex/build.py $BUILD_ARGS -RPM_VERSION=$(grep Version: $WORKSPACE/build/rpm_specs/opnfv-apex.spec | awk '{ print $2 }')-$(echo $OPNFV_ARTIFACT_VERSION | tr -d '_-') -# list the contents of BUILD_OUTPUT directory -echo "Build Directory is ${BUILD_DIRECTORY}/../.build" -echo "Build Directory Contents:" -echo "-------------------------" -ls -al ${BUILD_DIRECTORY}/../.build - -# list the contents of CACHE directory -echo "Cache Directory is ${CACHE_DIRECTORY}" -echo "Cache Directory Contents:" -echo "-------------------------" -ls -al $CACHE_DIRECTORY - -if [[ "$BUILD_ARGS" =~ '--iso' && "$BRANCH" == 'stable/fraser' ]]; then - mkdir -p /tmp/apex-iso/ - rm -f /tmp/apex-iso/*.iso - cp -f $BUILD_DIRECTORY/../.build/release/OPNFV-CentOS-7-x86_64-$OPNFV_ARTIFACT_VERSION.iso /tmp/apex-iso/ -fi - -if ! echo $ARTIFACT_VERSION | grep "dev" 1> /dev/null; then - echo "Writing opnfv.properties file" - if [ "$BRANCH" == 'stable/fraser' ]; then - # save information regarding artifact into file - ( - echo "OPNFV_ARTIFACT_VERSION=$OPNFV_ARTIFACT_VERSION" - echo "OPNFV_GIT_URL=$(git config --get remote.origin.url)" - echo "OPNFV_GIT_SHA1=$(git rev-parse HEAD)" - echo "OPNFV_ARTIFACT_URL=$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso" - echo "OPNFV_ARTIFACT_SHA512SUM=$(sha512sum $BUILD_DIRECTORY/../.build/release/OPNFV-CentOS-7-x86_64-$OPNFV_ARTIFACT_VERSION.iso | cut -d' ' -f1)" - echo "OPNFV_SRPM_URL=$GS_URL/opnfv-apex-$RPM_VERSION.src.rpm" - echo "OPNFV_RPM_URL=$GS_URL/opnfv-apex-$RPM_VERSION.noarch.rpm" - echo "OPNFV_RPM_SHA512SUM=$(sha512sum $BUILD_DIRECTORY/../.build/noarch/opnfv-apex-$RPM_VERSION.noarch.rpm | cut -d' ' -f1)" - echo "OPNFV_BUILD_URL=$BUILD_URL" - ) > $WORKSPACE/opnfv.properties - else - # save information regarding artifact into file - # we only generate the python package for master - ( - echo "OPNFV_ARTIFACT_VERSION=$OPNFV_ARTIFACT_VERSION" - echo "OPNFV_GIT_URL=$(git config --get remote.origin.url)" - echo "OPNFV_GIT_SHA1=$(git rev-parse HEAD)" - echo "OPNFV_SRPM_URL=$GS_URL/python34-opnfv-apex-$RPM_VERSION.src.rpm" - echo "OPNFV_RPM_URL=$GS_URL/python34-opnfv-apex-$RPM_VERSION.noarch.rpm" - echo "OPNFV_RPM_SHA512SUM=$(sha512sum $BUILD_DIRECTORY/../.build/noarch/python34-opnfv-apex-$RPM_VERSION.noarch.rpm | cut -d' ' -f1)" - echo "OPNFV_BUILD_URL=$BUILD_URL" - ) > $WORKSPACE/opnfv.properties - fi -fi -echo "--------------------------------------------------------" -echo "Done!" diff --git a/jjb/apex/apex-deploy.sh b/jjb/apex/apex-deploy.sh deleted file mode 100755 index 09d6ca630..000000000 --- a/jjb/apex/apex-deploy.sh +++ /dev/null @@ -1,213 +0,0 @@ -#!/bin/bash -set -o errexit -set -o nounset -set -o pipefail - -IPV6_FLAG=False -ALLINONE_FLAG=False -CSIT_ENV_FLAG=False -FUNCTEST_ENV_FLAG=False - -# log info to console -echo "Starting the Apex deployment." -echo "--------------------------------------------------------" -echo - -if [ -z ${DEPLOY_SCENARIO+x} ]; then - echo "Deploy scenario not set!" - exit 1 -else - echo "Deploy scenario: ${DEPLOY_SCENARIO}" -fi - -# Dev or RPM/ISO build -if [[ "$ARTIFACT_VERSION" =~ dev ]]; then - # Settings for deploying from git workspace - DEPLOY_SETTINGS_DIR="${WORKSPACE}/config/deploy" - NETWORK_SETTINGS_DIR="${WORKSPACE}/config/network" - CLEAN_CMD="opnfv-clean" - # if we are using master, then we are downloading/caching upstream images - # we want to use that built in mechanism to avoid re-downloading every job - # so we use a dedicated folder to hold the upstream cache - UPSTREAM_CACHE=$HOME/upstream_cache - if [[ "$BRANCH" != 'stable/fraser' ]]; then - mkdir -p ${UPSTREAM_CACHE} - RESOURCES=$UPSTREAM_CACHE - else - RESOURCES="${WORKSPACE}/.build/" - fi - CONFIG="${WORKSPACE}/build" - BASE=$CONFIG - IMAGES=$RESOURCES - LIB="${WORKSPACE}/lib" - DEPLOY_CMD="opnfv-deploy --image-dir ${RESOURCES}" - # Ensure artifacts were downloaded and extracted correctly - # TODO(trozet) add verification here - - # Install dev build - sudo rm -rf /tmp/.build - mv -f .build /tmp/ - sudo pip3 install --upgrade --force-reinstall . - mv -f /tmp/.build ${WORKSPACE}/ -else - DEPLOY_SETTINGS_DIR="/etc/opnfv-apex/" - NETWORK_SETTINGS_DIR="/etc/opnfv-apex/" - CLEAN_CMD="opnfv-clean" - # set to use different directory here because upon RPM removal this - # directory will be wiped in daily - UPSTREAM_CACHE=$HOME/upstream_cache - if [[ "$BRANCH" != 'stable/fraser' ]]; then - mkdir -p ${UPSTREAM_CACHE} - RESOURCES=$UPSTREAM_CACHE - else - RESOURCES="/var/opt/opnfv/images" - fi - DEPLOY_CMD="opnfv-deploy --image-dir ${RESOURCES}" - CONFIG="/var/opt/opnfv" - BASE=$CONFIG - IMAGES=$RESOURCES - LIB="/var/opt/opnfv/lib" - sudo mkdir -p /var/log/apex - sudo chmod 777 /var/log/apex - cd /var/log/apex -fi - -# Install Dependencies -# Make sure python34 dependencies are installed -dependencies="epel-release python34 python34-devel libvirt-devel python34-pip \ -ansible python34-PyYAML python34-jinja2 python34-setuptools python-tox ansible" - -for dep_pkg in $dependencies; do - if ! rpm -q ${dep_pkg} > /dev/null; then - if ! sudo yum install -y ${dep_pkg}; then - echo "Failed to install ${dep_pkg}" - exit 1 - fi - fi -done - -if [[ "$JOB_NAME" =~ "virtual" ]]; then - # Make sure ipxe-roms-qemu package is updated to latest. - # This package is needed for multi virtio nic PXE boot in virtual environment. - sudo yum update -y ipxe-roms-qemu -fi - -if [ "$OPNFV_CLEAN" == 'yes' ]; then - if sudo test -e '/root/inventory/pod_settings.yaml'; then - clean_opts='-i /root/inventory/pod_settings.yaml' - else - clean_opts='' - fi - - sudo ${CLEAN_CMD} ${clean_opts} -fi - -# These are add-ons to regular scenarios where you can do like -# os-nosdn-nofeature-noha-ipv6, or os-nosdn-nofeature-noha-allinone -if echo ${DEPLOY_SCENARIO} | grep ipv6; then - IPV6_FLAG=True - DEPLOY_SCENARIO=$(echo ${DEPLOY_SCENARIO} | sed 's/-ipv6//') - echo "INFO: IPV6 Enabled" -fi - -if echo ${DEPLOY_SCENARIO} | grep allinone; then - ALLINONE_FLAG=True - DEPLOY_SCENARIO=$(echo ${DEPLOY_SCENARIO} | sed 's/-allinone//') - echo "INFO: All in one deployment detected" -fi - -if echo ${DEPLOY_SCENARIO} | grep csit; then - CSIT_ENV_FLAG=True - DEPLOY_SCENARIO=$(echo ${DEPLOY_SCENARIO} | sed 's/-csit//') - echo "INFO: CSIT env requested in deploy scenario" -elif echo ${DEPLOY_SCENARIO} | grep functest; then - FUNCTEST_ENV_FLAG=True - DEPLOY_SCENARIO=$(echo ${DEPLOY_SCENARIO} | sed 's/-functest//') - echo "INFO: Functest env requested in deploy scenario" -fi - -echo "Deploy Scenario set to ${DEPLOY_SCENARIO}" -DEPLOY_FILE="${DEPLOY_SETTINGS_DIR}/${DEPLOY_SCENARIO}.yaml" - -if [ ! -e "$DEPLOY_FILE" ]; then - echo "ERROR: Required settings file missing: Deploy settings file ${DEPLOY_FILE}" -fi - -if [[ "$JOB_NAME" =~ "virtual" ]]; then - # settings for virtual deployment - DEPLOY_CMD="${DEPLOY_CMD} -v" - if [[ "${DEPLOY_SCENARIO}" =~ fdio|ovs ]]; then - DEPLOY_CMD="${DEPLOY_CMD} --virtual-default-ram 12 --virtual-compute-ram 7" - fi - if [[ "$ALLINONE_FLAG" == "True" ]]; then - DEPLOY_CMD="${DEPLOY_CMD} --virtual-computes 0" - elif [[ "$PROMOTE" == "True" ]]; then - DEPLOY_CMD="${DEPLOY_CMD} --virtual-computes 2" - fi - - if [[ "$FUNCTEST_ENV_FLAG" == "True" || "$CSIT_ENV_FLAG" == "True" ]]; then - if [[ "$CSIT_ENV_FLAG" == "True" ]]; then - ENV_TYPE="csit" - else - ENV_TYPE="functest" - fi - if [ -z ${OS_VERSION+x} ]; then - echo "INFO: OS_VERSION not passed to deploy, detecting based on branch and scenario" - case $BRANCH in - master) - if [[ "$DEPLOY_SCENARIO" =~ "rocky" ]]; then - OS_VERSION=rocky - else - OS_VERSION=master - fi - ;; - *gambia) - OS_VERSION=queens - ;; - *) - echo "Unable to detection OS_VERSION, aborting" - exit 1 - ;; - esac - fi - if [[ "$OS_VERSION" != "master" ]]; then - SNAP_ENV="${ENV_TYPE}-${OS_VERSION}-environment.yaml" - else - SNAP_ENV="${ENV_TYPE}-environment.yaml" - fi - DEPLOY_CMD="${DEPLOY_CMD} -e ${SNAP_ENV}" - fi -else - # settings for bare metal deployment - NETWORK_SETTINGS_DIR="/root/network" - INVENTORY_FILE="/root/inventory/pod_settings.yaml" - - if ! sudo test -e "$INVENTORY_FILE"; then - echo "ERROR: Required settings file missing: Inventory settings file ${INVENTORY_FILE}" - exit 1 - fi - # include inventory file for bare metal deployment - DEPLOY_CMD="${DEPLOY_CMD} -i ${INVENTORY_FILE}" -fi - -if [ "$IPV6_FLAG" == "True" ]; then - NETWORK_FILE="${NETWORK_SETTINGS_DIR}/network_settings_v6.yaml" -elif [[ "$CSIT_ENV_FLAG" == "True" || "$FUNCTEST_ENV_FLAG" == "True" ]]; then - # We use csit network settings which is single network for snapshots - NETWORK_FILE="${NETWORK_SETTINGS_DIR}/network_settings_csit.yaml" -else - NETWORK_FILE="${NETWORK_SETTINGS_DIR}/network_settings.yaml" -fi - -# Check that network settings file exists -if ! sudo test -e "$NETWORK_FILE"; then - echo "ERROR: Required settings file missing: Network Settings file ${NETWORK_FILE}" - exit 1 -fi - -# start deployment -sudo ${DEPLOY_CMD} -d ${DEPLOY_FILE} -n ${NETWORK_FILE} --debug - -echo -echo "--------------------------------------------------------" -echo "Done!" diff --git a/jjb/apex/apex-download-artifact.sh b/jjb/apex/apex-download-artifact.sh deleted file mode 100755 index bc3311d68..000000000 --- a/jjb/apex/apex-download-artifact.sh +++ /dev/null @@ -1,89 +0,0 @@ -#!/bin/bash -set -o errexit -set -o nounset -set -o pipefail - -# log info to console -echo "Downloading the Apex artifact. This could take some time..." -echo "--------------------------------------------------------" -echo - -[[ -d $BUILD_DIRECTORY ]] || mkdir -p $BUILD_DIRECTORY - -if [ -z "$DEPLOY_SCENARIO" ]; then - echo "Deploy scenario not set!" - exit 1 -else - echo "Deploy scenario: ${DEPLOY_SCENARIO}" -fi - -if [[ "$ARTIFACT_VERSION" =~ dev ]]; then - if [[ "$BRANCH" != 'stable/fraser' ]]; then - echo "Skipping download of artifacts for master/gambia branch" - else - # dev build - GERRIT_PATCHSET_NUMBER=$(echo $GERRIT_REFSPEC | grep -Eo '[0-9]+$') - export OPNFV_ARTIFACT_VERSION="dev${GERRIT_CHANGE_NUMBER}_${GERRIT_PATCHSET_NUMBER}" - # get build artifact - pushd ${BUILD_DIRECTORY} > /dev/null - echo "Downloading packaged dev build: apex-${OPNFV_ARTIFACT_VERSION}.tar.gz" - curl --fail -s -o $BUILD_DIRECTORY/apex-${OPNFV_ARTIFACT_VERSION}.tar.gz http://$GS_URL/apex-${OPNFV_ARTIFACT_VERSION}.tar.gz - tar -xvf apex-${OPNFV_ARTIFACT_VERSION}.tar.gz - popd > /dev/null - fi -else - echo "Will use RPMs..." - - # Must be RPMs/ISO - echo "Downloading latest properties file" - - # get the properties file in order to get info regarding artifacts - curl --fail -s -o $BUILD_DIRECTORY/opnfv.properties http://$GS_URL/latest.properties - - # source the file so we get OPNFV vars - source $BUILD_DIRECTORY/opnfv.properties - - RPM_INSTALL_PATH=$(echo "http://"$OPNFV_RPM_URL | sed 's/\/'"$(basename $OPNFV_RPM_URL)"'//') - RPM_LIST=$(basename $OPNFV_RPM_URL) - # find version of RPM - VERSION_EXTENSION=$(echo $(basename $RPM_LIST) | grep -Eo '[0-9]+\.[0-9]+-([0-9]{8}|[a-z]+-[0-9]\.[0-9]+)') - if [ "$BRANCH" == 'stable/fraser' ]; then - # build RPM List which already includes base Apex RPM - RPM_LIST+=" opnfv-apex-undercloud-${VERSION_EXTENSION}.noarch.rpm" - RPM_LIST+=" python34-opnfv-apex-${VERSION_EXTENSION}.noarch.rpm" - fi - - # remove old / install new RPMs - if rpm -q python34-opnfv-apex > /dev/null; then - INSTALLED_RPMS=$(rpm -qa | grep apex) - if [ -n "$INSTALLED_RPMS" ]; then - sudo yum remove -y ${INSTALLED_RPMS} - fi - fi - # Create an rpms dir on slave - mkdir -p ~/apex_rpms - pushd ~/apex_rpms - # Remove older rpms which do not match this version - find . ! -name "*${VERSION_EXTENSION}.noarch.rpm" -type f -exec rm -f {} + - # Download RPM only if changed on server - for rpm in $RPM_LIST; do - wget -N ${RPM_INSTALL_PATH}/${rpm} - done - if ! sudo yum install -y $RPM_LIST; then - echo "Unable to install new RPMs: $RPM_LIST" - exit 1 - fi - popd -fi - -# TODO: Uncomment these lines to verify SHA512SUMs once the sums are -# fixed. -# echo "$OPNFV_ARTIFACT_SHA512SUM $BUILD_DIRECTORY/apex.iso" | sha512sum -c -# echo "$OPNFV_RPM_SHA512SUM $BUILD_DIRECTORY/$(basename $OPNFV_RPM_URL)" | sha512sum -c - -# list the files -ls -al $BUILD_DIRECTORY - -echo -echo "--------------------------------------------------------" -echo "Done!" diff --git a/jjb/apex/apex-fetch-logs.sh b/jjb/apex/apex-fetch-logs.sh deleted file mode 100755 index bdb2252b3..000000000 --- a/jjb/apex/apex-fetch-logs.sh +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/env bash -set -o errexit -set -o nounset -set -o pipefail - -# log info to console -echo "Fetching logs from overcloud. This could take some time..." -echo "--------------------------------------------------------" -echo - -if sudo opnfv-pyutil --fetch-logs; then - LOG_LOCATION=$(cat apex_util.log | grep 'Log retrieval complete' | grep -Eo '/tmp/.+$') - if [ -z "$LOG_LOCATION" ]; then - echo "WARNING: Unable to determine log location. Logs will not be uploaded" - exit 0 - else - sudo chmod 777 ${LOG_LOCATION} - UPLOAD_LOCATION="${GS_URL}/logs/${JOB_NAME}/${BUILD_NUMBER}/" - gsutil -m cp -r ${LOG_LOCATION} gs://${UPLOAD_LOCATION} > gsutil.latest_logs.log - echo -e "Logs available at: \n$(find ${LOG_LOCATION} -type f | sed -n 's#^/tmp/#http://'$UPLOAD_LOCATION'#p')" - fi -else - echo "WARNING: Log retrieval failed. No logs will be uploaded" - exit 0 -fi diff --git a/jjb/apex/apex-fetch-snap-info.sh b/jjb/apex/apex-fetch-snap-info.sh deleted file mode 100755 index 3324aca4f..000000000 --- a/jjb/apex/apex-fetch-snap-info.sh +++ /dev/null @@ -1,46 +0,0 @@ -#!/usr/bin/env bash - -############################################################################## -# Copyright (c) 2018 Tim Rozet (Red Hat) and others. -# -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -############################################################################## - -set -o errexit -set -o nounset -set -o pipefail - -echo "Fetching overcloudrc, ssh key, and node.yaml from deployment..." - -SSH_OPTIONS=(-o StrictHostKeyChecking=no -o GlobalKnownHostsFile=/dev/null -o UserKnownHostsFile=/dev/null -o LogLevel=error) - -tmp_dir=/tmp/snap -rm -rf ${tmp_dir} -mkdir -p ${tmp_dir} - -# TODO(trozet) remove this after fix goes in for tripleo_inspector to copy these -pushd ${tmp_dir} > /dev/null -echo "Copying overcloudrc and ssh key from Undercloud..." -# Store overcloudrc -UNDERCLOUD=$(sudo virsh domifaddr undercloud | grep -Eo '[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+') -sudo scp ${SSH_OPTIONS[@]} stack@${UNDERCLOUD}:overcloudrc ./ -# Copy out ssh key of stack from undercloud -sudo scp ${SSH_OPTIONS[@]} stack@${UNDERCLOUD}:.ssh/id_rsa ./ -sudo chmod 0600 id_rsa -popd > /dev/null - -echo "Gathering introspection information" -git clone https://gerrit.opnfv.org/gerrit/sdnvpn.git -pushd sdnvpn/odl-pipeline/lib > /dev/null -sudo ./tripleo_introspector.sh --out-file ${tmp_dir}/node.yaml -popd > /dev/null -sudo rm -rf sdnvpn - -sudo chown jenkins-ci:jenkins-ci ${tmp_dir}/* - -ls -lrt ${tmp_dir} - -echo "Fetch complete" diff --git a/jjb/apex/apex-functest-scenario.sh b/jjb/apex/apex-functest-scenario.sh deleted file mode 100644 index f1cb74e24..000000000 --- a/jjb/apex/apex-functest-scenario.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash -set -o errexit -set -o nounset -set -o pipefail - -features=$(echo $DEPLOY_SCENARIO | sed -r -n 's/os-.+-(.+)-(noha|ha)/\1/p') -if [ "$features" == 'rocky' ]; then - functest_scenario=$(echo $DEPLOY_SCENARIO | sed -r -n 's/(os-.+?)-rocky-(noha|ha)/\1-nofeature-\2/p') - echo "DOCKER_TAG=hunter" > functest_scenario -elif [[ "$features" =~ 'rocky' ]]; then - functest_scenario=$(echo $DEPLOY_SCENARIO | sed -r -n 's/(os-.+?)-(.+)_rocky-(noha|ha)/\1-\2-\3/p') - echo "DOCKER_TAG=hunter" > functest_scenario -else - functest_scenario=$(echo $DEPLOY_SCENARIO | sed -r -n 's/-(noha|ha).*/-\1/p') - echo "DOCKER_TAG=$([[ ${BRANCH##*/} == "master" ]] && \ - echo "latest" || echo ${BRANCH##*/})" > functest_scenario -fi -echo "DEPLOY_SCENARIO=$functest_scenario" >> functest_scenario diff --git a/jjb/apex/apex-iso-verify.sh b/jjb/apex/apex-iso-verify.sh deleted file mode 100755 index c29d7cb32..000000000 --- a/jjb/apex/apex-iso-verify.sh +++ /dev/null @@ -1,75 +0,0 @@ -#!/bin/bash -set -o errexit -set -o nounset -set -o pipefail - -# log info to console -echo "Starting the Apex iso verify." -echo "--------------------------------------------------------" -echo - -if [ "$BRANCH" != 'stable/fraser' ]; then - echo "Skipping Apex iso verify for ${BRANCH} branch" - exit 0 -fi - -# Must be RPMs/ISO -echo "Downloading latest properties file" - -# get the properties file in order to get info regarding artifacts -curl --fail -s -o opnfv.properties http://$GS_URL/latest.properties - -# source the file so we get OPNFV vars -source opnfv.properties - -if ! rpm -q virt-install > /dev/null; then - sudo yum -y install virt-install -fi - -# define a clean function -rm_apex_iso_verify () { -if sudo virsh list --all | grep apex-iso-verify | grep running; then - sudo virsh destroy apex-iso-verify -fi -if sudo virsh list --all | grep apex-iso-verify; then - sudo virsh undefine apex-iso-verify -fi -} - -# Make sure a pre-existing iso-verify isn't there -rm_apex_iso_verify - -#make sure there is not an existing console log file for the VM -sudo rm -f /var/log/libvirt/qemu/apex-iso-verify-console.log - -# run an install from the iso -# This streams a serial console to tcp port 3737 on localhost -sudo virt-install -n apex-iso-verify -r 4096 --vcpus 4 --os-variant=rhel7 \ - --accelerate -v --noautoconsole \ - --disk path=/var/lib/libvirt/images/apex-iso-verify.qcow2,size=30,format=qcow2 \ - -l /tmp/apex-iso/OPNFV-CentOS-7-x86_64-$OPNFV_ARTIFACT_VERSION.iso \ - --extra-args 'console=ttyS0 console=ttyS0,115200n8 serial inst.ks=file:/iso-verify.ks inst.stage2=hd:LABEL=OPNFV\x20CentOS\x207\x20x86_64:/' \ - --initrd-inject ci/iso-verify.ks \ - --serial file,path=/var/log/libvirt/qemu/apex-iso-verify-console.log - -echo "Waiting for install to finish..." -sleep 10 -end_time=$(($SECONDS+1500)) -while ! [[ `sudo tail -n1 /var/log/libvirt/qemu/apex-iso-verify-console.log` =~ 'Power down' ]]; do - if [ $SECONDS -gt $end_time ] || ! sudo virsh list --all | grep apex-iso-verify | grep running > /dev/null; then - sudo cat /var/log/libvirt/qemu/apex-iso-verify-console.log - sudo virsh list --all - echo "Error: Failed to find power down message after install" - exit 1 - fi - sleep 10 -done - -sudo cat /var/log/libvirt/qemu/apex-iso-verify-console.log - -# clean up -rm_apex_iso_verify - -echo -echo "--------------------------------------------------------" -echo "Done!" diff --git a/jjb/apex/apex-jjb-renderer.py b/jjb/apex/apex-jjb-renderer.py deleted file mode 100644 index 58dc4fff9..000000000 --- a/jjb/apex/apex-jjb-renderer.py +++ /dev/null @@ -1,51 +0,0 @@ -############################################################################## -# Copyright (c) 2016 Tim Rozet (trozet@redhat.com) and others. -# -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -############################################################################## - -import pprint -import yaml -from jinja2 import Environment -from jinja2 import FileSystemLoader - - -def render_jjb(): - """Render JJB output from scenarios.yaml.hidden file and jinja - template""" - - gspathname = dict() - branch = dict() - build_slave = dict() - env = Environment(loader=FileSystemLoader('./'), autoescape=True, - keep_trailing_newline=True) - - with open('scenarios.yaml.hidden') as _: - scenarios = yaml.safe_load(_) - - template = env.get_template('apex.yaml.j2') - - print("Scenarios are: ") - pprint.pprint(scenarios) - - for stream in scenarios: - if stream == 'master': - gspathname['master'] = '' - branch[stream] = stream - else: - gspathname[stream] = '/' + stream - branch[stream] = 'stable/' + stream - build_slave[stream] = 'apex-baremetal-{}'.format(stream) - - output = template.render(scenarios=scenarios, gspathname=gspathname, - branch=branch, build_slave=build_slave) - - with open('./apex.yaml', 'w') as fh: - fh.write(output) - - -if __name__ == "__main__": - render_jjb() diff --git a/jjb/apex/apex-project-jobs.yaml b/jjb/apex/apex-project-jobs.yaml deleted file mode 100644 index c581c59ab..000000000 --- a/jjb/apex/apex-project-jobs.yaml +++ /dev/null @@ -1,146 +0,0 @@ ---- -- project: - name: 'apex-project-jobs' - project: 'apex' - - stream: - - master: &master - branch: 'master' - gs-pathname: '' - concurrent-builds: 3 - disabled: false - - hunter: &hunter - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - concurrent-builds: 3 - disabled: false - - gambia: &gambia - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - concurrent-builds: 3 - disabled: false - - fraser: &fraser - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - concurrent-builds: 3 - disabled: false - - euphrates: &euphrates - branch: 'stable/euphrates' - gs-pathname: '/euphrates' - concurrent-builds: 3 - disabled: true - - danube: &danube - branch: 'stable/danube' - gs-pathname: '/danube' - concurrent-builds: 1 - disabled: true - - jobs: - - 'apex-build-{stream}' - - 'apex-verify-iso-{stream}' - -# Build phase -- job-template: - name: 'apex-build-{stream}' - - # Job template for builds - # - # Required Variables: - # stream: branch with - in place of / (eg. stable) - # branch: branch (eg. stable) - node: 'apex-build-master' - - disabled: false - - concurrent: true - - parameters: - - '{project}-defaults' - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - scm: - - git-scm-gerrit - - wrappers: - - timeout: - timeout: 150 - fail: true - - properties: - - logrotate-default - - throttle: - max-per-node: '{concurrent-builds}' - max-total: 10 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-verify-iso-{stream}' - - builders: - - 'apex-build' - - inject: - properties-content: ARTIFACT_TYPE=rpm - - 'apex-upload-artifact' - -# ISO verify job -- job-template: - name: 'apex-verify-iso-{stream}' - - # Job template for builds - # - # Required Variables: - # stream: branch with - in place of / (eg. stable) - # branch: branch (eg. stable) - node: 'apex-virtual-master' - - disabled: false - - concurrent: true - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: "Used for overriding the GIT URL coming from parameters macro." - - scm: - - git-scm - - properties: - - logrotate-default - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - 'apex-iso-verify' - - inject: - properties-content: ARTIFACT_TYPE=iso - - 'apex-upload-artifact' - -######################## -# builder macros -######################## -- builder: - name: 'apex-build' - builders: - - shell: - !include-raw: ./apex-build.sh - -- builder: - name: 'apex-iso-verify' - builders: - - shell: - !include-raw: ./apex-iso-verify.sh diff --git a/jjb/apex/apex-rtd-jobs.yaml b/jjb/apex/apex-rtd-jobs.yaml deleted file mode 100644 index 48e4949f7..000000000 --- a/jjb/apex/apex-rtd-jobs.yaml +++ /dev/null @@ -1,20 +0,0 @@ ---- -- project: - name: apex-rtd - project: apex - project-name: apex - - project-pattern: 'apex' - rtd-build-url: 'https://readthedocs.org/api/v2/webhook/opnfv-apex/47262/' - rtd-token: '134db049c774ab06c41db432e3a042a982f50edf' - - stream: - - master: - branch: '{stream}' - disabled: false - - gambia: - branch: 'stable/{stream}' - disabled: false - - jobs: - - '{project-name}-rtd-jobs' diff --git a/jjb/apex/apex-snapshot-create.sh b/jjb/apex/apex-snapshot-create.sh deleted file mode 100644 index e8bf60bd2..000000000 --- a/jjb/apex/apex-snapshot-create.sh +++ /dev/null @@ -1,105 +0,0 @@ -#!/usr/bin/env bash -############################################################################## -# Copyright (c) 2016 Tim Rozet (Red Hat) and others. -# -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -############################################################################## - -set -o errexit -set -o nounset -set -o pipefail - -SSH_OPTIONS=(-o StrictHostKeyChecking=no -o GlobalKnownHostsFile=/dev/null -o UserKnownHostsFile=/dev/null -o LogLevel=error) - -if [ -z "$SNAP_TYPE" ]; then - echo "ERROR: SNAP_TYPE not provided...exiting" - exit 1 -fi - -echo "Creating Apex snapshot..." -echo "-------------------------" -echo - -# create tmp directory -tmp_dir=$(pwd)/.tmp -mkdir -p ${tmp_dir} - -# info should have already been collected in apex-fetch-snap-info so copy it -cp -r /tmp/snap/* ${tmp_dir}/ - -echo "Shutting down nodes" -# Shut down nodes -nodes=$(sudo virsh list | grep -Eo "baremetal[0-9]") -for node in $nodes; do - sudo virsh shutdown ${node} --mode acpi -done - -for node in $nodes; do - count=0 - while [ "$count" -lt 10 ]; do - sleep 10 - if sudo virsh list | grep ${node}; then - echo "Waiting for $node to shutdown, try $count" - else - break - fi - count=$((count+1)) - done - - if [ "$count" -ge 10 ]; then - echo "Node $node failed to shutdown" - exit 1 - fi -done - -pushd ${tmp_dir} > /dev/null -echo "Gathering virsh definitions" -# copy qcow2s, virsh definitions -for node in $nodes; do - sudo cp -f /var/lib/libvirt/images/${node}.qcow2 ./ - sudo virsh dumpxml ${node} > ${node}.xml -done - -# copy virsh net definitions -sudo virsh net-dumpxml admin > admin.xml - -sudo chown jenkins-ci:jenkins-ci * - -# tar up artifacts -DATE=`date +%Y-%m-%d` -tar czf ../apex-${SNAP_TYPE}-snap-${DATE}.tar.gz . -popd > /dev/null -sudo rm -rf ${tmp_dir} -echo "Snapshot saved as apex-${SNAP_TYPE}-snap-${DATE}.tar.gz" - -# update opnfv properties file -snap_sha=$(sha512sum apex-${SNAP_TYPE}-snap-${DATE}.tar.gz | cut -d' ' -f1) - -if curl --fail -O -L http://$GS_URL/snapshot.properties; then - # TODO(trozet): deprecate OPNFV_SNAP_URL for CSIT_SNAP_URL - if [ "$SNAP_TYPE" == 'csit' ]; then - sed -i '/^OPNFV_SNAP_URL=/{h;s#=.*#='${GS_URL}'/apex-csit-snap-'${DATE}'.tar.gz#};${x;/^$/{s##OPNFV_SNAP_URL='${GS_URL}'/apex-csit-snap-'${DATE}'.tar.gz#;H};x}' snapshot.properties - sed -i '/^OPNFV_SNAP_SHA512SUM=/{h;s/=.*/='${snap_sha}'/};${x;/^$/{s//OPNFV_SNAP_SHA512SUM='${snap_sha}'/;H};x}' snapshot.properties - fi - sed -i '/^'${SNAP_TYPE}'_SNAP_URL=/{h;s#=.*#='${GS_URL}'/apex-'${SNAP_TYPE}'-snap-'${DATE}'.tar.gz#};${x;/^$/{s##'${SNAP_TYPE}'_SNAP_URL='${GS_URL}'/apex-'${SNAP_TYPE}'-snap-'${DATE}'.tar.gz#;H};x}' snapshot.properties - sed -i '/^'${SNAP_TYPE}'_SNAP_SHA512SUM=/{h;s/=.*/='${snap_sha}'/};${x;/^$/{s//'${SNAP_TYPE}'_SNAP_SHA512SUM='${snap_sha}'/;H};x}' snapshot.properties -else - cat << EOF > snapshot.properties -${SNAP_TYPE}_SNAP_URL=${GS_URL}/apex-${SNAP_TYPE}-snap-${DATE}.tar.gz -${SNAP_TYPE}_SNAP_SHA512SUM=${snap_sha} -EOF - # TODO(trozet): deprecate OPNFV_SNAP_URL for CSIT_SNAP_URL - if [ "$SNAP_TYPE" == 'csit' ]; then - cat << EOF >> snapshot.properties -OPNFV_SNAP_URL=${GS_URL}/apex-csit-snap-${DATE}.tar.gz -OPNFV_SNAP_SHA512SUM=${snap_sha} -EOF - fi -fi -echo "${SNAP_TYPE}_SNAP_URL=$GS_URL/apex-${SNAP_TYPE}-snap-${DATE}.tar.gz" -echo "${SNAP_TYPE}_SNAP_SHA512SUM=$(sha512sum apex-${SNAP_TYPE}-snap-${DATE}.tar.gz | cut -d' ' -f1)" -echo "Updated properties file: " -cat snapshot.properties diff --git a/jjb/apex/apex-snapshot-deploy.sh b/jjb/apex/apex-snapshot-deploy.sh deleted file mode 100644 index dd69df3fc..000000000 --- a/jjb/apex/apex-snapshot-deploy.sh +++ /dev/null @@ -1,184 +0,0 @@ -#!/usr/bin/env bash -############################################################################## -# Copyright (c) 2016 Tim Rozet (Red Hat) and others. -# -# All rights reserved. This program and the accompanying materials -# are made available under the terms of the Apache License, Version 2.0 -# which accompanies this distribution, and is available at -# http://www.apache.org/licenses/LICENSE-2.0 -############################################################################## - -set -o errexit -set -o nounset -set -o pipefail - -SSH_OPTIONS=(-o StrictHostKeyChecking=no -o GlobalKnownHostsFile=/dev/null -o UserKnownHostsFile=/dev/null -o LogLevel=error) -SNAP_CACHE=$HOME/snap_cache - - -echo "Deploying Apex snapshot..." -echo "--------------------------" -echo - -if [ -z "$SNAP_TYPE" ]; then - echo "ERROR: SNAP_TYPE not provided...exiting" - exit 1 -fi - -echo "Cleaning server" -pushd ci > /dev/null -sudo opnfv-clean -popd > /dev/null - -full_snap_url="gs://${GS_URL}/${OS_VERSION}/${TOPOLOGY}" - -echo "Downloading latest snapshot properties file" -if ! gsutil cp ${full_snap_url}/snapshot.properties $WORKSPACE/opnfv.properties; then - echo "ERROR: Unable to find snapshot.properties at ${full_snap_url}...exiting" - exit 1 -fi - -echo "Properties contents:" -cat ${WORKSPACE}/opnfv.properties - -# find latest check sum -latest_snap_checksum=$(cat ${WORKSPACE}/opnfv.properties | grep ${SNAP_TYPE}_SNAP_SHA512SUM | awk -F "=" '{print $2}') -if [ -z "$latest_snap_checksum" ]; then - echo "ERROR: checksum of latest snapshot from snapshot.properties is null!" - exit 1 -fi - -local_snap_checksum="" -SNAP_CACHE=${SNAP_CACHE}/${OS_VERSION}/${TOPOLOGY} - -# check snap cache directory exists -# if snapshot cache exists, find the checksum -if [ -d "$SNAP_CACHE" ]; then - latest_snap=$(ls ${SNAP_CACHE} | grep tar.gz | grep $SNAP_TYPE | tail -n 1) - if [ -n "$latest_snap" ]; then - local_snap_checksum=$(sha512sum ${SNAP_CACHE}/${latest_snap} | cut -d' ' -f1) - echo "Local snap checksum is: ${local_snap_checksum}" - fi -else - mkdir -p ${SNAP_CACHE} -fi - -# compare check sum and download latest snap if not up to date -if [ "$local_snap_checksum" != "$latest_snap_checksum" ]; then - snap_url=$(cat opnfv.properties | grep ${SNAP_TYPE}_SNAP_URL | awk -F "=" '{print $2}') - # TODO(trozet): Remove this once OPNFV url is deprecated - if [[ -z "$snap_url" && "$SNAP_TYPE" == 'csit' ]]; then - echo "WARN: Unable to find snap url for ${SNAP_TYPE}, attempting to use OPNFV" - snap_url=$(cat opnfv.properties | grep OPNFV_SNAP_URL | awk -F "=" '{print $2}') - fi - if [ -z "$snap_url" ]; then - echo "ERROR: Snap URL from snapshot.properties is null!" - exit 1 - fi - echo "INFO: SHA mismatch, will download latest snapshot" - # wipe cache - rm -rf ${SNAP_CACHE}/* - gsutil cp "gs://${snap_url}" ${SNAP_CACHE}/ - snap_tar=$(basename ${snap_url}) -else - snap_tar=${latest_snap} -fi - -echo "INFO: Snapshot to be used is ${snap_tar}" - -# move to snap cache dir and unpack -pushd ${SNAP_CACHE} > /dev/null -tar xvf ${snap_tar} - -# create each network -virsh_networks=$(ls *.xml | grep -v baremetal) - -if [ -z "$virsh_networks" ]; then - echo "ERROR: no virsh networks found in snapshot unpack" - exit 1 -fi - -echo "Checking overcloudrc" -if ! stat overcloudrc; then - echo "ERROR: overcloudrc does not exist in snap unpack" - exit 1 -fi - -for network_def in ${virsh_networks}; do - sudo virsh net-create ${network_def} - network=$(echo ${network_def} | awk -F '.' '{print $1}') - if ! sudo virsh net-list | grep ${network}; then - sudo virsh net-start ${network} - fi - echo "Checking if OVS bridge is missing for network: ${network}" - if ! sudo ovs-vsctl show | grep "br-${network}"; then - sudo ovs-vsctl add-br br-${network} - echo "OVS Bridge created: br-${network}" - if [ "br-${network}" == 'br-admin' ]; then - echo "Configuring IP 192.0.2.99 on br-admin" - sudo ip addr add 192.0.2.99/24 dev br-admin - sudo ip link set up dev br-admin - elif [ "br-${network}" == 'br-external' ]; then - echo "Configuring IP 192.168.37.1 on br-external" - sudo ip addr add 192.168.37.1/24 dev br-external - sudo ip link set up dev br-external - # Routes for admin network - # The overcloud controller is multi-homed and will fail to respond - # to traffic from the functest container due to reverse-path-filtering - # This route allows reverse traffic, by forcing admin network destined - # traffic through the external network for controller IPs only. - # Compute nodes have no ip on external interfaces. - controller_ips=$(cat overcloudrc | grep -Eo "192.0.2.[0-9]+") - for ip in $controller_ips; do - sudo ip route add ${ip}/32 dev br-external - done - fi - fi -done - -echo "Virsh networks up: $(sudo virsh net-list)" -echo "Bringing up Overcloud VMs..." -virsh_vm_defs=$(ls baremetal*.xml) - -if [ -z "$virsh_vm_defs" ]; then - echo "ERROR: no virsh VMs found in snapshot unpack" - exit 1 -fi - -for node_def in ${virsh_vm_defs}; do - sed -ri "s/machine='[^\s]+'/machine='pc'/" ${node_def} - sudo virsh define ${node_def} - node=$(echo ${node_def} | awk -F '.' '{print $1}') - sudo cp -f ${node}.qcow2 /var/lib/libvirt/images/ - sudo virsh start ${node} - echo "Node: ${node} started" -done - -# copy overcloudrc for functest -mkdir -p $HOME/cloner-info -cp -f overcloudrc $HOME/cloner-info/ - -admin_controller_ip=$(cat overcloudrc | grep -Eo -m 1 "192.0.2.[0-9]+" | head -1) -netvirt_url="http://${admin_controller_ip}:8081/restconf/operational/network-topology:network-topology/topology/netvirt:1" - -source overcloudrc -counter=1 -while [ "$counter" -le 10 ]; do - echo "Checking if OpenStack is up" - if nc -z ${admin_controller_ip} 9696 > /dev/null; then - echo "Overcloud Neutron is up...Checking if OpenDaylight NetVirt is up..." - if curl --fail --silent -u admin:${SDN_CONTROLLER_PASSWORD} ${netvirt_url} > /dev/null; then - echo "OpenDaylight is up. Overcloud deployment complete" - exit 0 - else - echo "OpenDaylight not yet up, try ${counter}" - fi - else - echo "Neutron not yet up, try ${counter}" - fi - counter=$((counter+1)) - sleep 60 -done - -echo "ERROR: Deployment not up after 10 minutes...exiting." -exit 1 diff --git a/jjb/apex/apex-unit-test.sh b/jjb/apex/apex-unit-test.sh deleted file mode 100755 index 3f15847f2..000000000 --- a/jjb/apex/apex-unit-test.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/bash -set -o errexit -set -o nounset -set -o pipefail -# log info to console -echo "Starting unit tests for Apex..." -echo "---------------------------------------------------------------------------------------" -echo - -PATH=$PATH:/usr/sbin - - -pushd build/ > /dev/null -for pkg in yamllint rpmlint iproute epel-release python34-devel python34-nose python34-PyYAML python-pep8 python34-mock python34-pip; do - if ! rpm -q ${pkg} > /dev/null; then - if ! sudo yum install -y ${pkg}; then - echo "Failed to install ${pkg} package..." - exit 1 - fi - fi -done - -# Make sure coverage is installed -if ! python3 -c "import coverage" &> /dev/null; then sudo pip3 install coverage; fi - -make rpmlint -make python-pep8-check -make yamllint -make python-tests -popd > /dev/null - -echo "--------------------------------------------------------" -echo "Unit Tests Done!" diff --git a/jjb/apex/apex-upload-artifact.sh b/jjb/apex/apex-upload-artifact.sh deleted file mode 100755 index 00a0a1c78..000000000 --- a/jjb/apex/apex-upload-artifact.sh +++ /dev/null @@ -1,163 +0,0 @@ -#!/bin/bash -set -o errexit -set -o nounset -set -o pipefail - -if [ -z "$ARTIFACT_TYPE" ]; then - echo "ERROR: ARTIFACT_TYPE not provided...exiting" - exit 1 -fi - -# log info to console -echo "Uploading the Apex ${ARTIFACT_TYPE} artifact. This could take some time..." -echo "--------------------------------------------------------" -echo - -if [[ ! "$ARTIFACT_VERSION" =~ dev ]]; then - source $BUILD_DIRECTORY/../opnfv.properties -fi - -importkey () { - # clone releng repository - echo "Cloning releng repository..." - [ -d releng ] && rm -rf releng - git clone https://gerrit.opnfv.org/gerrit/releng $WORKSPACE/releng/ &> /dev/null - #this is where we import the siging key - if [ -f $WORKSPACE/releng/utils/gpg_import_key.sh ]; then - if ! $WORKSPACE/releng/utils/gpg_import_key.sh; then - echo "WARNING: Failed to run gpg key import" - fi - fi -} - -signrpm () { - for artifact in $RPM_LIST $SRPM_LIST; do - echo "Signing artifact: ${artifact}" - gpg2 -vvv --batch --yes --no-tty \ - --default-key opnfv-helpdesk@rt.linuxfoundation.org \ - --passphrase besteffort \ - --detach-sig $artifact - gsutil cp "$artifact".sig gs://$GS_URL/$(basename "$artifact".sig) - echo "Upload complete for ${artifact} signature" - done -} - -signiso () { - gpg2 -vvv --batch --yes --no-tty \ - --default-key opnfv-helpdesk@rt.linuxfoundation.org \ - --passphrase besteffort \ - --detach-sig $BUILD_DIRECTORY/release/OPNFV-CentOS-7-x86_64-$OPNFV_ARTIFACT_VERSION.iso - - gsutil cp $BUILD_DIRECTORY/release/OPNFV-CentOS-7-x86_64-$OPNFV_ARTIFACT_VERSION.iso.sig gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso.sig - echo "ISO signature Upload Complete!" -} - -uploadiso () { - gsutil cp $BUILD_DIRECTORY/release/OPNFV-CentOS-7-x86_64-$OPNFV_ARTIFACT_VERSION.iso gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso > gsutil.iso.log - echo "ISO Upload Complete!" -} - -uploadrpm () { - for artifact in $RPM_LIST $SRPM_LIST; do - echo "Uploading artifact: ${artifact}" - gsutil cp $artifact gs://$GS_URL/$(basename $artifact) > gsutil.iso.log - echo "Upload complete for ${artifact}" - done - gsutil cp $WORKSPACE/opnfv.properties gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.properties > gsutil.properties.log - gsutil cp $WORKSPACE/opnfv.properties gs://$GS_URL/latest.properties > gsutil.latest.log - - # Make the property files viewable on the artifact site - gsutil -m setmeta \ - -h "Content-Type:text/html" \ - -h "Cache-Control:private, max-age=0, no-transform" \ - gs://$GS_URL/latest.properties \ - gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.properties > /dev/null 2>&1 -} - -uploadsnap () { - # Uploads snapshot artifact and updated properties file - echo "Uploading snapshot artifacts" - # snapshot dir is the same node in the create job workspace - # only 1 promotion job can run at a time on a slave - snapshot_dir="${WORKSPACE}/../apex-create-snapshot" - if [ -z "$SNAP_TYPE" ]; then - echo "ERROR: SNAP_TYPE not provided...exiting" - exit 1 - fi - gsutil cp ${snapshot_dir}/apex-${SNAP_TYPE}-snap-`date +%Y-%m-%d`.tar.gz gs://$GS_URL/ > gsutil.iso.log - gsutil cp ${snapshot_dir}/snapshot.properties gs://$GS_URL/snapshot.properties > gsutil.latest.log - echo "Upload complete for Snapshot" -} - -uploadimages () { - # Uploads dev tarball - GERRIT_PATCHSET_NUMBER=$(echo $GERRIT_REFSPEC | grep -Eo '[0-9]+$') - export OPNFV_ARTIFACT_VERSION="dev${GERRIT_CHANGE_NUMBER}_${GERRIT_PATCHSET_NUMBER}" - echo "Uploading development build tarball" - pushd $BUILD_DIRECTORY > /dev/null - tar czf apex-${OPNFV_ARTIFACT_VERSION}.tar.gz *.qcow2 *.vmlinuz *.initrd - gsutil cp apex-${OPNFV_ARTIFACT_VERSION}.tar.gz gs://$GS_URL/apex-${OPNFV_ARTIFACT_VERSION}.tar.gz > gsutil.latest.log - popd > /dev/null -} - -# Always import the signing key, if it's available the artifacts will be -# signed before being uploaded -importkey - -if gpg2 --list-keys | grep "opnfv-helpdesk@rt.linuxfoundation.org"; then - echo "Signing Key avaliable" - SIGN_ARTIFACT="true" -fi - -if [ "$ARTIFACT_TYPE" == 'snapshot' ]; then - uploadsnap -elif [ "$ARTIFACT_TYPE" == 'iso' ]; then - if [[ "$ARTIFACT_VERSION" =~ dev || "$BRANCH" != 'stable/fraser' ]]; then - echo "Skipping ISO artifact upload for ${ARTIFACT_TYPE} due to dev/${BRANCH} build" - exit 0 - fi - if [[ -n "$SIGN_ARTIFACT" && "$SIGN_ARTIFACT" == "true" ]]; then - signiso - fi - uploadiso -elif [ "$ARTIFACT_TYPE" == 'rpm' ]; then - if [[ "$ARTIFACT_VERSION" =~ dev ]]; then - if [[ "$BRANCH" != 'stable/fraser' ]]; then - echo "will not upload artifacts, ${BRANCH} uses upstream" - ARTIFACT_TYPE=none - else - echo "dev build detected, will upload image tarball" - ARTIFACT_TYPE=tarball - uploadimages - fi - else - RPM_INSTALL_PATH=$BUILD_DIRECTORY/noarch - # RPM URL should be python package for master, and is only package we need - RPM_LIST=$RPM_INSTALL_PATH/$(basename $OPNFV_RPM_URL) - SRPM_INSTALL_PATH=$BUILD_DIRECTORY - SRPM_LIST=$SRPM_INSTALL_PATH/$(basename $OPNFV_SRPM_URL) - if [[ "$BRANCH" == 'stable/fraser' ]]; then - VERSION_EXTENSION=$(echo $(basename $OPNFV_RPM_URL) | sed 's/opnfv-apex-//') - RPM_LIST+=" ${RPM_INSTALL_PATH}/opnfv-apex-undercloud-${VERSION_EXTENSION}" - RPM_LIST+=" ${RPM_INSTALL_PATH}/python34-opnfv-apex-${VERSION_EXTENSION}" - VERSION_EXTENSION=$(echo $(basename $OPNFV_SRPM_URL) | sed 's/opnfv-apex-//') - SRPM_LIST+=" ${SRPM_INSTALL_PATH}/opnfv-apex-undercloud-${VERSION_EXTENSION}" - SRPM_LIST+=" ${SRPM_INSTALL_PATH}/python34-opnfv-apex-${VERSION_EXTENSION}" - fi - - if [[ -n "$SIGN_ARTIFACT" && "$SIGN_ARTIFACT" == "true" ]]; then - signrpm - fi - uploadrpm - fi -else - echo "ERROR: Unknown artifact type ${ARTIFACT_TYPE} to upload...exiting" - exit 1 -fi - -echo -echo "--------------------------------------------------------" -echo "Done!" -if [ "$ARTIFACT_TYPE" == 'iso' ]; then echo "ISO Artifact is available as http://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso"; fi -if [ "$ARTIFACT_TYPE" == 'rpm' ]; then echo "RPM Artifact is available as http://$GS_URL/$(basename $OPNFV_RPM_URL)"; fi -if [ "$ARTIFACT_TYPE" == 'tarball' ]; then echo "Dev tarball Artifact is available as http://$GS_URL/apex-${OPNFV_ARTIFACT_VERSION}.tar.gz)"; fi diff --git a/jjb/apex/apex-verify-jobs.yaml b/jjb/apex/apex-verify-jobs.yaml deleted file mode 100644 index e8115ebf6..000000000 --- a/jjb/apex/apex-verify-jobs.yaml +++ /dev/null @@ -1,409 +0,0 @@ ---- -- project: - name: 'apex-verify-jobs' - project: 'apex' - jobs: - - 'apex-verify-{stream}' - - 'apex-verify-gate-{stream}' - - 'apex-verify-unit-tests-{stream}' - stream: - - master: &master - branch: '{stream}' - gs-pathname: '' - verify-scenario: 'os-nosdn-nofeature-noha' - disabled: false - - hunter: &hunter - branch: '{stream}' - gs-pathname: '' - verify-scenario: 'os-nosdn-nofeature-noha' - disabled: false - - gambia: &gambia - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - verify-scenario: 'os-nosdn-nofeature-ha' - disabled: false - - fraser: &fraser - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - verify-scenario: 'os-nosdn-nofeature-ha' - disabled: false - - danube: &danube - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - verify-scenario: 'os-odl_l3-nofeature-ha' - disabled: true - - euphrates: &euphrates - branch: 'stable/{stream}' - gs-pathname: '/{stream}' - verify-scenario: 'os-odl-nofeature-ha' - disabled: false - -# Unit Test -- job-template: - name: 'apex-verify-unit-tests-{stream}' - - node: 'apex-build-master' - - concurrent: true - - disabled: '{obj:disabled}' - - parameters: - - apex-parameter: - gs-pathname: '{gs-pathname}' - - project-parameter: - project: '{project}' - branch: '{branch}' - - scm: - - git-scm-gerrit - - triggers: - - gerrit: - server-name: 'gerrit.opnfv.org' - trigger-on: - - patchset-created-event: - exclude-drafts: 'false' - exclude-trivial-rebase: 'false' - exclude-no-code-change: 'true' - - draft-published-event - - comment-added-contains-event: - comment-contains-value: 'recheck' - - comment-added-contains-event: - comment-contains-value: 'reverify' - projects: - - project-compare-type: 'ANT' - project-pattern: 'apex' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - disable-strict-forbidden-file-verification: 'false' - file-paths: - - compare-type: ANT - pattern: 'apex/tests/**' - forbidden-file-paths: - - compare-type: ANT - pattern: '*' - - compare-type: ANT - pattern: 'apex/*' - - compare-type: ANT - pattern: 'build/**' - - compare-type: ANT - pattern: 'lib/**' - - compare-type: ANT - pattern: 'config/**' - - compare-type: ANT - pattern: 'apex/build/**' - - compare-type: ANT - pattern: 'apex/common/**' - - compare-type: ANT - pattern: 'apex/inventory/**' - - compare-type: ANT - pattern: 'apex/network/**' - - compare-type: ANT - pattern: 'apex/overcloud/**' - - compare-type: ANT - pattern: 'apex/settings/**' - - compare-type: ANT - pattern: 'apex/undercloud/**' - - compare-type: ANT - pattern: 'apex/virtual/**' - - properties: - - logrotate-default - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - apex-unit-test - -# Verify -- job-template: - name: 'apex-verify-{stream}' - - concurrent: true - - disabled: '{obj:disabled}' - - project-type: 'multijob' - - parameters: - - '{project}-virtual-{stream}-defaults' - - apex-parameter: - gs-pathname: '{gs-pathname}/dev' - - project-parameter: - project: '{project}' - branch: '{branch}' - - string: - name: ARTIFACT_VERSION - default: dev - description: "Used for overriding the ARTIFACT_VERSION" - scm: - - git-scm-gerrit - - triggers: - - gerrit: - server-name: 'gerrit.opnfv.org' - trigger-on: - - patchset-created-event: - exclude-drafts: 'false' - exclude-trivial-rebase: 'false' - exclude-no-code-change: 'true' - - draft-published-event - - comment-added-contains-event: - comment-contains-value: 'recheck' - - comment-added-contains-event: - comment-contains-value: 'reverify' - projects: - - project-compare-type: 'ANT' - project-pattern: 'apex' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - disable-strict-forbidden-file-verification: 'true' - file-paths: - - compare-type: ANT - pattern: '*' - - compare-type: ANT - pattern: 'apex/*' - - compare-type: ANT - pattern: 'build/**' - - compare-type: ANT - pattern: 'ci/**' - - compare-type: ANT - pattern: 'lib/**' - - compare-type: ANT - pattern: 'config/**' - - compare-type: ANT - pattern: 'apex/build/**' - - compare-type: ANT - pattern: 'apex/builders/**' - - compare-type: ANT - pattern: 'apex/common/**' - - compare-type: ANT - pattern: 'apex/inventory/**' - - compare-type: ANT - pattern: 'apex/network/**' - - compare-type: ANT - pattern: 'apex/overcloud/**' - - compare-type: ANT - pattern: 'apex/settings/**' - - compare-type: ANT - pattern: 'apex/undercloud/**' - - compare-type: ANT - pattern: 'apex/virtual/**' - forbidden-file-paths: - - compare-type: ANT - pattern: 'apex/tests/**' - - compare-type: ANT - pattern: 'docs/**' - - properties: - - logrotate-default - - throttle: - max-per-node: 3 - max-total: 10 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-.*-promote.*' - builders: - - description-setter: - description: "Built on $NODE_NAME" - - multijob: - name: basic - condition: SUCCESSFUL - projects: - - name: 'apex-verify-unit-tests-{stream}' - current-parameters: false - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: false - kill-phase-on: FAILURE - abort-all-job: true - git-revision: true - - multijob: - name: build - condition: SUCCESSFUL - projects: - - name: 'apex-build-{stream}' - current-parameters: false - predefined-parameters: | - ARTIFACT_VERSION=$ARTIFACT_VERSION - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: false - kill-phase-on: FAILURE - abort-all-job: true - git-revision: true - - multijob: - name: deploy-virtual - condition: SUCCESSFUL - projects: - - name: 'apex-virtual-{stream}' - current-parameters: false - predefined-parameters: | - ARTIFACT_VERSION=$ARTIFACT_VERSION - DEPLOY_SCENARIO={verify-scenario} - OPNFV_CLEAN=yes - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - FUNCTEST_SUITE_NAME=tempest_smoke - FUNCTEST_MODE=testcase - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: true - -# Verify Scenario Gate -- job-template: - name: 'apex-verify-gate-{stream}' - - concurrent: true - - disabled: '{obj:disabled}' - - project-type: 'multijob' - - parameters: - - '{project}-virtual-{stream}-defaults' - - apex-parameter: - gs-pathname: '{gs-pathname}/dev' - - project-parameter: - project: '{project}' - branch: '{branch}' - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: "Used for overriding the GIT URL coming from parameters macro." - - string: - name: ARTIFACT_VERSION - default: dev - description: "Used for overriding the ARTIFACT_VERSION" - - scm: - - git-scm-gerrit - - triggers: - - gerrit: - server-name: 'gerrit.opnfv.org' - trigger-on: - - comment-added-contains-event: - comment-contains-value: '^Patch Set [0-9]+: Code-Review\+2.*start-gate-scenario:.*' - projects: - - project-compare-type: 'ANT' - project-pattern: 'apex' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - file-paths: - - compare-type: ANT - pattern: 'ci/**' - - compare-type: ANT - pattern: 'build/**' - - compare-type: ANT - pattern: 'lib/**' - - compare-type: ANT - pattern: 'config/**' - - compare-type: ANT - pattern: 'apex/**' - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-verify.*' - - 'apex-virtual.*' - - 'apex-.*-promote.*' - - 'odl-netvirt.*' - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - # yamllint disable rule:line-length - - shell: | - echo DEPLOY_SCENARIO=$(echo $GERRIT_EVENT_COMMENT_TEXT | grep start-gate-scenario | grep -Eo '(os|k8s)-.*$') > detected_scenario - # yamllint enable rule:line-length - - inject: - properties-file: detected_scenario - - multijob: - name: deploy-virtual - condition: SUCCESSFUL - projects: - - name: 'apex-deploy-virtual-{stream}' - current-parameters: false - predefined-parameters: | - ARTIFACT_VERSION=$ARTIFACT_VERSION - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - OPNFV_CLEAN=yes - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - GERRIT_EVENT_COMMENT_TEXT=$GERRIT_EVENT_COMMENT_TEXT - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: true - - shell: - !include-raw-escape: ./apex-functest-scenario.sh - - inject: - properties-file: functest_scenario - override-build-parameters: true - - multijob: - name: functest-smoke - condition: ALWAYS - projects: - - name: 'functest-apex-virtual-suite-{stream}' - current-parameters: false - predefined-parameters: | - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - DOCKER_TAG=$DOCKER_TAG - FUNCTEST_SUITE_NAME=tempest_smoke - FUNCTEST_MODE=testcase - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: NEVER - enable-condition: "def m = '$DEPLOY_SCENARIO' != 'k8s-nosdn-nofeature-noha'" - abort-all-job: true - git-revision: false - - multijob: - name: apex-fetch-logs - projects: - - name: 'apex-fetch-logs-{stream}' - current-parameters: true - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - node-parameters: true - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - -######################## -# builder macros -######################## -- builder: - name: apex-unit-test - builders: - - shell: - !include-raw: ./apex-unit-test.sh diff --git a/jjb/apex/apex.yaml b/jjb/apex/apex.yaml deleted file mode 100644 index fb2eaa2db..000000000 --- a/jjb/apex/apex.yaml +++ /dev/null @@ -1,2008 +0,0 @@ ---- -- project: - name: 'apex' - project: 'apex' - jobs: - - 'apex-fetch-logs-{stream}' - - 'apex-runner-cperf-{stream}' - - 'apex-virtual-{stream}' - - 'apex-deploy-{platform}-{stream}' - - 'apex-daily-{stream}' - - 'apex-{snap_type}-promote-daily-{stream}-os-{os_version}-{topology}' - - 'apex-fdio-promote-daily-{stream}' - - 'apex-{scenario}-baremetal-{scenario_stream}' - - 'apex-testsuite-{scenario}-baremetal-{scenario_stream}' - - 'apex-upload-snapshot' - - 'apex-create-snapshot' - - 'apex-fetch-snap-info' - - 'apex-flex-daily-os-nosdn-nofeature-ha-{stream}' - # stream: branch with - in place of / (eg. stable-arno) - # branch: branch (eg. stable/arno) - stream: - - master: &master - branch: 'master' - gs-pathname: '' - build-slave: 'apex-build-master' - virtual-slave: 'apex-virtual-master' - baremetal-slave: 'apex-baremetal-master' - verify-scenario: 'os-nosdn-nofeature-noha' - scenario_stream: 'master' - disable_daily: true - disable_promote: true - - hunter: &hunter - branch: 'stable/hunter' - gs-pathname: '/hunter' - build-slave: 'apex-build-master' - virtual-slave: 'apex-virtual-master' - baremetal-slave: 'apex-baremetal-master' - verify-scenario: 'os-nosdn-nofeature-ha' - scenario_stream: 'hunter' - disable_daily: true - disable_promote: true - - gambia: &gambia - branch: 'stable/gambia' - gs-pathname: '/gambia' - build-slave: 'apex-build-master' - virtual-slave: 'apex-virtual-master' - baremetal-slave: 'apex-baremetal-master' - verify-scenario: 'os-nosdn-nofeature-ha' - scenario_stream: 'gambia' - disable_daily: true - disable_promote: true - - fraser: &fraser - branch: 'stable/fraser' - gs-pathname: '/fraser' - build-slave: 'apex-build-master' - virtual-slave: 'apex-virtual-master' - baremetal-slave: 'apex-baremetal-master' - verify-scenario: 'os-nosdn-nofeature-ha' - scenario_stream: 'fraser' - disable_daily: true - disable_promote: true - - euphrates: &euphrates - branch: 'stable/euphrates' - gs-pathname: '/euphrates' - build-slave: 'apex-build-master' - virtual-slave: 'apex-virtual-master' - baremetal-slave: 'apex-baremetal-master' - verify-scenario: 'os-odl-nofeature-ha' - scenario_stream: 'euphrates' - disable_daily: true - disable_promote: true - - danube: &danube - branch: 'stable/danube' - gs-pathname: '/danube' - build-slave: 'apex-build-danube' - virtual-slave: 'apex-virtual-danube' - baremetal-slave: 'apex-baremetal-danube' - verify-scenario: 'os-odl_l3-nofeature-ha' - scenario_stream: 'danube' - disabled: true - disable_daily: true - disable_promote: true - - scenario: - - 'os-nosdn-nofeature-noha': - <<: *danube - - 'os-nosdn-nofeature-ha': - <<: *danube - - 'os-nosdn-nofeature-ha-ipv6': - <<: *danube - - 'os-nosdn-ovs-noha': - <<: *danube - - 'os-nosdn-ovs-ha': - <<: *danube - - 'os-nosdn-fdio-noha': - <<: *danube - - 'os-nosdn-fdio-ha': - <<: *danube - - 'os-nosdn-kvm-ha': - <<: *danube - - 'os-nosdn-kvm-noha': - <<: *danube - - 'os-odl_l2-fdio-noha': - <<: *danube - - 'os-odl_l2-fdio-ha': - <<: *danube - - 'os-odl_netvirt-fdio-noha': - <<: *danube - - 'os-odl_l2-sfc-noha': - <<: *danube - - 'os-odl_l3-nofeature-noha': - <<: *danube - - 'os-odl_l3-nofeature-ha': - <<: *danube - - 'os-odl_l3-ovs-noha': - <<: *danube - - 'os-odl_l3-ovs-ha': - <<: *danube - - 'os-odl-bgpvpn-ha': - <<: *danube - - 'os-odl-gluon-noha': - <<: *danube - - 'os-odl_l3-fdio-noha': - <<: *danube - - 'os-odl_l3-fdio-ha': - <<: *danube - - 'os-odl_l3-fdio_dvr-noha': - <<: *danube - - 'os-odl_l3-fdio_dvr-ha': - <<: *danube - - 'os-odl_l3-csit-noha': - <<: *danube - - 'os-onos-nofeature-ha': - <<: *danube - - 'os-ovn-nofeature-noha': - <<: *danube - - 'os-nosdn-nofeature-noha': - <<: *master - - 'os-nosdn-nofeature-ha': - <<: *master - - 'os-nosdn-nofeature-noha': - <<: *gambia - - 'os-nosdn-nofeature-ha': - <<: *gambia - - 'os-nosdn-nofeature-ha-ipv6': - <<: *gambia - - 'os-odl-nofeature-noha': - <<: *gambia - - 'os-odl-nofeature-ha': - <<: *gambia - - 'k8s-nosdn-nofeature-noha': - <<: *gambia - - 'os-odl-bgpvpn-ha': - <<: *gambia - - 'os-odl-bgpvpn-noha': - <<: *gambia - - 'os-odl-sfc-ha': - <<: *gambia - - 'os-odl-sfc-noha': - <<: *gambia - - 'os-nosdn-calipso-noha': - <<: *gambia - - 'os-ovn-nofeature-ha': - <<: *gambia - - 'os-nosdn-nofeature-ha': - <<: *fraser - - 'os-odl-bgpvpn-ha': - <<: *fraser - - 'os-nosdn-nofeature-noha': - <<: *hunter - - 'os-nosdn-nofeature-ha': - <<: *hunter - - 'os-ovn-nofeature-ha': - <<: *hunter - - 'os-nosdn-nofeature-noha': - <<: *euphrates - - 'os-nosdn-nofeature-ha': - <<: *euphrates - - 'os-odl-nofeature-ha': - <<: *euphrates - - 'os-odl-nofeature-noha': - <<: *euphrates - - 'os-odl-bgpvpn-ha': - <<: *euphrates - - 'os-ovn-nofeature-noha': - <<: *euphrates - - 'os-nosdn-fdio-noha': - <<: *euphrates - - 'os-nosdn-fdio-ha': - <<: *euphrates - - 'os-nosdn-bar-ha': - <<: *euphrates - - 'os-nosdn-bar-noha': - <<: *euphrates - - 'os-nosdn-nofeature-ha-ipv6': - <<: *euphrates - - 'os-nosdn-ovs_dpdk-noha': - <<: *euphrates - - 'os-nosdn-ovs_dpdk-ha': - <<: *euphrates - - 'os-nosdn-kvm_ovs_dpdk-noha': - <<: *euphrates - - 'os-nosdn-kvm_ovs_dpdk-ha': - <<: *euphrates - - 'os-odl-sfc-noha': - <<: *euphrates - - 'os-odl-sfc-ha': - <<: *euphrates - - platform: - - 'baremetal' - - 'virtual' - - os_version: - - 'queens': - os_scenario: 'nofeature' - odl_branch: 'stable/oxygen' - - 'rocky': - os_scenario: 'rocky' - odl_branch: 'stable/oxygen' - - 'master': - os_scenario: 'nofeature' - odl_branch: 'stable/fluorine' - - topology: - - 'noha' - - 'ha' - - 'noha-allinone' - - snap_type: - - csit: - sdn: 'odl' - - functest: - sdn: 'nosdn' -# Fetch Logs Job -- job-template: - name: 'apex-fetch-logs-{stream}' - - concurrent: true - - disabled: false - scm: - - git-scm-gerrit - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - # yamllint enable rule:line-length - properties: - - logrotate-default - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - 'apex-fetch-logs' - -- job-template: - name: 'apex-runner-cperf-{stream}' - - # runner cperf job - project-type: 'multijob' - node: 'intel-pod2' - - disabled: false - - parameters: - - apex-parameter: - gs-pathname: '{gs-pathname}' - - project-parameter: - project: '{project}' - branch: '{branch}' - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: "Used for overriding the GIT URL coming from parameters macro." - - scm: - - git-scm - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: false - blocking-level: 'NODE' - blocking-jobs: - - 'apex-deploy.*' - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - description-setter: - description: "Deployed on $NODE_NAME" - - multijob: - name: 'Baremetal Deploy' - condition: ALWAYS - projects: - - name: 'apex-deploy-baremetal-{stream}' - node-parameters: false - current-parameters: true - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC= - OPNFV_CLEAN=yes - DEPLOY_SCENARIO={verify-scenario} - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - - multijob: - name: CPERF - condition: SUCCESSFUL - projects: - - name: 'cperf-apex-intel-pod2-daily-master' - node-parameters: true - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO={verify-scenario} - kill-phase-on: NEVER - abort-all-job: false - git-revision: false - -# Deploy job -- job-template: - name: 'apex-deploy-{platform}-{stream}' - - concurrent: true - - disabled: false - quiet-period: 30 - scm: - - git-scm-gerrit - - wrappers: - - timeout: - timeout: 140 - fail: true - - parameters: - - '{project}-{platform}-{stream}-defaults' - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - string: - name: DEPLOY_SCENARIO - default: '{verify-scenario}' - description: "Scenario to deploy with." - # yamllint disable rule:line-length - - string: - name: OPNFV_CLEAN - default: 'no' - description: "Use yes in lower case to invoke clean. Indicates if the deploy environment should be cleaned before deployment" - - # yamllint enable rule:line-length - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-deploy.*' - - 'functest.*' - - 'yardstick.*' - - 'dovetail.*' - - 'storperf.*' - - 'odl-netvirt.*' - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - description-setter: - description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO" - - 'apex-download-artifact' - - 'apex-deploy' - - 'clean-workspace' - - -# Virtual Deploy and Test -- job-template: - name: 'apex-virtual-{stream}' - - project-type: 'multijob' - - concurrent: true - - disabled: false - - scm: - - git-scm-gerrit - - parameters: - - '{project}-defaults' - - '{project}-virtual-{stream}-defaults' - - 'functest-suite-parameter' - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - string: - name: DEPLOY_SCENARIO - default: '{verify-scenario}' - description: "Scenario to deploy with." - - string: - name: ARTIFACT_VERSION - default: dev - description: "Used for overriding the ARTIFACT_VERSION" - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-runner.*' - - 'apex-run.*' - - 'apex-virtual-.*' - - 'apex-verify-gate-.*' - - 'odl-netvirt.*' - - 'apex-.*-promote.*' - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - description-setter: - description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO" - - multijob: - name: deploy-virtual - condition: SUCCESSFUL - projects: - - name: 'apex-deploy-virtual-{stream}' - current-parameters: false - predefined-parameters: | - ARTIFACT_VERSION=$ARTIFACT_VERSION - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - OPNFV_CLEAN=yes - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - PROMOTE=$PROMOTE - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: true - - multijob: - name: functest-smoke - condition: ALWAYS - projects: - - name: 'functest-apex-virtual-suite-{stream}' - current-parameters: false - predefined-parameters: | - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - FUNCTEST_MODE=$FUNCTEST_MODE - FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - multijob: - name: apex-fetch-logs - projects: - - name: 'apex-fetch-logs-{stream}' - current-parameters: false - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - -# Baremetal Deploy and Test -- job-template: - name: 'apex-{scenario}-baremetal-{scenario_stream}' - - project-type: 'multijob' - - disabled: false - - scm: - - git-scm - - parameters: - - '{project}-defaults' - - '{project}-baremetal-{scenario_stream}-defaults' - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - string: - name: DEPLOY_SCENARIO - default: '{scenario}' - description: "Scenario to deploy with." - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-verify.*' - - 'apex-runner.*' - - 'apex-.*-promote.*' - - 'apex-run.*' - - 'apex-.+-baremetal-.+' - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - description-setter: - description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO" - - multijob: - name: 'Baremetal Deploy' - condition: SUCCESSFUL - execution-type: SEQUENTIALLY - projects: - - name: 'apex-deploy-baremetal-{scenario_stream}' - node-parameters: true - current-parameters: true - predefined-parameters: | - OPNFV_CLEAN=yes - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC= - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-fetch-logs-{scenario_stream}' - current-parameters: true - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC= - node-parameters: true - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - shell: - !include-raw-escape: ./apex-functest-scenario.sh - - inject: - properties-file: functest_scenario - override-build-parameters: true - - multijob: - name: 'OPNFV Test Suite' - condition: ALWAYS - projects: - - name: 'apex-testsuite-{scenario}-baremetal-{scenario_stream}' - node-parameters: true - current-parameters: false - predefined-parameters: | - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - DOCKER_TAG=$DOCKER_TAG - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - multijob: - name: apex-fetch-logs - projects: - - name: 'apex-fetch-logs-{scenario_stream}' - current-parameters: true - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC= - node-parameters: true - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - publishers: - - groovy-postbuild: - script: - !include-raw-escape: ./update-build-result.groovy - -# Baremetal test job -- job-template: - name: 'apex-testsuite-{scenario}-baremetal-{scenario_stream}' - - project-type: 'multijob' - - disabled: false - - parameters: - - '{project}-defaults' - - '{project}-baremetal-{scenario_stream}-defaults' - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - string: - name: DEPLOY_SCENARIO - default: '{scenario}' - description: "Scenario to deploy with." - - string: - name: DOCKER_TAG - default: '' - description: Default docker tag to pass to functest - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-verify.*' - - 'apex-runner.*' - - 'apex-run.*' - - 'apex-testsuite-.+-baremetal-.+' - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - description-setter: - description: "Testing on $NODE_NAME - Scenario: $DEPLOY_SCENARIO" - - multijob: - name: Functest - condition: ALWAYS - projects: - - name: 'functest-apex-baremetal-daily-{scenario_stream}' - node-parameters: true - current-parameters: false - predefined-parameters: | - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - DOCKER_TAG=$DOCKER_TAG - kill-phase-on: NEVER - abort-all-job: false - git-revision: false - - multijob: - name: Yardstick - condition: ALWAYS - projects: - - name: 'yardstick-apex-baremetal-daily-{scenario_stream}' - node-parameters: true - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - kill-phase-on: NEVER - abort-all-job: false - git-revision: false - - multijob: - name: Dovetail-default-mandatory - condition: ALWAYS - projects: - - name: 'dovetail-apex-baremetal-default-mandatory-{scenario_stream}' - node-parameters: true - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - kill-phase-on: NEVER - enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/" - abort-all-job: false - git-revision: false - - multijob: - name: Dovetail-default-optional - condition: ALWAYS - projects: - - name: 'dovetail-apex-baremetal-default-optional-{scenario_stream}' - node-parameters: true - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - kill-phase-on: NEVER - enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/" - abort-all-job: false - git-revision: false - - multijob: - name: Dovetail-proposed_tests - condition: ALWAYS - projects: - - name: 'dovetail-apex-baremetal-proposed_tests-optional-{scenario_stream}' - node-parameters: true - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - kill-phase-on: NEVER - enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/" - abort-all-job: false - git-revision: false - - multijob: - name: StorPerf - condition: ALWAYS - projects: - - name: 'storperf-apex-baremetal-daily-{scenario_stream}' - node-parameters: true - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-nosdn-nofeature-ha/" - kill-phase-on: NEVER - abort-all-job: false - git-revision: false -# Build status is always success due conditional plugin prefetching -# build status before multijob phases execute -# - conditional-step: -# condition-kind: current-status -# condition-worst: SUCCESS -# condtion-best: SUCCESS -# on-evaluation-failure: mark-unstable -# steps: -# - shell: 'echo "Tests Passed"' - -- job-template: - name: 'apex-daily-{stream}' - - # Job template for daily build - # - # Required Variables: - # stream: branch with - in place of / (eg. stable) - # branch: branch (eg. stable) - project-type: 'multijob' - - disabled: '{obj:disable_daily}' - - scm: - - git-scm - - parameters: - - '{project}-defaults' - - '{project}-baremetal-{stream}-defaults' - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-daily.*' - - triggers: - - 'apex-{stream}' - - builders: - - multijob: - name: build - condition: SUCCESSFUL - projects: - - name: 'apex-build-{stream}' - current-parameters: false - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC= - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: true - - multijob: - name: 'Verify and upload ISO' - condition: SUCCESSFUL - projects: - - name: 'apex-verify-iso-{stream}' - current-parameters: false - predefined-parameters: | - BUILD_DIRECTORY=$WORKSPACE/../apex-build-{stream}/.build - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC= - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: true - - apex-builder-{stream} - -# snapshot info fetch -- job-template: - name: 'apex-fetch-snap-info' - - disabled: false - - parameters: - - '{project}-defaults' - - builders: - - shell: - !include-raw-escape: ./apex-fetch-snap-info.sh - -# snapshot create -- job-template: - name: 'apex-create-snapshot' - - disabled: false - - parameters: - - '{project}-defaults' - - builders: - - shell: - !include-raw-escape: ./apex-snapshot-create.sh - -# snapshot upload -- job-template: - name: 'apex-upload-snapshot' - - disabled: false - - parameters: - - '{project}-defaults' - - builders: - - inject: - properties-content: ARTIFACT_TYPE=snapshot - - 'apex-upload-artifact' - -# CSIT promote -- job-template: - name: 'apex-{snap_type}-promote-daily-{stream}-os-{os_version}-{topology}' - - # Job template for promoting CSIT Snapshots - # - # Required Variables: - # stream: branch with - in place of / (eg. stable) - # branch: branch (eg. stable) - node: '{virtual-slave}' - project-type: 'multijob' - disabled: '{disable_promote}' - - scm: - - git-scm - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - string: - name: ARTIFACT_VERSION - default: dev - description: "Used for overriding the ARTIFACT_VERSION" - - string: - name: PROMOTE - default: 'True' - description: "Used for overriding the PROMOTE" - - string: - name: GS_URL - default: 'artifacts.opnfv.org/apex/{os_version}/{topology}' - description: "User for overriding GS_URL from apex params" - - string: - name: OS_VERSION - default: '{os_version}' - description: OpenStack version short name - - string: - name: ODL_BRANCH - default: '{odl_branch}' - description: ODL branch being used - - string: - name: FORCE_PROMOTE - default: 'False' - description: "Used to force promotion and skip CSIT" - - string: - name: SNAP_TYPE - default: '{snap_type}' - description: Type of snapshot to promote - properties: - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-verify.*' - - 'apex-runner.*' - - 'apex-daily.*' - - 'apex-.*-promote.*' - - 'odl-netvirt.*' - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - triggers: - - '{stream}-{snap_type}-{os_version}' - - builders: - - multijob: - name: apex-virtual-deploy - condition: SUCCESSFUL - projects: - - name: 'apex-deploy-virtual-{stream}' - current-parameters: true - predefined-parameters: | - DEPLOY_SCENARIO=os-{sdn}-{os_scenario}-{topology}-{snap_type} - OPNFV_CLEAN=yes - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: true - - multijob: - name: fetch snapshot info - condition: SUCCESSFUL - projects: - - name: 'apex-fetch-snap-info' - current-parameters: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - - multijob: - name: test phase - condition: SUCCESSFUL - execution-type: SEQUENTIALLY - projects: - - name: cperf-apex-csit-master - predefined-parameters: | - ODL_BRANCH=$ODL_BRANCH - RC_FILE_PATH=/tmp/snap/overcloudrc - NODE_FILE_PATH=/tmp/snap/node.yaml - SSH_KEY_PATH=/tmp/snap/id_rsa - ODL_CONTAINERIZED=true - OS_VERSION=$OS_VERSION - SKIP_CSIT=$FORCE_PROMOTE - SNAP_TYPE=$SNAP_TYPE - node-parameters: true - kill-phase-on: NEVER - abort-all-job: false - enable-condition: "def m = '$SNAP_TYPE' ==~ /csit/" - - name: cperf-upload-logs-csit - predefined-parameters: | - ODL_BRANCH=$ODL_BRANCH - OS_VERSION=$OS_VERSION - SNAP_TYPE=$SNAP_TYPE - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - enable-condition: "def m = '$SNAP_TYPE' ==~ /csit/" - - name: 'functest-apex-virtual-suite-{stream}' - current-parameters: false - predefined-parameters: | - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - DOCKER_TAG=$DOCKER_TAG - FUNCTEST_SUITE_NAME=tempest_smoke - FUNCTEST_MODE=testcase - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: NEVER - enable-condition: "def m = '$SNAP_TYPE' ==~ /functest/" - abort-all-job: true - git-revision: false - - name: 'apex-fetch-logs-{stream}' - current-parameters: false - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - multijob: - name: create snapshot - condition: SUCCESSFUL - projects: - - name: 'apex-create-snapshot' - current-parameters: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - - multijob: - name: upload snapshot - condition: SUCCESSFUL - projects: - - name: 'apex-upload-snapshot' - current-parameters: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - -# FDIO promote -- job-template: - name: 'apex-fdio-promote-daily-{stream}' - - # Job template for promoting CSIT Snapshots - # - # Required Variables: - # stream: branch with - in place of / (eg. stable) - # branch: branch (eg. stable) - node: '{virtual-slave}' - project-type: 'multijob' - disabled: false - - scm: - - git-scm - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - properties: - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-verify.*' - - 'apex-deploy.*' - - 'apex-runner.*' - - 'apex-daily.*' - - builders: - - multijob: - name: build - condition: SUCCESSFUL - projects: - - name: 'apex-build-{stream}' - current-parameters: false - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: false - kill-phase-on: FAILURE - abort-all-job: true - git-revision: true - - multijob: - name: deploy-virtual - condition: SUCCESSFUL - projects: - - name: 'apex-deploy-virtual-{stream}' - current-parameters: false - predefined-parameters: | - DEPLOY_SCENARIO=os-odl_netvirt-fdio-noha - OPNFV_CLEAN=yes - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - PROMOTE=True - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - - multijob: - name: create snapshot - condition: SUCCESSFUL - projects: - - name: 'apex-create-snapshot' - current-parameters: false - predefined-parameters: | - SNAP_TYPE=fdio - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - - multijob: - name: upload snapshot - condition: SUCCESSFUL - projects: - - name: 'apex-upload-snapshot' - current-parameters: false - predefined-parameters: | - SNAP_TYPE=fdio - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - -# Flex job -- job-template: - name: 'apex-flex-daily-os-nosdn-nofeature-ha-{stream}' - - project-type: 'multijob' - - disabled: true - - node: 'flex-pod2' - - scm: - - git-scm - - triggers: - - 'apex-{stream}' - - parameters: - - '{project}-defaults' - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - string: - name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-ha' - description: "Scenario to deploy with." - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on this Jenkins Slave' - - string: - name: SSH_KEY - default: /root/.ssh/id_rsa - description: 'SSH key to use for Apex' - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-verify.*' - - 'apex-runner.*' - - 'apex-.*-promote.*' - - 'apex-run.*' - - 'apex-.+-baremetal-.+' - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - description-setter: - description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO" - - multijob: - name: 'Baremetal Deploy' - condition: SUCCESSFUL - projects: - - name: 'apex-deploy-baremetal-{stream}' - node-parameters: true - current-parameters: true - predefined-parameters: | - OPNFV_CLEAN=yes - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC= - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - - multijob: - name: Yardstick - condition: ALWAYS - projects: - - name: 'yardstick-apex-baremetal-daily-{stream}' - node-parameters: true - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - kill-phase-on: NEVER - abort-all-job: false - git-revision: false - - -######################## -# parameter macros -######################## -- parameter: - name: apex-parameter - parameters: - - string: - name: ARTIFACT_NAME - default: 'latest' - description: "RPM Artifact name that will be appended to GS_URL to deploy a specific artifact" - - string: - name: ARTIFACT_VERSION - default: 'daily' - description: "Artifact version type" - - string: - name: BUILD_DIRECTORY - default: $WORKSPACE/.build - description: "Directory where the build artifact will be located upon the completion of the build." - - string: - name: CACHE_DIRECTORY - default: $HOME/opnfv/apex-cache{gs-pathname} - description: "Directory where the cache to be used during the build is located." - # yamllint disable rule:line-length - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW." - # yamllint enable rule:line-length - - string: - name: GS_PATHNAME - default: '{gs-pathname}' - description: "Version directory where opnfv artifacts are stored in gs repository" - - string: - name: GS_URL - default: $GS_BASE{gs-pathname} - description: "URL to Google Storage." - - string: - name: PROMOTE - default: 'False' - description: "Flag to know if we should promote/upload snapshot artifacts." - -######################## -# builder macros -######################## - -# danube Builder -- builder: - name: apex-builder-danube - builders: - - multijob: - name: Baremetal Deploy and Test Phase - condition: SUCCESSFUL - projects: - - name: 'apex-os-nosdn-nofeature-noha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-nofeature-ha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-nofeature-ha-ipv6-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-ovs-noha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-ovs-ha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-fdio-noha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-fdio-ha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-kvm-ha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-kvm-noha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl_l2-fdio-noha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl_l2-fdio-ha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl_netvirt-fdio-noha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl_l2-sfc-noha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl_l3-nofeature-noha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl_l3-nofeature-ha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl_l3-ovs-noha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl_l3-ovs-ha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl-bgpvpn-ha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl-gluon-noha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl_l3-fdio-noha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl_l3-fdio-ha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl_l3-fdio_dvr-noha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl_l3-fdio_dvr-ha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl_l3-csit-noha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-onos-nofeature-ha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-ovn-nofeature-noha-baremetal-danube' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - -# master Builder -- builder: - name: apex-builder-master - builders: - - multijob: - name: Baremetal Deploy and Test Phase - condition: SUCCESSFUL - projects: - - name: 'apex-os-nosdn-nofeature-noha-baremetal-master' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-nofeature-ha-baremetal-master' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - -# gambia Builder -- builder: - name: apex-builder-gambia - builders: - - multijob: - name: Baremetal Deploy and Test Phase - condition: SUCCESSFUL - projects: - - name: 'apex-os-nosdn-nofeature-noha-baremetal-gambia' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-nofeature-ha-baremetal-gambia' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-nofeature-ha-ipv6-baremetal-gambia' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl-nofeature-noha-baremetal-gambia' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl-nofeature-ha-baremetal-gambia' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-k8s-nosdn-nofeature-noha-baremetal-gambia' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl-bgpvpn-ha-baremetal-gambia' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl-bgpvpn-noha-baremetal-gambia' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl-sfc-ha-baremetal-gambia' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl-sfc-noha-baremetal-gambia' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-calipso-noha-baremetal-gambia' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-ovn-nofeature-ha-baremetal-gambia' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - -# fraser Builder -- builder: - name: apex-builder-fraser - builders: - - multijob: - name: Baremetal Deploy and Test Phase - condition: SUCCESSFUL - projects: - - name: 'apex-os-nosdn-nofeature-ha-baremetal-fraser' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl-bgpvpn-ha-baremetal-fraser' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - -# hunter Builder -- builder: - name: apex-builder-hunter - builders: - - multijob: - name: Baremetal Deploy and Test Phase - condition: SUCCESSFUL - projects: - - name: 'apex-os-nosdn-nofeature-noha-baremetal-hunter' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-nofeature-ha-baremetal-hunter' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-ovn-nofeature-ha-baremetal-hunter' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - -# euphrates Builder -- builder: - name: apex-builder-euphrates - builders: - - multijob: - name: Baremetal Deploy and Test Phase - condition: SUCCESSFUL - projects: - - name: 'apex-os-nosdn-nofeature-noha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-nofeature-ha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl-nofeature-ha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl-nofeature-noha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl-bgpvpn-ha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-ovn-nofeature-noha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-fdio-noha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-fdio-ha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-bar-ha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-bar-noha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-nofeature-ha-ipv6-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-ovs_dpdk-noha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-ovs_dpdk-ha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-kvm_ovs_dpdk-noha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-nosdn-kvm_ovs_dpdk-ha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl-sfc-noha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-os-odl-sfc-ha-baremetal-euphrates' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false -- builder: - name: 'apex-upload-artifact' - builders: - - shell: - !include-raw: ./apex-upload-artifact.sh - -- builder: - name: 'apex-download-artifact' - builders: - - shell: - !include-raw: ./apex-download-artifact.sh - -- builder: - name: 'apex-deploy' - builders: - - shell: - !include-raw: ./apex-deploy.sh - -- builder: - name: 'apex-fetch-logs' - builders: - - shell: - !include-raw: ./apex-fetch-logs.sh - -####################### -# trigger macros -# timed is in format: 'min hour daymonth month dayweek' -######################## -- trigger: - name: 'apex-master' - triggers: - - timed: '0 0 1-31/2 * *' - -- trigger: - name: 'apex-hunter' - triggers: - - timed: '0 4 2-30/2 * *' - -- trigger: - name: 'apex-gambia' - triggers: - - timed: '0 4 2-30/2 * *' - -- trigger: - name: 'apex-fraser' - triggers: - - timed: '0 0 2-30/2 * *' - -- trigger: - name: 'apex-euphrates' - triggers: - - timed: '0 0 2-30/2 * *' - -- trigger: - name: 'apex-danube' - triggers: - - timed: '0 3 1 1 7' - -- trigger: - name: 'master-csit-master' - triggers: - - timed: '0 5 * * *' - -- trigger: - name: 'master-csit-rocky' - triggers: - - timed: '0 5 * * *' - -- trigger: - name: 'master-csit-queens' - triggers: - - timed: '' - -- trigger: - name: 'hunter-csit-master' - triggers: - - timed: '' - -- trigger: - name: 'hunter-csit-rocky' - triggers: - - timed: '0 5 * * *' - -- trigger: - name: 'hunter-csit-queens' - triggers: - - timed: '' - -- trigger: - name: 'gambia-csit-master' - triggers: - - timed: '' - -- trigger: - name: 'gambia-csit-rocky' - triggers: - - timed: '' - -- trigger: - name: 'gambia-csit-queens' - triggers: - - timed: '0 5 * * *' - -- trigger: - name: 'fraser-csit-master' - triggers: - - timed: '' - -- trigger: - name: 'fraser-csit-rocky' - triggers: - - timed: '' - -- trigger: - name: 'fraser-csit-queens' - triggers: - - timed: '' - -- trigger: - name: 'euphrates-csit-master' - triggers: - - timed: '' - -- trigger: - name: 'euphrates-csit-rocky' - triggers: - - timed: '' - -- trigger: - name: 'euphrates-csit-queens' - triggers: - - timed: '' - -- trigger: - name: 'danube-csit-master' - triggers: - - timed: '' - -- trigger: - name: 'danube-csit-rocky' - triggers: - - timed: '' - -- trigger: - name: 'danube-csit-queens' - triggers: - - timed: '' -- trigger: - name: 'master-functest-master' - triggers: - - timed: '0 3 * * *' - -- trigger: - name: 'master-functest-rocky' - triggers: - - timed: '0 3 * * *' - -- trigger: - name: 'master-functest-queens' - triggers: - - timed: '' - -- trigger: - name: 'hunter-functest-master' - triggers: - - timed: '' - -- trigger: - name: 'hunter-functest-rocky' - triggers: - - timed: '0 3 * * *' - -- trigger: - name: 'hunter-functest-queens' - triggers: - - timed: '' - -- trigger: - name: 'gambia-functest-master' - triggers: - - timed: '' - -- trigger: - name: 'gambia-functest-rocky' - triggers: - - timed: '' - -- trigger: - name: 'gambia-functest-queens' - triggers: - - timed: '0 3 * * *' - -- trigger: - name: 'fraser-functest-master' - triggers: - - timed: '' - -- trigger: - name: 'fraser-functest-rocky' - triggers: - - timed: '' - -- trigger: - name: 'fraser-functest-queens' - triggers: - - timed: '' - -- trigger: - name: 'euphrates-functest-master' - triggers: - - timed: '' - -- trigger: - name: 'euphrates-functest-rocky' - triggers: - - timed: '' - -- trigger: - name: 'euphrates-functest-queens' - triggers: - - timed: '' - -- trigger: - name: 'danube-functest-master' - triggers: - - timed: '' - -- trigger: - name: 'danube-functest-rocky' - triggers: - - timed: '' - -- trigger: - name: 'danube-functest-queens' - triggers: - - timed: '' diff --git a/jjb/apex/apex.yaml.j2 b/jjb/apex/apex.yaml.j2 deleted file mode 100644 index 293aacecb..000000000 --- a/jjb/apex/apex.yaml.j2 +++ /dev/null @@ -1,1361 +0,0 @@ ---- -- project: - name: 'apex' - project: 'apex' - jobs: - - 'apex-fetch-logs-{stream}' - - 'apex-runner-cperf-{stream}' - - 'apex-virtual-{stream}' - - 'apex-deploy-{platform}-{stream}' - - 'apex-daily-{stream}' - - 'apex-{snap_type}-promote-daily-{stream}-os-{os_version}-{topology}' - - 'apex-fdio-promote-daily-{stream}' - - 'apex-{scenario}-baremetal-{scenario_stream}' - - 'apex-testsuite-{scenario}-baremetal-{scenario_stream}' - - 'apex-upload-snapshot' - - 'apex-create-snapshot' - - 'apex-fetch-snap-info' - - 'apex-flex-daily-os-nosdn-nofeature-ha-{stream}' - # stream: branch with - in place of / (eg. stable-arno) - # branch: branch (eg. stable/arno) - stream: - - master: &master - branch: 'master' - gs-pathname: '' - build-slave: 'apex-build-master' - virtual-slave: 'apex-virtual-master' - baremetal-slave: 'apex-baremetal-master' - verify-scenario: 'os-nosdn-nofeature-noha' - scenario_stream: 'master' - disable_daily: true - disable_promote: true - - hunter: &hunter - branch: 'stable/hunter' - gs-pathname: '/hunter' - build-slave: 'apex-build-master' - virtual-slave: 'apex-virtual-master' - baremetal-slave: 'apex-baremetal-master' - verify-scenario: 'os-nosdn-nofeature-ha' - scenario_stream: 'hunter' - disable_daily: true - disable_promote: true - - gambia: &gambia - branch: 'stable/gambia' - gs-pathname: '/gambia' - build-slave: 'apex-build-master' - virtual-slave: 'apex-virtual-master' - baremetal-slave: 'apex-baremetal-master' - verify-scenario: 'os-nosdn-nofeature-ha' - scenario_stream: 'gambia' - disable_daily: true - disable_promote: true - - fraser: &fraser - branch: 'stable/fraser' - gs-pathname: '/fraser' - build-slave: 'apex-build-master' - virtual-slave: 'apex-virtual-master' - baremetal-slave: 'apex-baremetal-master' - verify-scenario: 'os-nosdn-nofeature-ha' - scenario_stream: 'fraser' - disable_daily: true - disable_promote: true - - euphrates: &euphrates - branch: 'stable/euphrates' - gs-pathname: '/euphrates' - build-slave: 'apex-build-master' - virtual-slave: 'apex-virtual-master' - baremetal-slave: 'apex-baremetal-master' - verify-scenario: 'os-odl-nofeature-ha' - scenario_stream: 'euphrates' - disable_daily: true - disable_promote: true - - danube: &danube - branch: 'stable/danube' - gs-pathname: '/danube' - build-slave: 'apex-build-danube' - virtual-slave: 'apex-virtual-danube' - baremetal-slave: 'apex-baremetal-danube' - verify-scenario: 'os-odl_l3-nofeature-ha' - scenario_stream: 'danube' - disabled: true - disable_daily: true - disable_promote: true - - scenario: - {%- for stream in scenarios %} - {%- for scenario in scenarios[stream] %} - - '{{scenario}}': - <<: *{{stream}} - {%- endfor %} - {%- endfor %} - - platform: - - 'baremetal' - - 'virtual' - - os_version: - - 'queens': - os_scenario: 'nofeature' - odl_branch: 'stable/oxygen' - - 'rocky': - os_scenario: 'rocky' - odl_branch: 'stable/oxygen' - - 'master': - os_scenario: 'nofeature' - odl_branch: 'stable/fluorine' - - topology: - - 'noha' - - 'ha' - - 'noha-allinone' - - snap_type: - - csit: - sdn: 'odl' - - functest: - sdn: 'nosdn' -# Fetch Logs Job -- job-template: - name: 'apex-fetch-logs-{stream}' - - concurrent: true - - disabled: false - scm: - - git-scm-gerrit - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - # yamllint enable rule:line-length - properties: - - logrotate-default - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - 'apex-fetch-logs' - -- job-template: - name: 'apex-runner-cperf-{stream}' - - # runner cperf job - project-type: 'multijob' - node: 'intel-pod2' - - disabled: false - - parameters: - - apex-parameter: - gs-pathname: '{gs-pathname}' - - project-parameter: - project: '{project}' - branch: '{branch}' - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: "Used for overriding the GIT URL coming from parameters macro." - - scm: - - git-scm - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: false - blocking-level: 'NODE' - blocking-jobs: - - 'apex-deploy.*' - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - description-setter: - description: "Deployed on $NODE_NAME" - - multijob: - name: 'Baremetal Deploy' - condition: ALWAYS - projects: - - name: 'apex-deploy-baremetal-{stream}' - node-parameters: false - current-parameters: true - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC= - OPNFV_CLEAN=yes - DEPLOY_SCENARIO={verify-scenario} - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - - multijob: - name: CPERF - condition: SUCCESSFUL - projects: - - name: 'cperf-apex-intel-pod2-daily-master' - node-parameters: true - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO={verify-scenario} - kill-phase-on: NEVER - abort-all-job: false - git-revision: false - -# Deploy job -- job-template: - name: 'apex-deploy-{platform}-{stream}' - - concurrent: true - - disabled: false - quiet-period: 30 - scm: - - git-scm-gerrit - - wrappers: - - timeout: - timeout: 140 - fail: true - - parameters: - - '{project}-{platform}-{stream}-defaults' - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - string: - name: DEPLOY_SCENARIO - default: '{verify-scenario}' - description: "Scenario to deploy with." - # yamllint disable rule:line-length - - string: - name: OPNFV_CLEAN - default: 'no' - description: "Use yes in lower case to invoke clean. Indicates if the deploy environment should be cleaned before deployment" - - # yamllint enable rule:line-length - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-deploy.*' - - 'functest.*' - - 'yardstick.*' - - 'dovetail.*' - - 'storperf.*' - - 'odl-netvirt.*' - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - description-setter: - description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO" - - 'apex-download-artifact' - - 'apex-deploy' - - 'clean-workspace' - - -# Virtual Deploy and Test -- job-template: - name: 'apex-virtual-{stream}' - - project-type: 'multijob' - - concurrent: true - - disabled: false - - scm: - - git-scm-gerrit - - parameters: - - '{project}-defaults' - - '{project}-virtual-{stream}-defaults' - - 'functest-suite-parameter' - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - string: - name: DEPLOY_SCENARIO - default: '{verify-scenario}' - description: "Scenario to deploy with." - - string: - name: ARTIFACT_VERSION - default: dev - description: "Used for overriding the ARTIFACT_VERSION" - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-runner.*' - - 'apex-run.*' - - 'apex-virtual-.*' - - 'apex-verify-gate-.*' - - 'odl-netvirt.*' - - 'apex-.*-promote.*' - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - description-setter: - description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO" - - multijob: - name: deploy-virtual - condition: SUCCESSFUL - projects: - - name: 'apex-deploy-virtual-{stream}' - current-parameters: false - predefined-parameters: | - ARTIFACT_VERSION=$ARTIFACT_VERSION - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - OPNFV_CLEAN=yes - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - PROMOTE=$PROMOTE - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: true - - multijob: - name: functest-smoke - condition: ALWAYS - projects: - - name: 'functest-apex-virtual-suite-{stream}' - current-parameters: false - predefined-parameters: | - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - FUNCTEST_MODE=$FUNCTEST_MODE - FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - multijob: - name: apex-fetch-logs - projects: - - name: 'apex-fetch-logs-{stream}' - current-parameters: false - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - -# Baremetal Deploy and Test -- job-template: - name: 'apex-{scenario}-baremetal-{scenario_stream}' - - project-type: 'multijob' - - disabled: false - - scm: - - git-scm - - parameters: - - '{project}-defaults' - - '{project}-baremetal-{scenario_stream}-defaults' - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - string: - name: DEPLOY_SCENARIO - default: '{scenario}' - description: "Scenario to deploy with." - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-verify.*' - - 'apex-runner.*' - - 'apex-.*-promote.*' - - 'apex-run.*' - - 'apex-.+-baremetal-.+' - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - description-setter: - description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO" - - multijob: - name: 'Baremetal Deploy' - condition: SUCCESSFUL - execution-type: SEQUENTIALLY - projects: - - name: 'apex-deploy-baremetal-{scenario_stream}' - node-parameters: true - current-parameters: true - predefined-parameters: | - OPNFV_CLEAN=yes - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC= - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - name: 'apex-fetch-logs-{scenario_stream}' - current-parameters: true - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC= - node-parameters: true - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - shell: - !include-raw-escape: ./apex-functest-scenario.sh - - inject: - properties-file: functest_scenario - override-build-parameters: true - - multijob: - name: 'OPNFV Test Suite' - condition: ALWAYS - projects: - - name: 'apex-testsuite-{scenario}-baremetal-{scenario_stream}' - node-parameters: true - current-parameters: false - predefined-parameters: | - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - DOCKER_TAG=$DOCKER_TAG - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - multijob: - name: apex-fetch-logs - projects: - - name: 'apex-fetch-logs-{scenario_stream}' - current-parameters: true - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC= - node-parameters: true - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - publishers: - - groovy-postbuild: - script: - !include-raw-escape: ./update-build-result.groovy - -# Baremetal test job -- job-template: - name: 'apex-testsuite-{scenario}-baremetal-{scenario_stream}' - - project-type: 'multijob' - - disabled: false - - parameters: - - '{project}-defaults' - - '{project}-baremetal-{scenario_stream}-defaults' - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - string: - name: DEPLOY_SCENARIO - default: '{scenario}' - description: "Scenario to deploy with." - - string: - name: DOCKER_TAG - default: '' - description: Default docker tag to pass to functest - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-verify.*' - - 'apex-runner.*' - - 'apex-run.*' - - 'apex-testsuite-.+-baremetal-.+' - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - description-setter: - description: "Testing on $NODE_NAME - Scenario: $DEPLOY_SCENARIO" - - multijob: - name: Functest - condition: ALWAYS - projects: - - name: 'functest-apex-baremetal-daily-{scenario_stream}' - node-parameters: true - current-parameters: false - predefined-parameters: | - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - DOCKER_TAG=$DOCKER_TAG - kill-phase-on: NEVER - abort-all-job: false - git-revision: false - - multijob: - name: Yardstick - condition: ALWAYS - projects: - - name: 'yardstick-apex-baremetal-daily-{scenario_stream}' - node-parameters: true - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - kill-phase-on: NEVER - abort-all-job: false - git-revision: false - - multijob: - name: Dovetail-default-mandatory - condition: ALWAYS - projects: - - name: 'dovetail-apex-baremetal-default-mandatory-{scenario_stream}' - node-parameters: true - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - kill-phase-on: NEVER - enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/" - abort-all-job: false - git-revision: false - - multijob: - name: Dovetail-default-optional - condition: ALWAYS - projects: - - name: 'dovetail-apex-baremetal-default-optional-{scenario_stream}' - node-parameters: true - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - kill-phase-on: NEVER - enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/" - abort-all-job: false - git-revision: false - - multijob: - name: Dovetail-proposed_tests - condition: ALWAYS - projects: - - name: 'dovetail-apex-baremetal-proposed_tests-optional-{scenario_stream}' - node-parameters: true - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - kill-phase-on: NEVER - enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-(nosdn-nofeature|odl-bgpvpn)-ha/" - abort-all-job: false - git-revision: false - - multijob: - name: StorPerf - condition: ALWAYS - projects: - - name: 'storperf-apex-baremetal-daily-{scenario_stream}' - node-parameters: true - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - enable-condition: "def m = '$DEPLOY_SCENARIO' ==~ /os-nosdn-nofeature-ha/" - kill-phase-on: NEVER - abort-all-job: false - git-revision: false -# Build status is always success due conditional plugin prefetching -# build status before multijob phases execute -# - conditional-step: -# condition-kind: current-status -# condition-worst: SUCCESS -# condtion-best: SUCCESS -# on-evaluation-failure: mark-unstable -# steps: -# - shell: 'echo "Tests Passed"' - -- job-template: - name: 'apex-daily-{stream}' - - # Job template for daily build - # - # Required Variables: - # stream: branch with - in place of / (eg. stable) - # branch: branch (eg. stable) - project-type: 'multijob' - - disabled: '{obj:disable_daily}' - - scm: - - git-scm - - parameters: - - '{project}-defaults' - - '{project}-baremetal-{stream}-defaults' - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-daily.*' - - triggers: - - 'apex-{stream}' - - builders: - - multijob: - name: build - condition: SUCCESSFUL - projects: - - name: 'apex-build-{stream}' - current-parameters: false - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC= - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: true - - multijob: - name: 'Verify and upload ISO' - condition: SUCCESSFUL - projects: - - name: 'apex-verify-iso-{stream}' - current-parameters: false - predefined-parameters: | - BUILD_DIRECTORY=$WORKSPACE/../apex-build-{stream}/.build - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC= - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: true - - apex-builder-{stream} - -# snapshot info fetch -- job-template: - name: 'apex-fetch-snap-info' - - disabled: false - - parameters: - - '{project}-defaults' - - builders: - - shell: - !include-raw-escape: ./apex-fetch-snap-info.sh - -# snapshot create -- job-template: - name: 'apex-create-snapshot' - - disabled: false - - parameters: - - '{project}-defaults' - - builders: - - shell: - !include-raw-escape: ./apex-snapshot-create.sh - -# snapshot upload -- job-template: - name: 'apex-upload-snapshot' - - disabled: false - - parameters: - - '{project}-defaults' - - builders: - - inject: - properties-content: ARTIFACT_TYPE=snapshot - - 'apex-upload-artifact' - -# CSIT promote -- job-template: - name: 'apex-{snap_type}-promote-daily-{stream}-os-{os_version}-{topology}' - - # Job template for promoting CSIT Snapshots - # - # Required Variables: - # stream: branch with - in place of / (eg. stable) - # branch: branch (eg. stable) - node: '{virtual-slave}' - project-type: 'multijob' - disabled: '{disable_promote}' - - scm: - - git-scm - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - string: - name: ARTIFACT_VERSION - default: dev - description: "Used for overriding the ARTIFACT_VERSION" - - string: - name: PROMOTE - default: 'True' - description: "Used for overriding the PROMOTE" - - string: - name: GS_URL - default: 'artifacts.opnfv.org/apex/{os_version}/{topology}' - description: "User for overriding GS_URL from apex params" - - string: - name: OS_VERSION - default: '{os_version}' - description: OpenStack version short name - - string: - name: ODL_BRANCH - default: '{odl_branch}' - description: ODL branch being used - - string: - name: FORCE_PROMOTE - default: 'False' - description: "Used to force promotion and skip CSIT" - - string: - name: SNAP_TYPE - default: '{snap_type}' - description: Type of snapshot to promote - properties: - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-verify.*' - - 'apex-runner.*' - - 'apex-daily.*' - - 'apex-.*-promote.*' - - 'odl-netvirt.*' - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - triggers: - - '{stream}-{snap_type}-{os_version}' - - builders: - - multijob: - name: apex-virtual-deploy - condition: SUCCESSFUL - projects: - - name: 'apex-deploy-virtual-{stream}' - current-parameters: true - predefined-parameters: | - DEPLOY_SCENARIO=os-{sdn}-{os_scenario}-{topology}-{snap_type} - OPNFV_CLEAN=yes - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: true - - multijob: - name: fetch snapshot info - condition: SUCCESSFUL - projects: - - name: 'apex-fetch-snap-info' - current-parameters: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - - multijob: - name: test phase - condition: SUCCESSFUL - execution-type: SEQUENTIALLY - projects: - - name: cperf-apex-csit-master - predefined-parameters: | - ODL_BRANCH=$ODL_BRANCH - RC_FILE_PATH=/tmp/snap/overcloudrc - NODE_FILE_PATH=/tmp/snap/node.yaml - SSH_KEY_PATH=/tmp/snap/id_rsa - ODL_CONTAINERIZED=true - OS_VERSION=$OS_VERSION - SKIP_CSIT=$FORCE_PROMOTE - SNAP_TYPE=$SNAP_TYPE - node-parameters: true - kill-phase-on: NEVER - abort-all-job: false - enable-condition: "def m = '$SNAP_TYPE' ==~ /csit/" - - name: cperf-upload-logs-csit - predefined-parameters: | - ODL_BRANCH=$ODL_BRANCH - OS_VERSION=$OS_VERSION - SNAP_TYPE=$SNAP_TYPE - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: false - enable-condition: "def m = '$SNAP_TYPE' ==~ /csit/" - - name: 'functest-apex-virtual-suite-{stream}' - current-parameters: false - predefined-parameters: | - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - DOCKER_TAG=$DOCKER_TAG - FUNCTEST_SUITE_NAME=tempest_smoke - FUNCTEST_MODE=testcase - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: NEVER - enable-condition: "def m = '$SNAP_TYPE' ==~ /functest/" - abort-all-job: true - git-revision: false - - name: 'apex-fetch-logs-{stream}' - current-parameters: false - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: true - kill-phase-on: NEVER - abort-all-job: true - git-revision: false - - multijob: - name: create snapshot - condition: SUCCESSFUL - projects: - - name: 'apex-create-snapshot' - current-parameters: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - - multijob: - name: upload snapshot - condition: SUCCESSFUL - projects: - - name: 'apex-upload-snapshot' - current-parameters: true - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - -# FDIO promote -- job-template: - name: 'apex-fdio-promote-daily-{stream}' - - # Job template for promoting CSIT Snapshots - # - # Required Variables: - # stream: branch with - in place of / (eg. stable) - # branch: branch (eg. stable) - node: '{virtual-slave}' - project-type: 'multijob' - disabled: false - - scm: - - git-scm - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - properties: - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-verify.*' - - 'apex-deploy.*' - - 'apex-runner.*' - - 'apex-daily.*' - - builders: - - multijob: - name: build - condition: SUCCESSFUL - projects: - - name: 'apex-build-{stream}' - current-parameters: false - predefined-parameters: | - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - node-parameters: false - kill-phase-on: FAILURE - abort-all-job: true - git-revision: true - - multijob: - name: deploy-virtual - condition: SUCCESSFUL - projects: - - name: 'apex-deploy-virtual-{stream}' - current-parameters: false - predefined-parameters: | - DEPLOY_SCENARIO=os-odl_netvirt-fdio-noha - OPNFV_CLEAN=yes - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - PROMOTE=True - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - - multijob: - name: create snapshot - condition: SUCCESSFUL - projects: - - name: 'apex-create-snapshot' - current-parameters: false - predefined-parameters: | - SNAP_TYPE=fdio - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - - multijob: - name: upload snapshot - condition: SUCCESSFUL - projects: - - name: 'apex-upload-snapshot' - current-parameters: false - predefined-parameters: | - SNAP_TYPE=fdio - node-parameters: true - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - -# Flex job -- job-template: - name: 'apex-flex-daily-os-nosdn-nofeature-ha-{stream}' - - project-type: 'multijob' - - disabled: true - - node: 'flex-pod2' - - scm: - - git-scm - - triggers: - - 'apex-{stream}' - - parameters: - - '{project}-defaults' - - project-parameter: - project: '{project}' - branch: '{branch}' - - apex-parameter: - gs-pathname: '{gs-pathname}' - - string: - name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-ha' - description: "Scenario to deploy with." - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: 'Git URL to use on this Jenkins Slave' - - string: - name: SSH_KEY - default: /root/.ssh/id_rsa - description: 'SSH key to use for Apex' - - properties: - - logrotate-default - - build-blocker: - use-build-blocker: true - blocking-level: 'NODE' - blocking-jobs: - - 'apex-verify.*' - - 'apex-runner.*' - - 'apex-.*-promote.*' - - 'apex-run.*' - - 'apex-.+-baremetal-.+' - - throttle: - max-per-node: 1 - max-total: 10 - option: 'project' - - builders: - - description-setter: - description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO" - - multijob: - name: 'Baremetal Deploy' - condition: SUCCESSFUL - projects: - - name: 'apex-deploy-baremetal-{stream}' - node-parameters: true - current-parameters: true - predefined-parameters: | - OPNFV_CLEAN=yes - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC= - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - kill-phase-on: FAILURE - abort-all-job: true - git-revision: false - - multijob: - name: Yardstick - condition: ALWAYS - projects: - - name: 'yardstick-apex-baremetal-daily-{stream}' - node-parameters: true - current-parameters: false - predefined-parameters: - DEPLOY_SCENARIO=$DEPLOY_SCENARIO - kill-phase-on: NEVER - abort-all-job: false - git-revision: false - - -######################## -# parameter macros -######################## -- parameter: - name: apex-parameter - parameters: - - string: - name: ARTIFACT_NAME - default: 'latest' - description: "RPM Artifact name that will be appended to GS_URL to deploy a specific artifact" - - string: - name: ARTIFACT_VERSION - default: 'daily' - description: "Artifact version type" - - string: - name: BUILD_DIRECTORY - default: $WORKSPACE/.build - description: "Directory where the build artifact will be located upon the completion of the build." - - string: - name: CACHE_DIRECTORY - default: $HOME/opnfv/apex-cache{gs-pathname} - description: "Directory where the cache to be used during the build is located." - # yamllint disable rule:line-length - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - description: "Used for overriding the GIT URL coming from Global Jenkins configuration in case if the stuff is done on none-LF HW." - # yamllint enable rule:line-length - - string: - name: GS_PATHNAME - default: '{gs-pathname}' - description: "Version directory where opnfv artifacts are stored in gs repository" - - string: - name: GS_URL - default: $GS_BASE{gs-pathname} - description: "URL to Google Storage." - - string: - name: PROMOTE - default: 'False' - description: "Flag to know if we should promote/upload snapshot artifacts." - -######################## -# builder macros -######################## -{% for stream in scenarios %} -# {{ stream }} Builder -- builder: - name: apex-builder-{{ stream }} - builders: - - multijob: - name: Baremetal Deploy and Test Phase - condition: SUCCESSFUL - projects: -{%- for scenario in scenarios[stream] %} - - name: 'apex-{{ scenario }}-baremetal-{{ stream }}' - node-parameters: false - current-parameters: false - predefined-parameters: | - OPNFV_CLEAN=yes - kill-phase-on: NEVER - abort-all-job: true - git-revision: false -{%- endfor %} -{% endfor -%} - -- builder: - name: 'apex-upload-artifact' - builders: - - shell: - !include-raw: ./apex-upload-artifact.sh - -- builder: - name: 'apex-download-artifact' - builders: - - shell: - !include-raw: ./apex-download-artifact.sh - -- builder: - name: 'apex-deploy' - builders: - - shell: - !include-raw: ./apex-deploy.sh - -- builder: - name: 'apex-fetch-logs' - builders: - - shell: - !include-raw: ./apex-fetch-logs.sh - -####################### -# trigger macros -# timed is in format: 'min hour daymonth month dayweek' -######################## -- trigger: - name: 'apex-master' - triggers: - - timed: '0 0 1-31/2 * *' - -- trigger: - name: 'apex-hunter' - triggers: - - timed: '0 4 2-30/2 * *' - -- trigger: - name: 'apex-gambia' - triggers: - - timed: '0 4 2-30/2 * *' - -- trigger: - name: 'apex-fraser' - triggers: - - timed: '0 0 2-30/2 * *' - -- trigger: - name: 'apex-euphrates' - triggers: - - timed: '0 0 2-30/2 * *' - -- trigger: - name: 'apex-danube' - triggers: - - timed: '0 3 1 1 7' - -- trigger: - name: 'master-csit-master' - triggers: - - timed: '0 5 * * *' - -- trigger: - name: 'master-csit-rocky' - triggers: - - timed: '0 5 * * *' - -- trigger: - name: 'master-csit-queens' - triggers: - - timed: '' - -- trigger: - name: 'hunter-csit-master' - triggers: - - timed: '' - -- trigger: - name: 'hunter-csit-rocky' - triggers: - - timed: '0 5 * * *' - -- trigger: - name: 'hunter-csit-queens' - triggers: - - timed: '' - -- trigger: - name: 'gambia-csit-master' - triggers: - - timed: '' - -- trigger: - name: 'gambia-csit-rocky' - triggers: - - timed: '' - -- trigger: - name: 'gambia-csit-queens' - triggers: - - timed: '0 5 * * *' - -- trigger: - name: 'fraser-csit-master' - triggers: - - timed: '' - -- trigger: - name: 'fraser-csit-rocky' - triggers: - - timed: '' - -- trigger: - name: 'fraser-csit-queens' - triggers: - - timed: '' - -- trigger: - name: 'euphrates-csit-master' - triggers: - - timed: '' - -- trigger: - name: 'euphrates-csit-rocky' - triggers: - - timed: '' - -- trigger: - name: 'euphrates-csit-queens' - triggers: - - timed: '' - -- trigger: - name: 'danube-csit-master' - triggers: - - timed: '' - -- trigger: - name: 'danube-csit-rocky' - triggers: - - timed: '' - -- trigger: - name: 'danube-csit-queens' - triggers: - - timed: '' -- trigger: - name: 'master-functest-master' - triggers: - - timed: '0 3 * * *' - -- trigger: - name: 'master-functest-rocky' - triggers: - - timed: '0 3 * * *' - -- trigger: - name: 'master-functest-queens' - triggers: - - timed: '' - -- trigger: - name: 'hunter-functest-master' - triggers: - - timed: '' - -- trigger: - name: 'hunter-functest-rocky' - triggers: - - timed: '0 3 * * *' - -- trigger: - name: 'hunter-functest-queens' - triggers: - - timed: '' - -- trigger: - name: 'gambia-functest-master' - triggers: - - timed: '' - -- trigger: - name: 'gambia-functest-rocky' - triggers: - - timed: '' - -- trigger: - name: 'gambia-functest-queens' - triggers: - - timed: '0 3 * * *' - -- trigger: - name: 'fraser-functest-master' - triggers: - - timed: '' - -- trigger: - name: 'fraser-functest-rocky' - triggers: - - timed: '' - -- trigger: - name: 'fraser-functest-queens' - triggers: - - timed: '' - -- trigger: - name: 'euphrates-functest-master' - triggers: - - timed: '' - -- trigger: - name: 'euphrates-functest-rocky' - triggers: - - timed: '' - -- trigger: - name: 'euphrates-functest-queens' - triggers: - - timed: '' - -- trigger: - name: 'danube-functest-master' - triggers: - - timed: '' - -- trigger: - name: 'danube-functest-rocky' - triggers: - - timed: '' - -- trigger: - name: 'danube-functest-queens' - triggers: - - timed: '' diff --git a/jjb/apex/scenarios.yaml.hidden b/jjb/apex/scenarios.yaml.hidden deleted file mode 100644 index d9d32b473..000000000 --- a/jjb/apex/scenarios.yaml.hidden +++ /dev/null @@ -1,68 +0,0 @@ -master: - - 'os-nosdn-nofeature-noha' - - 'os-nosdn-nofeature-ha' -hunter: - - 'os-nosdn-nofeature-noha' - - 'os-nosdn-nofeature-ha' - - 'os-ovn-nofeature-ha' -gambia: - - 'os-nosdn-nofeature-noha' - - 'os-nosdn-nofeature-ha' - - 'os-nosdn-nofeature-ha-ipv6' - - 'os-odl-nofeature-noha' - - 'os-odl-nofeature-ha' - - 'k8s-nosdn-nofeature-noha' - - 'os-odl-bgpvpn-ha' - - 'os-odl-bgpvpn-noha' - - 'os-odl-sfc-ha' - - 'os-odl-sfc-noha' - - 'os-nosdn-calipso-noha' - - 'os-ovn-nofeature-ha' -fraser: - - 'os-nosdn-nofeature-ha' - - 'os-odl-bgpvpn-ha' -euphrates: - - 'os-nosdn-nofeature-noha' - - 'os-nosdn-nofeature-ha' - - 'os-odl-nofeature-ha' - - 'os-odl-nofeature-noha' - - 'os-odl-bgpvpn-ha' - - 'os-ovn-nofeature-noha' - - 'os-nosdn-fdio-noha' - - 'os-nosdn-fdio-ha' - - 'os-nosdn-bar-ha' - - 'os-nosdn-bar-noha' - - 'os-nosdn-nofeature-ha-ipv6' - - 'os-nosdn-ovs_dpdk-noha' - - 'os-nosdn-ovs_dpdk-ha' - - 'os-nosdn-kvm_ovs_dpdk-noha' - - 'os-nosdn-kvm_ovs_dpdk-ha' - - 'os-odl-sfc-noha' - - 'os-odl-sfc-ha' -danube: - - 'os-nosdn-nofeature-noha' - - 'os-nosdn-nofeature-ha' - - 'os-nosdn-nofeature-ha-ipv6' - - 'os-nosdn-ovs-noha' - - 'os-nosdn-ovs-ha' - - 'os-nosdn-fdio-noha' - - 'os-nosdn-fdio-ha' - - 'os-nosdn-kvm-ha' - - 'os-nosdn-kvm-noha' - - 'os-odl_l2-fdio-noha' - - 'os-odl_l2-fdio-ha' - - 'os-odl_netvirt-fdio-noha' - - 'os-odl_l2-sfc-noha' - - 'os-odl_l3-nofeature-noha' - - 'os-odl_l3-nofeature-ha' - - 'os-odl_l3-ovs-noha' - - 'os-odl_l3-ovs-ha' - - 'os-odl-bgpvpn-ha' - - 'os-odl-gluon-noha' - - 'os-odl_l3-fdio-noha' - - 'os-odl_l3-fdio-ha' - - 'os-odl_l3-fdio_dvr-noha' - - 'os-odl_l3-fdio_dvr-ha' - - 'os-odl_l3-csit-noha' - - 'os-onos-nofeature-ha' - - 'os-ovn-nofeature-noha' diff --git a/jjb/apex/update-build-result.groovy b/jjb/apex/update-build-result.groovy deleted file mode 100644 index 9edca6b6b..000000000 --- a/jjb/apex/update-build-result.groovy +++ /dev/null @@ -1,5 +0,0 @@ -import hudson.model.* -if (manager.logContains('^.*apex-deploy-baremetal.*SUCCESS$') - && manager.build.@result == hudson.model.Result.FAILURE) { - manager.build.@result = hudson.model.Result.UNSTABLE -} -- cgit 1.2.3-korg