diff options
Diffstat (limited to 'jjb/fuel')
-rwxr-xr-x | jjb/fuel/fuel-build.sh | 109 | ||||
-rw-r--r-- | jjb/fuel/fuel-daily-jobs.yml | 623 | ||||
-rwxr-xr-x | jjb/fuel/fuel-deploy.sh | 123 | ||||
-rwxr-xr-x | jjb/fuel/fuel-download-artifact.sh | 43 | ||||
-rw-r--r-- | jjb/fuel/fuel-project-jobs.yml | 220 | ||||
-rwxr-xr-x | jjb/fuel/fuel-upload-artifact.sh | 118 | ||||
-rw-r--r-- | jjb/fuel/fuel-verify-jobs.yml | 80 | ||||
-rw-r--r-- | jjb/fuel/fuel-weekly-jobs.yml | 45 | ||||
-rwxr-xr-x | jjb/fuel/fuel-workspace-cleanup.sh | 15 |
9 files changed, 273 insertions, 1103 deletions
diff --git a/jjb/fuel/fuel-build.sh b/jjb/fuel/fuel-build.sh deleted file mode 100755 index 2c0d12a80..000000000 --- a/jjb/fuel/fuel-build.sh +++ /dev/null @@ -1,109 +0,0 @@ -#!/bin/bash -# SPDX-license-identifier: Apache-2.0 -############################################################################## -# Copyright (c) 2016 Ericsson AB 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 -############################################################################## - -# disable Fuel iso build for master branch -if [[ "$BRANCH" == 'master' ]]; then - touch $WORKSPACE/.noupload - echo "--------------------------------------------------------" - echo "Done!" - exit 0 -fi - -set -o errexit -set -o nounset -set -o pipefail - -export TERM="vt220" - -cd $WORKSPACE - -# remove the expired items from cache -test -f $WORKSPACE/ci/clean_cache.sh && $WORKSPACE/ci/clean_cache.sh $CACHE_DIRECTORY - -LATEST_ISO_PROPERTIES=$WORKSPACE/latest.iso.properties -if [[ "$JOB_NAME" =~ "daily" ]]; then - # check to see if we already have an artifact on artifacts.opnfv.org - # for this commit during daily builds - echo "Checking to see if we already built and stored Fuel ISO for this commit" - - curl -s -o $LATEST_ISO_PROPERTIES http://$GS_URL/latest.properties 2>/dev/null -fi - -# get metadata of latest ISO -if grep -q OPNFV_GIT_SHA1 $LATEST_ISO_PROPERTIES 2>/dev/null; then - LATEST_ISO_SHA1=$(grep OPNFV_GIT_SHA1 $LATEST_ISO_PROPERTIES | cut -d'=' -f2) - LATEST_ISO_URL=$(grep OPNFV_ARTIFACT_URL $LATEST_ISO_PROPERTIES | cut -d'=' -f2) -else - LATEST_ISO_SHA1=none -fi - -# get current SHA1 -CURRENT_SHA1=$(git rev-parse HEAD) - -# set FORCE_BUILD to false for non-daily builds -FORCE_BUILD=${FORCE_BUILD:-false} - -if [[ "$CURRENT_SHA1" == "$LATEST_ISO_SHA1" && "$FORCE_BUILD" == "false" ]]; then - echo "***************************************************" - echo " An ISO has already been built for this commit" - echo " $LATEST_ISO_URL" - echo "***************************************************" -# echo "Nothing new to build. Exiting." -# touch $WORKSPACE/.noupload -# exit 0 -else - echo "This commit has not been built yet or forced build! Proceeding with the build." - /bin/rm -f $LATEST_ISO_PROPERTIES - echo -fi - -# log info to console -echo "Starting the build of $INSTALLER_TYPE. This could take some time..." -echo "--------------------------------------------------------" -echo - -# create the cache directory if it doesn't exist -mkdir -p $CACHE_DIRECTORY - -# set OPNFV_ARTIFACT_VERSION -if [[ "$JOB_NAME" =~ "merge" ]]; then - echo "Building Fuel ISO for a merged change" - export OPNFV_ARTIFACT_VERSION="gerrit-$GERRIT_CHANGE_NUMBER" -else - export OPNFV_ARTIFACT_VERSION=$(date -u +"%Y-%m-%d_%H-%M-%S") -fi - -NOCACHE_PATTERN="verify: no-cache" -if [[ "$JOB_NAME" =~ "verify" && "$GERRIT_CHANGE_COMMIT_MESSAGE" =~ "$NOCACHE_PATTERN" ]]; then - echo "The cache will not be used for this build!" - NOCACHE_ARG="-f P" -fi -NOCACHE_ARG=${NOCACHE_ARG:-} - -# start the build -cd $WORKSPACE/ci -./build.sh -v $OPNFV_ARTIFACT_VERSION $NOCACHE_ARG -c file://$CACHE_DIRECTORY $BUILD_DIRECTORY - -# list the build artifacts -ls -al $BUILD_DIRECTORY - -# 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/opnfv-$OPNFV_ARTIFACT_VERSION.iso | cut -d' ' -f1)" - echo "OPNFV_BUILD_URL=$BUILD_URL" -) > $WORKSPACE/opnfv.properties - -echo -echo "--------------------------------------------------------" -echo "Done!" diff --git a/jjb/fuel/fuel-daily-jobs.yml b/jjb/fuel/fuel-daily-jobs.yml index 68677089d..c30cfed72 100644 --- a/jjb/fuel/fuel-daily-jobs.yml +++ b/jjb/fuel/fuel-daily-jobs.yml @@ -15,6 +15,11 @@ branch: '{stream}' disabled: false gs-pathname: '' + euphrates: &euphrates + stream: euphrates + branch: 'stable/{stream}' + disabled: true + gs-pathname: '/{stream}' danube: &danube stream: danube branch: 'stable/{stream}' @@ -34,27 +39,27 @@ <<: *master - baremetal: slave-label: fuel-baremetal - <<: *danube + <<: *euphrates - virtual: slave-label: fuel-virtual - <<: *danube + <<: *euphrates #-------------------------------- # None-CI PODs #-------------------------------- - zte-pod1: slave-label: zte-pod1 <<: *master - - zte-pod2: - slave-label: zte-pod2 - <<: *master - zte-pod3: slave-label: zte-pod3 <<: *master - zte-pod1: slave-label: zte-pod1 - <<: *danube + <<: *euphrates - zte-pod3: slave-label: zte-pod3 + <<: *euphrates + - zte-pod1: + slave-label: zte-pod1 <<: *danube #-------------------------------- # scenarios @@ -63,18 +68,12 @@ # HA scenarios - 'os-nosdn-nofeature-ha': auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - - 'os-odl_l2-nofeature-ha': - auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - - 'os-odl_l3-nofeature-ha': + - 'os-odl-nofeature-ha': auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - 'os-onos-sfc-ha': auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - 'os-onos-nofeature-ha': auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - - 'os-odl_l2-sfc-ha': - auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - - 'os-odl_l2-bgpvpn-ha': - auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - 'os-nosdn-kvm-ha': auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - 'os-nosdn-ovs-ha': @@ -88,18 +87,12 @@ # NOHA scenarios - 'os-nosdn-nofeature-noha': auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - - 'os-odl_l2-nofeature-noha': - auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - - 'os-odl_l3-nofeature-noha': + - 'os-odl-nofeature-noha': auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - 'os-onos-sfc-noha': auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - 'os-onos-nofeature-noha': auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - - 'os-odl_l2-sfc-noha': - auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - - 'os-odl_l2-bgpvpn-noha': - auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - 'os-nosdn-kvm-noha': auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger' - 'os-nosdn-ovs-noha': @@ -135,6 +128,7 @@ blocking-jobs: - 'fuel-os-.*?-{pod}-daily-.*' - 'fuel-os-.*?-{pod}-weekly-.*' + - 'fuel-verify-.*' block-level: 'NODE' wrappers: @@ -148,14 +142,13 @@ - project-parameter: project: '{project}' branch: '{branch}' - - '{installer}-defaults' + - '{installer}-defaults': + gs-pathname: '{gs-pathname}' - '{slave-label}-defaults': installer: '{installer}' - string: name: DEPLOY_SCENARIO default: '{scenario}' - - fuel-ci-parameter: - gs-pathname: '{gs-pathname}' builders: - description-setter: @@ -193,11 +186,12 @@ # 2.here the stream means the SUT stream, dovetail stream is defined in its own job # 3.only debug testsuite here(refstack, ha, ipv6, bgpvpn) # 4.not used for release criteria or compliance, - # only to debug the dovetail tool bugs with bgpvpn - # 5,only run against scenario os-odl_l2-bgpvpn-ha(regex used here, can extend to more scenarios future) + # only to debug the dovetail tool bugs with bgpvpn and nosdn-nofeature + # 5.only run against scenario os-odl-bgpvpn-ha(regex used here, can extend to more scenarios future) + # 6.ZTE pod1, os-nosdn-nofeature-ha and os-odl-bgpvpn-ha, run against danube - conditional-step: condition-kind: regex-match - regex: os-odl_l2-bgpvpn-ha + regex: os-(nosdn-nofeature|odl-bgpvpn)-ha label: '{scenario}' steps: - trigger-builds: @@ -215,6 +209,7 @@ publishers: - email: recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com + - email-jenkins-admins-on-failure - job-template: name: 'fuel-deploy-{pod}-daily-{stream}' @@ -243,14 +238,13 @@ - project-parameter: project: '{project}' branch: '{branch}' - - '{installer}-defaults' + - '{installer}-defaults': + gs-pathname: '{gs-pathname}' - '{slave-label}-defaults': installer: '{installer}' - string: name: DEPLOY_SCENARIO - default: 'os-odl_l2-nofeature-ha' - - fuel-ci-parameter: - gs-pathname: '{gs-pathname}' + default: 'os-odl-nofeature-ha' - string: name: DEPLOY_TIMEOUT default: '150' @@ -274,30 +268,9 @@ publishers: - email: recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com + - email-jenkins-admins-on-failure ######################## -# parameter macros -######################## -- parameter: - name: fuel-ci-parameter - parameters: - - string: - name: BUILD_DIRECTORY - default: $WORKSPACE/build_output - description: "Directory where the build artifact will be located upon the completion of the build." - - string: - name: CACHE_DIRECTORY - default: $HOME/opnfv/cache/$INSTALLER_TYPE - description: "Directory where the cache to be used during the build is located." - - string: - name: GS_URL - default: artifacts.opnfv.org/$PROJECT{gs-pathname} - description: "URL to Google Storage." - - string: - name: SSH_KEY - default: "/tmp/mcp.rsa" - description: "Path to private SSH key to access environment nodes. For MCP deployments only." -######################## # trigger macros ######################## #----------------------------------------------- @@ -307,19 +280,15 @@ - trigger: name: 'fuel-os-nosdn-nofeature-ha-baremetal-daily-master-trigger' triggers: - - timed: '' # '5 20 * * *' -- trigger: - name: 'fuel-os-odl_l2-nofeature-ha-baremetal-daily-master-trigger' - triggers: - - timed: '' # '5 23 * * *' + - timed: '5 20 * * *' - trigger: - name: 'fuel-os-odl_l3-nofeature-ha-baremetal-daily-master-trigger' + name: 'fuel-os-odl-nofeature-ha-baremetal-daily-master-trigger' triggers: - - timed: '' # '5 2 * * *' + - timed: '5 2 * * *' - trigger: name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-master-trigger' triggers: - - timed: '' # '5 5 * * *' + - timed: '5 5 * * *' - trigger: name: 'fuel-os-onos-sfc-ha-baremetal-daily-master-trigger' triggers: @@ -329,14 +298,6 @@ triggers: - timed: '' # '5 8 * * *' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-baremetal-daily-master-trigger' - triggers: - - timed: '' # '5 11 * * *' -- trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-baremetal-daily-master-trigger' - triggers: - - timed: '' # '5 14 * * *' -- trigger: name: 'fuel-os-nosdn-kvm-ha-baremetal-daily-master-trigger' triggers: - timed: '' # '5 17 * * *' @@ -354,11 +315,7 @@ triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-noha-baremetal-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l3-nofeature-noha-baremetal-daily-master-trigger' + name: 'fuel-os-odl-nofeature-noha-baremetal-daily-master-trigger' triggers: - timed: '' - trigger: @@ -370,14 +327,6 @@ triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-baremetal-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-baremetal-daily-master-trigger' - triggers: - - timed: '' -- trigger: name: 'fuel-os-nosdn-kvm-noha-baremetal-daily-master-trigger' triggers: - timed: '' @@ -394,96 +343,72 @@ triggers: - timed: '' #----------------------------------------------- -# Triggers for job running on fuel-baremetal against danube branch +# Triggers for job running on fuel-baremetal against euphrates branch #----------------------------------------------- # HA Scenarios - trigger: - name: 'fuel-os-nosdn-nofeature-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 20 * * *' + - timed: '' # '0 20 * * *' - trigger: - name: 'fuel-os-odl_l2-nofeature-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-odl-nofeature-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 23 * * *' + - timed: '' # '0 2 * * *' - trigger: - name: 'fuel-os-odl_l3-nofeature-ha-baremetal-daily-danube-trigger' - triggers: - - timed: '0 2 * * *' -- trigger: - name: 'fuel-os-onos-sfc-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-onos-sfc-ha-baremetal-daily-euphrates-trigger' triggers: - timed: '' # '0 5 * * *' - trigger: - name: 'fuel-os-onos-nofeature-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-ha-baremetal-daily-euphrates-trigger' triggers: - timed: '' # '0 8 * * *' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-baremetal-daily-danube-trigger' - triggers: - - timed: '0 11 * * *' -- trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 14 * * *' + - timed: '' # '0 17 * * *' - trigger: - name: 'fuel-os-nosdn-kvm-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 17 * * *' + - timed: '' # '0 20 * * *' - trigger: - name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 20 * * *' + - timed: '' # '0 12 * * *' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-baremetal-daily-euphrates-trigger' triggers: - - timed: '0 12 * * *' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-baremetal-daily-danube-trigger' - triggers: - - timed: '0 8 * * *' + - timed: '' # '0 8 * * *' # NOHA Scenarios - trigger: - name: 'fuel-os-nosdn-nofeature-noha-baremetal-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-nofeature-noha-baremetal-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l3-nofeature-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-sfc-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-odl-nofeature-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-nofeature-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-onos-sfc-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-ovs-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-baremetal-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-baremetal-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-baremetal-daily-euphrates-trigger' triggers: - timed: '' #----------------------------------------------- @@ -494,11 +419,7 @@ triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-ha-virtual-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l3-nofeature-ha-virtual-daily-master-trigger' + name: 'fuel-os-odl-nofeature-ha-virtual-daily-master-trigger' triggers: - timed: '' - trigger: @@ -510,14 +431,6 @@ triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-virtual-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-sfc-ha-virtual-daily-master-trigger' - triggers: - - timed: '' -- trigger: name: 'fuel-os-nosdn-kvm-ha-virtual-daily-master-trigger' triggers: - timed: '' @@ -539,13 +452,9 @@ triggers: - timed: '5 13 * * *' - trigger: - name: 'fuel-os-odl_l2-nofeature-noha-virtual-daily-master-trigger' - triggers: - - timed: '' # '35 15 * * *' -- trigger: - name: 'fuel-os-odl_l3-nofeature-noha-virtual-daily-master-trigger' + name: 'fuel-os-odl-nofeature-noha-virtual-daily-master-trigger' triggers: - - timed: '' # '5 18 * * *' + - timed: '5 18 * * *' - trigger: name: 'fuel-os-onos-sfc-noha-virtual-daily-master-trigger' triggers: @@ -555,21 +464,13 @@ triggers: - timed: '' # '5 23 * * *' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-virtual-daily-master-trigger' - triggers: - - timed: '' # '35 1 * * *' -- trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-virtual-daily-master-trigger' - triggers: - - timed: '' # '5 4 * * *' -- trigger: name: 'fuel-os-nosdn-kvm-noha-virtual-daily-master-trigger' triggers: - timed: '' # '35 6 * * *' - trigger: name: 'fuel-os-nosdn-ovs-noha-virtual-daily-master-trigger' triggers: - - timed: '' # '5 9 * * *' + - timed: '5 9 * * *' - trigger: name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-virtual-daily-master-trigger' triggers: @@ -579,97 +480,73 @@ triggers: - timed: '' # '30 20 * * *' #----------------------------------------------- -# Triggers for job running on fuel-virtual against danube branch +# Triggers for job running on fuel-virtual against euphrates branch #----------------------------------------------- - trigger: - name: 'fuel-os-nosdn-nofeature-ha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-ha-virtual-daily-danube-trigger' + name: 'fuel-os-odl-nofeature-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l3-nofeature-ha-virtual-daily-danube-trigger' + name: 'fuel-os-onos-sfc-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-sfc-ha-virtual-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-nofeature-ha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm-ha-virtual-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-ovs-ha-virtual-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-virtual-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-virtual-daily-euphrates-trigger' triggers: - timed: '' # NOHA Scenarios - trigger: - name: 'fuel-os-nosdn-nofeature-noha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '0 13 * * *' + - timed: '' # '0 13 * * *' - trigger: - name: 'fuel-os-odl_l2-nofeature-noha-virtual-daily-danube-trigger' + name: 'fuel-os-odl-nofeature-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '30 15 * * *' + - timed: '' # '0 18 * * *' - trigger: - name: 'fuel-os-odl_l3-nofeature-noha-virtual-daily-danube-trigger' - triggers: - - timed: '0 18 * * *' -- trigger: - name: 'fuel-os-onos-sfc-noha-virtual-daily-danube-trigger' + name: 'fuel-os-onos-sfc-noha-virtual-daily-euphrates-trigger' triggers: - timed: '' # '30 20 * * *' - trigger: - name: 'fuel-os-onos-nofeature-noha-virtual-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-noha-virtual-daily-euphrates-trigger' triggers: - timed: '' # '0 23 * * *' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-virtual-daily-danube-trigger' - triggers: - - timed: '30 1 * * *' -- trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '0 4 * * *' + - timed: '' # '30 6 * * *' - trigger: - name: 'fuel-os-nosdn-kvm-noha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '30 6 * * *' + - timed: '' # '0 9 * * *' - trigger: - name: 'fuel-os-nosdn-ovs-noha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '0 9 * * *' + - timed: '' # '0 16 * * *' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-virtual-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-virtual-daily-euphrates-trigger' triggers: - - timed: '0 16 * * *' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-virtual-daily-danube-trigger' - triggers: - - timed: '0 20 * * *' + - timed: '' # '0 20 * * *' #----------------------------------------------- # ZTE POD1 Triggers running against master branch #----------------------------------------------- @@ -678,11 +555,7 @@ triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-ha-zte-pod1-daily-master-trigger' - triggers: - - timed: '0 10 * * *' -- trigger: - name: 'fuel-os-odl_l3-nofeature-ha-zte-pod1-daily-master-trigger' + name: 'fuel-os-odl-nofeature-ha-zte-pod1-daily-master-trigger' triggers: - timed: '' - trigger: @@ -694,21 +567,13 @@ triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod1-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-sfc-ha-zte-pod1-daily-master-trigger' - triggers: - - timed: '' -- trigger: name: 'fuel-os-nosdn-kvm-ha-zte-pod1-daily-master-trigger' triggers: - timed: '' - trigger: name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-master-trigger' triggers: - - timed: '' + - timed: '0 18 * * *' - trigger: name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod1-daily-master-trigger' triggers: @@ -723,11 +588,7 @@ triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-noha-zte-pod1-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l3-nofeature-noha-zte-pod1-daily-master-trigger' + name: 'fuel-os-odl-nofeature-noha-zte-pod1-daily-master-trigger' triggers: - timed: '' - trigger: @@ -739,14 +600,6 @@ triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-zte-pod1-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod1-daily-master-trigger' - triggers: - - timed: '' -- trigger: name: 'fuel-os-nosdn-kvm-noha-zte-pod1-daily-master-trigger' triggers: - timed: '' @@ -762,112 +615,15 @@ name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod1-daily-master-trigger' triggers: - timed: '' - -#----------------------------------------------- -# ZTE POD2 Triggers running against master branch -#----------------------------------------------- -- trigger: - name: 'fuel-os-nosdn-nofeature-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-nofeature-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l3-nofeature-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-sfc-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-nofeature-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-sfc-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-ovs-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -# NOHA Scenarios -- trigger: - name: 'fuel-os-nosdn-nofeature-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-nofeature-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l3-nofeature-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-sfc-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-nofeature-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-sfc-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-ovs-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod2-daily-master-trigger' - triggers: - - timed: '' #----------------------------------------------- # ZTE POD3 Triggers running against master branch #----------------------------------------------- - trigger: name: 'fuel-os-nosdn-nofeature-ha-zte-pod3-daily-master-trigger' triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-nofeature-ha-zte-pod3-daily-master-trigger' - triggers: - - timed: '' + - timed: '0 10 * * *' - trigger: - name: 'fuel-os-odl_l3-nofeature-ha-zte-pod3-daily-master-trigger' + name: 'fuel-os-odl-nofeature-ha-zte-pod3-daily-master-trigger' triggers: - timed: '' - trigger: @@ -879,17 +635,9 @@ triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod3-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-sfc-ha-zte-pod3-daily-master-trigger' - triggers: - - timed: '' -- trigger: name: 'fuel-os-nosdn-kvm-ha-zte-pod3-daily-master-trigger' triggers: - - timed: '0 10 * * *' + - timed: '' - trigger: name: 'fuel-os-nosdn-ovs-ha-zte-pod3-daily-master-trigger' triggers: @@ -908,11 +656,7 @@ triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-nofeature-noha-zte-pod3-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l3-nofeature-noha-zte-pod3-daily-master-trigger' + name: 'fuel-os-odl-nofeature-noha-zte-pod3-daily-master-trigger' triggers: - timed: '' - trigger: @@ -924,14 +668,6 @@ triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-zte-pod3-daily-master-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod3-daily-master-trigger' - triggers: - - timed: '' -- trigger: name: 'fuel-os-nosdn-kvm-noha-zte-pod3-daily-master-trigger' triggers: - timed: '' @@ -948,279 +684,206 @@ triggers: - timed: '' #----------------------------------------------- -# ZTE POD1 Triggers running against danube branch +# ZTE POD1 Triggers running against euphrates branch #----------------------------------------------- - trigger: - name: 'fuel-os-nosdn-nofeature-ha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-nofeature-ha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '0 2 * * *' -- trigger: - name: 'fuel-os-odl_l3-nofeature-ha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-sfc-ha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-odl-nofeature-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-nofeature-ha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-onos-sfc-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm-ha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' # NOHA Scenarios - trigger: - name: 'fuel-os-nosdn-nofeature-noha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-nofeature-noha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l3-nofeature-noha-zte-pod1-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-sfc-noha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-nofeature-noha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-odl-nofeature-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-onos-sfc-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm-noha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-ovs-noha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod1-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod1-daily-euphrates-trigger' triggers: - timed: '' - #----------------------------------------------- -# ZTE POD2 Triggers running against danube branch +# ZTE POD3 Triggers running against euphrates branch #----------------------------------------------- - trigger: - name: 'fuel-os-nosdn-nofeature-ha-zte-pod2-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-nofeature-ha-zte-pod2-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l3-nofeature-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-ha-zte-pod3-daily-euphrates-trigger' triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-sfc-ha-zte-pod2-daily-danube-trigger' - triggers: - - timed: '' + - timed: '' # '0 18 * * *' - trigger: - name: 'fuel-os-onos-nofeature-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-odl-nofeature-ha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-onos-sfc-ha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-ha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-ha-zte-pod3-daily-euphrates-trigger' triggers: - - timed: '' + - timed: '' # '0 2 * * *' - trigger: - name: 'fuel-os-nosdn-ovs-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-ha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' # NOHA Scenarios - trigger: - name: 'fuel-os-nosdn-nofeature-noha-zte-pod2-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-nofeature-noha-zte-pod2-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l3-nofeature-noha-zte-pod2-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-sfc-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-nofeature-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-odl-nofeature-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-onos-sfc-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-ovs-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod2-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod2-daily-danube-trigger' - triggers: - - timed: '' -#----------------------------------------------- -# ZTE POD3 Triggers running against danube branch -#----------------------------------------------- -- trigger: - name: 'fuel-os-nosdn-nofeature-ha-zte-pod3-daily-danube-trigger' - triggers: - - timed: '0 18 * * *' -- trigger: - name: 'fuel-os-odl_l2-nofeature-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod3-daily-euphrates-trigger' triggers: - timed: '' +#------------------------------------------------ +# ZTE POD1 Triggers running against danube branch +#------------------------------------------------ - trigger: - name: 'fuel-os-odl_l3-nofeature-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-ha-zte-pod1-daily-danube-trigger' triggers: - - timed: '' + - timed: '0 2 * * 6' - trigger: - name: 'fuel-os-onos-sfc-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-odl-nofeature-ha-zte-pod1-daily-danube-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-nofeature-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-onos-sfc-ha-zte-pod1-daily-danube-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-ha-zte-pod1-daily-danube-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-ha-zte-pod1-daily-danube-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm-ha-zte-pod3-daily-danube-trigger' - triggers: - - timed: '0 2 * * *' -- trigger: - name: 'fuel-os-nosdn-ovs-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-danube-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod1-daily-danube-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod1-daily-danube-trigger' triggers: - timed: '' # NOHA Scenarios - trigger: - name: 'fuel-os-nosdn-nofeature-noha-zte-pod3-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l2-nofeature-noha-zte-pod3-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-odl_l3-nofeature-noha-zte-pod3-daily-danube-trigger' - triggers: - - timed: '' -- trigger: - name: 'fuel-os-onos-sfc-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-nofeature-noha-zte-pod1-daily-danube-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-onos-nofeature-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-odl-nofeature-noha-zte-pod1-daily-danube-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-sfc-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-onos-sfc-noha-zte-pod1-daily-danube-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-onos-nofeature-noha-zte-pod1-daily-danube-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm-noha-zte-pod1-daily-danube-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-ovs-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-ovs-noha-zte-pod1-daily-danube-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod1-daily-danube-trigger' triggers: - timed: '' - trigger: - name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod3-daily-danube-trigger' + name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod1-daily-danube-trigger' triggers: - timed: '' diff --git a/jjb/fuel/fuel-deploy.sh b/jjb/fuel/fuel-deploy.sh index 2fb5c71e4..6525c7ccb 100755 --- a/jjb/fuel/fuel-deploy.sh +++ b/jjb/fuel/fuel-deploy.sh @@ -1,7 +1,7 @@ #!/bin/bash # SPDX-license-identifier: Apache-2.0 ############################################################################## -# Copyright (c) 2016 Ericsson AB and others. +# Copyright (c) 2017 Ericsson AB, Mirantis Inc., Enea Software AB 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 @@ -12,7 +12,7 @@ set -o pipefail export TERM="vt220" -if [[ "$BRANCH" != 'master' ]]; then +if [[ "$BRANCH" =~ 'danube' ]]; then # source the file so we get OPNFV vars source latest.properties @@ -20,75 +20,99 @@ if [[ "$BRANCH" != 'master' ]]; then echo "Using ${OPNFV_ARTIFACT_URL/*\/} for deployment" fi -if [[ "$JOB_NAME" =~ "merge" ]]; then - # set simplest scenario for virtual deploys to run for merges +# shellcheck disable=SC2153 +if [[ "${JOB_NAME}" =~ 'verify' ]]; then + # set simplest scenario for virtual deploys to run for verify DEPLOY_SCENARIO="os-nosdn-nofeature-ha" -elif [[ "$BRANCH" != 'master' ]]; then - # for none-merge deployments +elif [[ "${BRANCH}" =~ 'danube' ]]; then + # for Danube deployments (no artifact for current master or newer branches) # checkout the commit that was used for building the downloaded artifact # to make sure the ISO and deployment mechanism uses same versions - echo "Checking out $OPNFV_GIT_SHA1" - git checkout $OPNFV_GIT_SHA1 --quiet + echo "Checking out ${OPNFV_GIT_SHA1}" + git checkout "${OPNFV_GIT_SHA1}" --quiet fi # set deployment parameters -export TMPDIR=$HOME/tmpdir +export TMPDIR=${HOME}/tmpdir BRIDGE=${BRIDGE:-pxebr} +# shellcheck disable=SC2153 LAB_NAME=${NODE_NAME/-*} +# shellcheck disable=SC2153 POD_NAME=${NODE_NAME/*-} - -if [[ "$NODE_NAME" =~ "virtual" ]]; then - POD_NAME="virtual_kvm" -fi - -# we currently support ericsson, intel, lf and zte labs -if [[ ! "$LAB_NAME" =~ (ericsson|intel|lf|zte) ]]; then - echo "Unsupported/unidentified lab $LAB_NAME. Cannot continue!" - exit 1 +# Armband might override LAB_CONFIG_URL, all others use the default +LAB_CONFIG_URL=${LAB_CONFIG_URL:-'ssh://jenkins-ericsson@gerrit.opnfv.org:29418/securedlab'} + +# Fuel requires deploy script to be ran with sudo, Armband does not +SUDO='sudo -E' +if [ "${PROJECT}" = 'fuel' ]; then + # Fuel does not use any POD-specific configuration for virtual deploys + if [[ "${NODE_NAME}" =~ "virtual" ]]; then + POD_NAME="virtual_kvm" + fi + # Fuel currently supports ericsson, intel, lf and zte labs + if [[ ! "${LAB_NAME}" =~ (ericsson|intel|lf|zte) ]]; then + echo "Unsupported/unidentified lab ${LAB_NAME}. Cannot continue!" + exit 1 + fi else - echo "Using configuration for $LAB_NAME" + SUDO= + # Armband currently supports arm, enea labs + if [[ ! "${LAB_NAME}" =~ (arm|enea) ]]; then + echo "Unsupported/unidentified lab ${LAB_NAME}. Cannot continue!" + exit 1 + fi fi -# create TMPDIR if it doesn't exist -export TMPDIR=$HOME/tmpdir -mkdir -p $TMPDIR +echo "Using configuration for ${LAB_NAME}" + +# create TMPDIR if it doesn't exist, change permissions +mkdir -p "${TMPDIR}" +chmod a+x "${HOME}" "${TMPDIR}" -# change permissions down to TMPDIR -chmod a+x $HOME -chmod a+x $TMPDIR +cd "${WORKSPACE}" || exit 1 +if [[ "${LAB_CONFIG_URL}" =~ ^(git|ssh):// ]]; then + echo "Cloning securedlab repo ${BRANCH}" + git clone --quiet --branch "${BRANCH}" "${LAB_CONFIG_URL}" lab-config + LAB_CONFIG_URL=file://${WORKSPACE}/lab-config -# clone the securedlab repo -cd $WORKSPACE -echo "Cloning securedlab repo $BRANCH" -git clone ssh://jenkins-ericsson@gerrit.opnfv.org:29418/securedlab --quiet \ - --branch $BRANCH + # Source local_env if present, which contains POD-specific config + local_env="${WORKSPACE}/lab-config/labs/${LAB_NAME}/${POD_NAME}/fuel/config/local_env" + if [ -e "${local_env}" ]; then + echo "-- Sourcing local environment file" + source "${local_env}" + fi +fi + +# releng wants us to use nothing else but opnfv.iso for now. We comply. +ISO_FILE=file://${WORKSPACE}/opnfv.iso # log file name FUEL_LOG_FILENAME="${JOB_NAME}_${BUILD_NUMBER}.log.tar.gz" # construct the command -DEPLOY_COMMAND="sudo $WORKSPACE/ci/deploy.sh -b file://$WORKSPACE/securedlab \ - -l $LAB_NAME -p $POD_NAME -s $DEPLOY_SCENARIO -i file://$WORKSPACE/opnfv.iso \ - -H -B $BRIDGE -S $TMPDIR -L $WORKSPACE/$FUEL_LOG_FILENAME" +DEPLOY_COMMAND="${SUDO} ${WORKSPACE}/ci/deploy.sh -b ${LAB_CONFIG_URL} \ + -l ${LAB_NAME} -p ${POD_NAME} -s ${DEPLOY_SCENARIO} -i ${ISO_FILE} \ + -B ${DEFAULT_BRIDGE:-${BRIDGE}} -S ${TMPDIR} \ + -L ${WORKSPACE}/${FUEL_LOG_FILENAME}" # log info to console echo "Deployment parameters" echo "--------------------------------------------------------" -echo "Scenario: $DEPLOY_SCENARIO" -echo "Lab: $LAB_NAME" -echo "POD: $POD_NAME" -[[ "$BRANCH" != 'master' ]] && echo "ISO: ${OPNFV_ARTIFACT_URL/*\/}" +echo "Scenario: ${DEPLOY_SCENARIO}" +echo "Lab: ${LAB_NAME}" +echo "POD: ${POD_NAME}" +[[ "${BRANCH}" != 'master' ]] && echo "ISO: ${OPNFV_ARTIFACT_URL/*\/}" echo -echo "Starting the deployment using $INSTALLER_TYPE. This could take some time..." +echo "Starting the deployment using ${INSTALLER_TYPE}. This could take some time..." echo "--------------------------------------------------------" echo # start the deployment echo "Issuing command" -echo "$DEPLOY_COMMAND" +echo "${DEPLOY_COMMAND}" echo -$DEPLOY_COMMAND +${DEPLOY_COMMAND} exit_code=$? echo @@ -96,17 +120,18 @@ echo "--------------------------------------------------------" echo "Deployment is done!" # upload logs for baremetal deployments -# work with virtual deployments is still going on so we skip that for the timebeing -if [[ "$JOB_NAME" =~ (baremetal-daily|baremetal-weekly) ]]; then +# work with virtual deployments is still going on, so skip that for now +if [[ "${JOB_NAME}" =~ (baremetal-daily|baremetal-weekly) ]]; then echo "Uploading deployment logs" - gsutil cp $WORKSPACE/$FUEL_LOG_FILENAME gs://$GS_URL/logs/$FUEL_LOG_FILENAME > /dev/null 2>&1 - echo "Logs are available as http://$GS_URL/logs/$FUEL_LOG_FILENAME" + gsutil cp "${WORKSPACE}/${FUEL_LOG_FILENAME}" \ + "gs://${GS_URL}/logs/${FUEL_LOG_FILENAME}" > /dev/null 2>&1 + echo "Logs are available at http://${GS_URL}/logs/${FUEL_LOG_FILENAME}" fi -if [[ $exit_code -ne 0 ]]; then +if [[ "${exit_code}" -ne 0 ]]; then echo "Deployment failed!" - exit $exit_code -else - echo "Deployment is successful!" - exit 0 + exit "${exit_code}" fi + +echo "Deployment is successful!" +exit 0 diff --git a/jjb/fuel/fuel-download-artifact.sh b/jjb/fuel/fuel-download-artifact.sh index c3b8253de..02ca10305 100755 --- a/jjb/fuel/fuel-download-artifact.sh +++ b/jjb/fuel/fuel-download-artifact.sh @@ -11,20 +11,14 @@ set -o errexit set -o pipefail # disable Fuel ISO download for master branch -[[ "$BRANCH" == 'master' ]] && exit 0 +[[ ! "$BRANCH" =~ (danube) ]] && exit 0 -# use proxy url to replace the nomral URL, for googleusercontent.com will be blocked randomly +# use proxy url to replace the normal URL, or googleusercontent.com will be blocked randomly [[ "$NODE_NAME" =~ (zte) ]] && GS_URL=${GS_BASE_PROXY%%/*}/$GS_URL -if [[ "$JOB_NAME" =~ "merge" ]]; then - echo "Downloading http://$GS_URL/opnfv-gerrit-$GERRIT_CHANGE_NUMBER.properties" - # get the properties file for the Fuel ISO built for a merged change - curl -L -s -o $WORKSPACE/latest.properties http://$GS_URL/opnfv-gerrit-$GERRIT_CHANGE_NUMBER.properties -else - # get the latest.properties file in order to get info regarding latest artifact - echo "Downloading http://$GS_URL/latest.properties" - curl -L -s -o $WORKSPACE/latest.properties http://$GS_URL/latest.properties -fi +# get the latest.properties file in order to get info regarding latest artifact +echo "Downloading http://$GS_URL/latest.properties" +curl -L -s -o $WORKSPACE/latest.properties http://$GS_URL/latest.properties # check if we got the file [[ -f $WORKSPACE/latest.properties ]] || exit 1 @@ -36,21 +30,18 @@ source $WORKSPACE/latest.properties OPNFV_ARTIFACT=${OPNFV_ARTIFACT_URL/*\/} echo "Using $OPNFV_ARTIFACT for deployment" -# using ISOs for verify & merge jobs from local storage will be enabled later -if [[ ! "$JOB_NAME" =~ (verify|merge) ]]; then - # check if we already have the ISO to avoid redownload - ISOSTORE="/iso_mount/opnfv_ci/${BRANCH##*/}" - if [[ -f "$ISOSTORE/$OPNFV_ARTIFACT" ]]; then - echo "ISO exists locally. Skipping the download and using the file from ISO store" - ln -s $ISOSTORE/$OPNFV_ARTIFACT $WORKSPACE/opnfv.iso - echo "--------------------------------------------------------" - echo - ls -al $WORKSPACE/opnfv.iso - echo - echo "--------------------------------------------------------" - echo "Done!" - exit 0 - fi +# check if we already have the ISO to avoid redownload +ISOSTORE="/iso_mount/opnfv_ci/${BRANCH##*/}" +if [[ -f "$ISOSTORE/$OPNFV_ARTIFACT" ]]; then + echo "ISO exists locally. Skipping the download and using the file from ISO store" + ln -s $ISOSTORE/$OPNFV_ARTIFACT $WORKSPACE/opnfv.iso + echo "--------------------------------------------------------" + echo + ls -al $WORKSPACE/opnfv.iso + echo + echo "--------------------------------------------------------" + echo "Done!" + exit 0 fi [[ "$NODE_NAME" =~ (zte) ]] && OPNFV_ARTIFACT_URL=${GS_BASE_PROXY%%/*}/$OPNFV_ARTIFACT_URL diff --git a/jjb/fuel/fuel-project-jobs.yml b/jjb/fuel/fuel-project-jobs.yml index 1f0ddd363..cfcbf3695 100644 --- a/jjb/fuel/fuel-project-jobs.yml +++ b/jjb/fuel/fuel-project-jobs.yml @@ -13,206 +13,18 @@ branch: '{stream}' gs-pathname: '' disabled: false - - danube: + - euphrates: branch: 'stable/{stream}' gs-pathname: '/{stream}' - disabled: false + disabled: true jobs: - - 'fuel-build-daily-{stream}' - - 'fuel-merge-build-{stream}' - - 'fuel-merge-deploy-virtual-{stream}' - 'fuel-deploy-generic-daily-{stream}' ######################## # job templates ######################## - job-template: - name: 'fuel-build-daily-{stream}' - - disabled: '{obj:disabled}' - - concurrent: false - - properties: - - logrotate-default - - throttle: - enabled: true - max-total: 1 - max-per-node: 1 - option: 'project' - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-ubuntu-defaults' - - '{installer}-defaults' - - choice: - name: FORCE_BUILD - choices: - - 'false' - - 'true' - description: "Force build even if there is no changes in fuel repo. Default false" - - fuel-project-parameter: - gs-pathname: '{gs-pathname}' - - scm: - - git-scm - - triggers: - - timed: '0 H/4 * * *' - - wrappers: - - timeout: - timeout: 360 - fail: true - - builders: - - shell: - !include-raw-escape: ./fuel-build.sh - - shell: - !include-raw-escape: ./fuel-upload-artifact.sh - - shell: - !include-raw-escape: ./fuel-workspace-cleanup.sh - - publishers: - - email: - recipients: fzhadaev@mirantis.com - -- job-template: - name: 'fuel-merge-build-{stream}' - - disabled: '{obj:disabled}' - - concurrent: true - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'opnfv-build-ubuntu-defaults' - - '{installer}-defaults' - - fuel-project-parameter: - gs-pathname: '{gs-pathname}' - - scm: - - git-scm - - wrappers: - - ssh-agent-wrapper - - timeout: - timeout: 360 - fail: true - - triggers: - - gerrit: - server-name: 'gerrit.opnfv.org' - trigger-on: - - change-merged-event - - comment-added-contains-event: - comment-contains-value: 'remerge' - projects: - - project-compare-type: 'ANT' - project-pattern: '{project}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - file-paths: - - compare-type: ANT - pattern: 'ci/**' - - compare-type: ANT - pattern: 'build/**' - - compare-type: ANT - pattern: 'deploy/**' - disable-strict-forbidden-file-verification: 'true' - forbidden-file-paths: - - compare-type: ANT - pattern: 'docs/**' - - builders: - - shell: - !include-raw-escape: ./fuel-build.sh - - shell: - !include-raw-escape: ./fuel-upload-artifact.sh - - shell: - !include-raw-escape: ./fuel-workspace-cleanup.sh - -- job-template: - name: 'fuel-merge-deploy-virtual-{stream}' - - disabled: true - - concurrent: true - - properties: - - logrotate-default - - throttle: - enabled: true - max-total: 2 - max-per-node: 1 - option: 'project' - - build-blocker: - use-build-blocker: true - blocking-jobs: - - 'fuel-os-.*?-virtual-daily-.*' - - 'fuel-merge-deploy-virtual-.*' - block-level: 'NODE' - - parameters: - - project-parameter: - project: '{project}' - branch: '{branch}' - - 'fuel-virtual-defaults': - installer: '{installer}' - - '{installer}-defaults' - - fuel-project-parameter: - gs-pathname: '{gs-pathname}' - scm: - - git-scm - - wrappers: - - ssh-agent-wrapper - - triggers: - - gerrit: - server-name: 'gerrit.opnfv.org' - trigger-on: - - change-merged-event - - comment-added-contains-event: - comment-contains-value: 'remerge' - projects: - - project-compare-type: 'ANT' - project-pattern: '{project}' - branches: - - branch-compare-type: 'ANT' - branch-pattern: '**/{branch}' - file-paths: - - compare-type: ANT - pattern: 'ci/**' - - compare-type: ANT - pattern: 'build/**' - - compare-type: ANT - pattern: 'deploy/**' - disable-strict-forbidden-file-verification: 'true' - forbidden-file-paths: - - compare-type: ANT - pattern: 'docs/**' - dependency-jobs: 'fuel-merge-build-{stream}' - - builders: - - shell: - !include-raw-escape: ./fuel-download-artifact.sh - - shell: - !include-raw-escape: ./fuel-deploy.sh - - shell: - !include-raw-escape: ./fuel-workspace-cleanup.sh - - publishers: - - email: - recipients: fzhadaev@mirantis.com - -- job-template: name: 'fuel-deploy-generic-daily-{stream}' concurrent: true @@ -236,14 +48,15 @@ - project-parameter: project: '{project}' branch: '{branch}' - - '{installer}-defaults' + - '{installer}-defaults': + gs-pathname: '{gs-pathname}' - string: name: GIT_BASE default: https://gerrit.opnfv.org/gerrit/$PROJECT description: 'Git URL to use on this Jenkins Slave' - string: name: DEPLOY_SCENARIO - default: 'os-odl_l2-nofeature-ha' + default: 'os-odl-nofeature-ha' - node: name: SLAVE_NAME description: 'Slave name on Jenkins' @@ -253,8 +66,6 @@ - ericsson-pod1 default-slaves: - ericsson-pod2 - - fuel-project-parameter: - gs-pathname: '{gs-pathname}' scm: - git-scm @@ -265,25 +76,4 @@ builders: - shell: - !include-raw-escape: ./fuel-download-artifact.sh - - shell: !include-raw-escape: ./fuel-deploy.sh - -######################## -# parameter macros -######################## -- parameter: - name: fuel-project-parameter - parameters: - - string: - name: BUILD_DIRECTORY - default: $WORKSPACE/build_output - description: "Directory where the build artifact will be located upon the completion of the build." - - string: - name: CACHE_DIRECTORY - default: $HOME/opnfv/cache/$INSTALLER_TYPE - description: "Directory where the cache to be used during the build is located." - - string: - name: GS_URL - default: artifacts.opnfv.org/$PROJECT{gs-pathname} - description: "URL to Google Storage." diff --git a/jjb/fuel/fuel-upload-artifact.sh b/jjb/fuel/fuel-upload-artifact.sh deleted file mode 100755 index d1ac3509b..000000000 --- a/jjb/fuel/fuel-upload-artifact.sh +++ /dev/null @@ -1,118 +0,0 @@ -#!/bin/bash -# SPDX-license-identifier: Apache-2.0 -############################################################################## -# Copyright (c) 2016 Ericsson AB 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 pipefail - -# check if we built something -if [ -f $WORKSPACE/.noupload ]; then - echo "Nothing new to upload. Exiting." - /bin/rm -f $WORKSPACE/.noupload - exit 0 -fi - -# source the opnfv.properties to get ARTIFACT_VERSION -source $WORKSPACE/opnfv.properties - -nfsstore () { -# storing ISOs for verify & merge jobs will be done once we get the disk array -if [[ ! "$JOB_NAME" =~ (verify|merge) ]]; then - # store ISO locally on NFS first - ISOSTORE="/iso_mount/opnfv_ci/${BRANCH##*/}" - if [[ -d "$ISOSTORE" ]]; then - # remove all but most recent 5 ISOs first to keep iso_mount clean & tidy - cd $ISOSTORE - ls -tp | grep -v '/' | tail -n +6 | xargs -d '\n' /bin/rm -f -- - - # store ISO - echo "Storing $INSTALLER_TYPE artifact on NFS..." - /bin/cp -f $BUILD_DIRECTORY/opnfv-$OPNFV_ARTIFACT_VERSION.iso \ - $ISOSTORE/opnfv-$OPNFV_ARTIFACT_VERSION.iso - fi -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 - source $WORKSPACE/releng/utils/gpg_import_key.sh -fi -} - -signiso () { -gpg2 -vvv --batch --yes --no-tty \ - --default-key opnfv-helpdesk@rt.linuxfoundation.org \ - --passphrase besteffort \ - --detach-sig $BUILD_DIRECTORY/opnfv-$OPNFV_ARTIFACT_VERSION.iso - -gsutil cp $BUILD_DIRECTORY/opnfv-$OPNFV_ARTIFACT_VERSION.iso.sig gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso.sig -echo "ISO signature Upload Complete!" -} - -uploadiso () { -# log info to console -echo "Uploading $INSTALLER_TYPE artifact. This could take some time..." -echo - -cd $WORKSPACE -# upload artifact and additional files to google storage -gsutil cp $BUILD_DIRECTORY/opnfv-$OPNFV_ARTIFACT_VERSION.iso \ - gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso > gsutil.iso.log 2>&1 -gsutil cp $WORKSPACE/opnfv.properties \ - gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.properties > gsutil.properties.log 2>&1 -if [[ ! "$JOB_NAME" =~ (verify|merge) ]]; then - gsutil cp $WORKSPACE/opnfv.properties \ - gs://$GS_URL/latest.properties > gsutil.latest.log 2>&1 -elif [[ "$JOB_NAME" =~ "merge" ]]; then - echo "Uploaded Fuel ISO for a merged change" -fi - -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 - -gsutil -m setmeta \ - -h "Cache-Control:private, max-age=0, no-transform" \ - gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso > /dev/null 2>&1 - -# disabled errexit due to gsutil setmeta complaints -# BadRequestException: 400 Invalid argument -# check if we uploaded the file successfully to see if things are fine -gsutil ls gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso > /dev/null 2>&1 -if [[ $? -ne 0 ]]; then - echo "Problem while uploading artifact!" - echo "Check log $WORKSPACE/gsutil.iso.log on the machine where this build is done." - exit 1 -fi - -echo "Done!" -echo -echo "--------------------------------------------------------" -echo -echo "Artifact is available as http://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.iso" -echo -echo "--------------------------------------------------------" -echo -} - -nfsstore - -if [[ "$JOB_NAME" =~ merge ]]; then - uploadiso -elif [[ "$JOB_NAME" =~ build ]]; then - importkey - signiso - uploadiso -fi - diff --git a/jjb/fuel/fuel-verify-jobs.yml b/jjb/fuel/fuel-verify-jobs.yml index 549f7dafa..45197fc4e 100644 --- a/jjb/fuel/fuel-verify-jobs.yml +++ b/jjb/fuel/fuel-verify-jobs.yml @@ -12,22 +12,20 @@ branch: '{stream}' gs-pathname: '' disabled: false - - danube: + - euphrates: branch: 'stable/{stream}' gs-pathname: '/{stream}' - disabled: false + disabled: true ##################################### # patch verification phases ##################################### phase: - 'basic': - slave-label: 'opnfv-build-ubuntu' - - 'build': - slave-label: 'opnfv-build-ubuntu' + slave-label: 'fuel-virtual' - 'deploy-virtual': - slave-label: 'opnfv-build-ubuntu' + slave-label: 'fuel-virtual' - 'smoke-test': - slave-label: 'opnfv-build-ubuntu' + slave-label: 'fuel-virtual' ##################################### # jobs ##################################### @@ -52,6 +50,11 @@ enabled: true max-total: 4 option: 'project' + - build-blocker: + use-build-blocker: true + blocking-jobs: + - 'fuel-os-.*?-virtual-daily-.*' + block-level: 'NODE' scm: - git-scm-gerrit @@ -85,9 +88,7 @@ - compare-type: ANT pattern: 'ci/**' - compare-type: ANT - pattern: 'build/**' - - compare-type: ANT - pattern: 'deploy/**' + pattern: 'mcp/**' disable-strict-forbidden-file-verification: 'true' forbidden-file-paths: - compare-type: ANT @@ -98,8 +99,9 @@ - project-parameter: project: '{project}' branch: '{branch}' - - 'opnfv-build-ubuntu-defaults' - - 'fuel-verify-defaults': + - 'fuel-virtual-defaults': + installer: '{installer}' + - '{installer}-defaults': gs-pathname: '{gs-pathname}' builders: @@ -120,20 +122,6 @@ kill-phase-on: FAILURE abort-all-job: true - multijob: - name: build - condition: SUCCESSFUL - projects: - - name: 'fuel-verify-build-{stream}' - current-parameters: false - predefined-parameters: | - BRANCH=$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 - - multijob: name: deploy-virtual condition: SUCCESSFUL projects: @@ -173,7 +161,8 @@ - logrotate-default - throttle: enabled: true - max-total: 6 + max-total: 2 + max-per-node: 1 option: 'project' - build-blocker: use-build-blocker: true @@ -195,8 +184,9 @@ project: '{project}' branch: '{branch}' - '{slave-label}-defaults' - - '{installer}-defaults' - - 'fuel-verify-defaults': + - 'fuel-virtual-defaults': + installer: '{installer}' + - '{installer}-defaults': gs-pathname: '{gs-pathname}' builders: @@ -215,20 +205,10 @@ echo "Not activated!" - builder: - name: 'fuel-verify-build-macro' - builders: - - shell: - !include-raw: ./fuel-build.sh - - shell: - !include-raw: ./fuel-workspace-cleanup.sh - -- builder: name: 'fuel-verify-deploy-virtual-macro' builders: - - shell: | - #!/bin/bash - - echo "Not activated!" + - shell: + !include-raw: ./fuel-deploy.sh - builder: name: 'fuel-verify-smoke-test-macro' @@ -237,21 +217,3 @@ #!/bin/bash echo "Not activated!" -##################################### -# parameter macros -##################################### -- parameter: - name: 'fuel-verify-defaults' - parameters: - - string: - name: BUILD_DIRECTORY - default: $WORKSPACE/build_output - description: "Directory where the build artifact will be located upon the completion of the build." - - string: - name: CACHE_DIRECTORY - default: $HOME/opnfv/cache/$INSTALLER_TYPE - description: "Directory where the cache to be used during the build is located." - - string: - name: GS_URL - default: artifacts.opnfv.org/$PROJECT{gs-pathname} - description: "URL to Google Storage." diff --git a/jjb/fuel/fuel-weekly-jobs.yml b/jjb/fuel/fuel-weekly-jobs.yml index bd42ed85c..e1563ea38 100644 --- a/jjb/fuel/fuel-weekly-jobs.yml +++ b/jjb/fuel/fuel-weekly-jobs.yml @@ -15,10 +15,10 @@ branch: '{stream}' disabled: false gs-pathname: '' - danube: &danube - stream: danube + euphrates: &euphrates + stream: euphrates branch: 'stable/{stream}' - disabled: false + disabled: true gs-pathname: '/{stream}' #-------------------------------- # POD, INSTALLER, AND BRANCH MAPPING @@ -34,10 +34,10 @@ <<: *master - baremetal: slave-label: fuel-baremetal - <<: *danube + <<: *euphrates - virtual: slave-label: fuel-virtual - <<: *danube + <<: *euphrates #-------------------------------- # scenarios #-------------------------------- @@ -72,6 +72,7 @@ blocking-jobs: - 'fuel-os-.*?-{pod}-daily-.*' - 'fuel-os-.*?-{pod}-weekly-.*' + - 'fuel-verify-.*' block-level: 'NODE' wrappers: @@ -85,14 +86,13 @@ - project-parameter: project: '{project}' branch: '{branch}' - - '{installer}-defaults' + - '{installer}-defaults': + gs-pathname: '{gs-pathname}' - '{slave-label}-defaults': installer: '{installer}' - string: name: DEPLOY_SCENARIO default: '{scenario}' - - fuel-weekly-parameter: - gs-pathname: '{gs-pathname}' builders: - description-setter: @@ -119,6 +119,7 @@ publishers: - email: recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com + - email-jenkins-admins-on-failure - job-template: name: 'fuel-deploy-{pod}-weekly-{stream}' @@ -147,14 +148,13 @@ - project-parameter: project: '{project}' branch: '{branch}' - - '{installer}-defaults' + - '{installer}-defaults': + gs-pathname: '{gs-pathname}' - '{slave-label}-defaults': installer: '{installer}' - string: name: DEPLOY_SCENARIO - default: 'os-odl_l2-nofeature-ha' - - fuel-weekly-parameter: - gs-pathname: '{gs-pathname}' + default: 'os-odl-nofeature-ha' - string: name: DEPLOY_TIMEOUT default: '150' @@ -171,33 +171,14 @@ - description-setter: description: "Built on $NODE_NAME" - shell: - !include-raw-escape: ./fuel-download-artifact.sh - - shell: !include-raw-escape: ./fuel-deploy.sh publishers: - email: recipients: peter.barabas@ericsson.com fzhadaev@mirantis.com + - email-jenkins-admins-on-failure ######################## -# parameter macros -######################## -- parameter: - name: fuel-weekly-parameter - parameters: - - string: - name: BUILD_DIRECTORY - default: $WORKSPACE/build_output - description: "Directory where the build artifact will be located upon the completion of the build." - - string: - name: CACHE_DIRECTORY - default: $HOME/opnfv/cache/$INSTALLER_TYPE - description: "Directory where the cache to be used during the build is located." - - string: - name: GS_URL - default: artifacts.opnfv.org/$PROJECT{gs-pathname} - description: "URL to Google Storage." -######################## # trigger macros ######################## #----------------------------------------------- diff --git a/jjb/fuel/fuel-workspace-cleanup.sh b/jjb/fuel/fuel-workspace-cleanup.sh deleted file mode 100755 index d8948c7a0..000000000 --- a/jjb/fuel/fuel-workspace-cleanup.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash -# SPDX-license-identifier: Apache-2.0 -############################################################################## -# Copyright (c) 2016 Ericsson AB 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 - -# delete the $WORKSPACE to open some space -/bin/rm -rf $WORKSPACE |