summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--INFO2
-rwxr-xr-xjjb/apex/apex-deploy.sh26
-rw-r--r--jjb/apex/apex.yml103
-rw-r--r--jjb/armband/armband-ci-jobs.yml75
-rwxr-xr-xjjb/armband/build.sh41
-rw-r--r--jjb/compass4nfv/compass-ci-jobs.yml44
-rw-r--r--jjb/fuel/fuel-ci-jobs.yml220
-rwxr-xr-xjjb/fuel/fuel-deploy.sh2
-rwxr-xr-xjjb/fuel/fuel-download-artifact.sh5
-rw-r--r--jjb/functest/functest-ci-jobs.yml1
-rw-r--r--jjb/joid/joid-ci-jobs.yml10
-rw-r--r--jjb/joid/joid-deploy.sh2
-rwxr-xr-xjjb/kvmfornfv/kvmfornfv-download-artifact.sh28
-rwxr-xr-xjjb/kvmfornfv/kvmfornfv-test.sh10
-rwxr-xr-xjjb/kvmfornfv/kvmfornfv-upload-artifact.sh36
-rw-r--r--jjb/kvmfornfv/kvmfornfv.yml170
-rw-r--r--jjb/multisite/multisite.yml3
-rw-r--r--jjb/opnfv/installer-params.yml4
-rw-r--r--jjb/opnfv/opnfv-docs.yml46
-rw-r--r--jjb/opnfv/slave-params.yml50
-rw-r--r--jjb/qtip/qtip-ci-jobs.yml6
-rw-r--r--jjb/releng-macros.yaml2
-rw-r--r--jjb/releng/releng-ci-jobs.yml2
-rw-r--r--jjb/yardstick/yardstick-ci-jobs.yml8
-rwxr-xr-xjjb/yardstick/yardstick-daily.sh5
-rw-r--r--prototypes/bifrost/.gitkeep0
-rw-r--r--prototypes/puppet-infracloud/.gitkeep0
-rwxr-xr-xutils/fetch_os_creds.sh6
-rw-r--r--utils/push-test-logs.sh1
-rw-r--r--utils/test/reporting/functest/reporting-status.py9
-rw-r--r--utils/test/reporting/functest/reportingConf.py9
-rw-r--r--utils/test/reporting/functest/testCase.py12
32 files changed, 831 insertions, 107 deletions
diff --git a/INFO b/INFO
index 6b8450052..b723fa8c8 100644
--- a/INFO
+++ b/INFO
@@ -19,7 +19,9 @@ Matthew Lijun (Huawei, matthew.lijun@huawei.com)
Jose Lausuch (Ericsson, jose.lausuch@ericsson.com)
Ryota Mibu (NEC, r-mibu@cq.jp.nec.com)
Mei Mei (Huawei, meimei@huawei.com)
+Trevor Bramwell (Linux Foundation, tbramwell@linuxfoundation.org)
Link to TSC approval of the project: http://ircbot.wl.linuxfoundation.org/meetings/opnfv-meeting/2015/opnfv-meeting.2015-07-14-14.00.html
Link to TSC voting for removal of Victor Laza as committer: http://meetbot.opnfv.org/meetings/opnfv-meeting/2016/opnfv-meeting.2016-02-16-14.59.html
Link to nomination and acceptance of Mei Mei as committer: http://lists.opnfv.org/pipermail/opnfv-tsc/2016-March/002228.html
+Links to nomination and accceptance of Trevor Bramwell as committer: http://lists.opnfv.org/pipermail/opnfv-tech-discuss/2016-July/011659.html and http://lists.opnfv.org/pipermail/opnfv-tech-discuss/2016-July/011714.html
diff --git a/jjb/apex/apex-deploy.sh b/jjb/apex/apex-deploy.sh
index b0ff7bded..24ed84840 100755
--- a/jjb/apex/apex-deploy.sh
+++ b/jjb/apex/apex-deploy.sh
@@ -4,6 +4,7 @@ set -o nounset
set -o pipefail
APEX_PKGS="common undercloud opendaylight-sfc onos"
+IPV6_FLAG=False
# log info to console
echo "Starting the Apex virtual deployment."
@@ -71,6 +72,7 @@ if [[ "$BUILD_DIRECTORY" == *verify* ]]; then
DEPLOY_SETTINGS_DIR="${WORKSPACE}/config/deploy"
NETWORK_SETTINGS_DIR="${WORKSPACE}/config/network"
DEPLOY_CMD="$(pwd)/deploy.sh"
+ UTIL_CMD="$(pwd)/util.sh"
RESOURCES="${WORKSPACE}/build/images/"
CONFIG="${WORKSPACE}/build"
LIB="${WORKSPACE}/lib"
@@ -128,6 +130,7 @@ else
DEPLOY_CMD=opnfv-deploy
DEPLOY_SETTINGS_DIR="/etc/opnfv-apex/"
+ UTIL_CMD=opnfv-util
NETWORK_SETTINGS_DIR="/etc/opnfv-apex/"
RESOURCES="/var/opt/opnfv/images"
CONFIG="/var/opt/opnfv"
@@ -136,6 +139,7 @@ fi
# set env vars to deploy cmd
DEPLOY_CMD="CONFIG=${CONFIG} RESOURCES=${RESOURCES} LIB=${LIB} ${DEPLOY_CMD}"
+UTIL_CMD="CONFIG=${CONFIG} RESOURCES=${RESOURCES} LIB=${LIB} ${UTIL_CMD}"
if [ "$OPNFV_CLEAN" == 'yes' ]; then
if [[ "$BUILD_DIRECTORY" == *verify* ]]; then
@@ -145,6 +149,12 @@ if [ "$OPNFV_CLEAN" == 'yes' ]; then
fi
fi
+if echo ${DEPLOY_SCENARIO} | grep ipv6; then
+ IPV6_FLAG=True
+ DEPLOY_SCENARIO=$(echo ${DEPLOY_SCENARIO} | sed 's/-ipv6//')
+ echo "INFO: IPV6 Enabled"
+fi
+
echo "Deploy Scenario set to ${DEPLOY_SCENARIO}"
DEPLOY_FILE="${DEPLOY_SETTINGS_DIR}/${DEPLOY_SCENARIO}.yaml"
@@ -154,11 +164,19 @@ fi
if [[ "$JOB_NAME" == *virtual* ]]; then
# settings for virtual deployment
- NETWORK_FILE="${NETWORK_SETTINGS_DIR}/network_settings.yaml"
+ if [ "$IPV6_FLAG" == "True" ]; then
+ NETWORK_FILE="${NETWORK_SETTINGS_DIR}/network_settings_v6.yaml"
+ else
+ NETWORK_FILE="${NETWORK_SETTINGS_DIR}/network_settings.yaml"
+ fi
DEPLOY_CMD="${DEPLOY_CMD} -v"
else
# settings for bare metal deployment
- NETWORK_FILE="/root/network/network_settings.yaml"
+ if [ "$IPV6_FLAG" == "True" ]; then
+ NETWORK_FILE="/root/network/network_settings_v6.yaml"
+ else
+ NETWORK_FILE="/root/network/network_settings.yaml"
+ fi
INVENTORY_FILE="/root/inventory/pod_settings.yaml"
if ! sudo test -e "$INVENTORY_FILE"; then
@@ -175,8 +193,12 @@ if ! sudo test -e "$NETWORK_FILE"; then
exit 1
fi
+# mock detached state for deploy
+sudo $UTIL_CMD mock-detached on
# start deployment
sudo ${DEPLOY_CMD} -d ${DEPLOY_FILE} -n ${NETWORK_FILE} --debug
+# turn of mock detached state
+sudo $UTIL_CMD mock-detached off
echo
echo "--------------------------------------------------------"
diff --git a/jjb/apex/apex.yml b/jjb/apex/apex.yml
index 604e4d406..da9089cd6 100644
--- a/jjb/apex/apex.yml
+++ b/jjb/apex/apex.yml
@@ -54,8 +54,11 @@
scenario:
- 'os-nosdn-nofeature-noha'
- 'os-nosdn-nofeature-ha'
+ - 'os-nosdn-nofeature-ha-ipv6'
+ - 'os-nosdn-fdio-noha'
- 'os-odl_l2-nofeature-ha'
- 'os-odl_l2-bgpvpn-ha'
+ - 'os-odl_l2-fdio-noha'
- 'os-odl_l2-sfc-noha'
- 'os-odl_l3-nofeature-ha'
- 'os-onos-nofeature-ha'
@@ -919,6 +922,106 @@
build-step-failure-threshold: 'never'
failure-threshold: 'never'
unstable-threshold: 'FAILURE'
+ - trigger-builds:
+ - project: 'apex-deploy-baremetal-os-odl_l2-fdio-noha-{stream1}'
+ predefined-parameters: |
+ BUILD_DIRECTORY=apex-build-{stream1}/build
+ OPNFV_CLEAN=yes
+ git-revision: true
+ same-node: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ block: true
+ - trigger-builds:
+ - project: 'functest-apex-{daily-slave}-daily-{stream1}'
+ predefined-parameters:
+ DEPLOY_SCENARIO=os-odl_l2-fdio-noha
+ block: true
+ same-node: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ failure-threshold: 'never'
+ unstable-threshold: 'FAILURE'
+ - trigger-builds:
+ - project: 'yardstick-apex-{slave}-daily-{stream1}'
+ predefined-parameters:
+ DEPLOY_SCENARIO=os-odl_l2-fdio-noha
+ block: true
+ same-node: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ failure-threshold: 'never'
+ unstable-threshold: 'FAILURE'
+ - trigger-builds:
+ - project: 'apex-deploy-baremetal-os-nosdn-fdio-noha-{stream1}'
+ predefined-parameters: |
+ BUILD_DIRECTORY=apex-build-{stream1}/build
+ OPNFV_CLEAN=yes
+ git-revision: true
+ same-node: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ block: true
+ - trigger-builds:
+ - project: 'functest-apex-{daily-slave}-daily-{stream1}'
+ predefined-parameters:
+ DEPLOY_SCENARIO=os-nosdn-fdio-noha
+ block: true
+ same-node: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ failure-threshold: 'never'
+ unstable-threshold: 'FAILURE'
+ - trigger-builds:
+ - project: 'yardstick-apex-{slave}-daily-{stream1}'
+ predefined-parameters:
+ DEPLOY_SCENARIO=os-nosdn-fdio-noha
+ block: true
+ same-node: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ failure-threshold: 'never'
+ unstable-threshold: 'FAILURE'
+ - trigger-builds:
+ - project: 'apex-deploy-baremetal-os-nosdn-fdio-noha-{stream1}'
+ predefined-parameters: |
+ BUILD_DIRECTORY=apex-build-{stream1}/build
+ OPNFV_CLEAN=yes
+ git-revision: true
+ same-node: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ block: true
+ - trigger-builds:
+ - project: 'functest-apex-{daily-slave}-daily-{stream1}'
+ predefined-parameters:
+ DEPLOY_SCENARIO=os-nosdn-fdio-noha
+ block: true
+ same-node: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ failure-threshold: 'never'
+ unstable-threshold: 'FAILURE'
+ - trigger-builds:
+ - project: 'yardstick-apex-{slave}-daily-{stream1}'
+ predefined-parameters:
+ DEPLOY_SCENARIO=os-nosdn-fdio-noha
+ block: true
+ same-node: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ failure-threshold: 'never'
+ unstable-threshold: 'FAILURE'
+ - trigger-builds:
+ - project: 'apex-deploy-virtual-os-nosdn-nofeature-ha-ipv6-{stream1}'
+ predefined-parameters: |
+ BUILD_DIRECTORY=apex-build-{stream1}/build
+ OPNFV_CLEAN=yes
+ git-revision: true
+ same-node: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ block: true
- job-template:
name: 'apex-gs-clean-{stream}'
diff --git a/jjb/armband/armband-ci-jobs.yml b/jjb/armband/armband-ci-jobs.yml
index 9d7c198d0..03c1fb074 100644
--- a/jjb/armband/armband-ci-jobs.yml
+++ b/jjb/armband/armband-ci-jobs.yml
@@ -39,17 +39,17 @@
scenario:
# HA scenarios
- 'os-nosdn-nofeature-ha':
- auto-trigger-name: 'daily-trigger-disabled'
+ auto-trigger-name: 'armband-{scenario}-{pod}-{stream}-trigger'
- 'os-odl_l2-nofeature-ha':
auto-trigger-name: 'armband-{scenario}-{pod}-{stream}-trigger'
- 'os-odl_l3-nofeature-ha':
- auto-trigger-name: 'daily-trigger-disabled'
+ auto-trigger-name: 'armband-{scenario}-{pod}-{stream}-trigger'
- 'os-odl_l2-bgpvpn-ha':
- auto-trigger-name: 'daily-trigger-disabled'
+ auto-trigger-name: 'armband-{scenario}-{pod}-{stream}-trigger'
# NOHA scenarios
- 'os-odl_l2-nofeature-noha':
- auto-trigger-name: 'daily-trigger-disabled'
+ auto-trigger-name: 'armband-{scenario}-{pod}-{stream}-trigger'
jobs:
- 'armband-{scenario}-{pod}-daily-{stream}'
@@ -190,11 +190,26 @@
#----------------------------------------------------------
# Enea Armband POD 1 Triggers running against master branch
#----------------------------------------------------------
-# No triggers for master for now
- trigger:
name: 'armband-os-odl_l2-nofeature-ha-arm-pod1-master-trigger'
triggers:
- - timed: ''
+ - timed: '0 3 * * 1,4'
+- trigger:
+ name: 'armband-os-nosdn-nofeature-ha-arm-pod1-master-trigger'
+ triggers:
+ - timed: '0 15 * * 1,4'
+- trigger:
+ name: 'armband-os-odl_l3-nofeature-ha-arm-pod1-master-trigger'
+ triggers:
+ - timed: '0 3 * * 2,5'
+- trigger:
+ name: 'armband-os-odl_l2-bgpvpn-ha-arm-pod1-master-trigger'
+ triggers:
+ - timed: '0 15 * * 2,5'
+- trigger:
+ name: 'armband-os-odl_l2-nofeature-noha-arm-pod1-master-trigger'
+ triggers:
+ - timed: '0 3 * * 3,6'
#---------------------------------------------------------------
# Enea Armband POD 1 Triggers running against brahmaputra branch
#---------------------------------------------------------------
@@ -202,6 +217,22 @@
name: 'armband-os-odl_l2-nofeature-ha-arm-pod1-brahmaputra-trigger'
triggers:
- timed: ''
+- trigger:
+ name: 'armband-os-nosdn-nofeature-ha-arm-pod1-brahmaputra-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'armband-os-odl_l3-nofeature-ha-arm-pod1-brahmaputra-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'armband-os-odl_l2-bgpvpn-ha-arm-pod1-brahmaputra-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'armband-os-odl_l2-nofeature-noha-arm-pod1-brahmaputra-trigger'
+ triggers:
+ - timed: ''
#----------------------------------------------------------
# Enea Armband POD 2 Triggers running against master branch
#----------------------------------------------------------
@@ -210,6 +241,22 @@
name: 'armband-os-odl_l2-nofeature-ha-arm-pod2-master-trigger'
triggers:
- timed: ''
+- trigger:
+ name: 'armband-os-nosdn-nofeature-ha-arm-pod2-master-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'armband-os-odl_l3-nofeature-ha-arm-pod2-master-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'armband-os-odl_l2-bgpvpn-ha-arm-pod2-master-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'armband-os-odl_l2-nofeature-noha-arm-pod2-master-trigger'
+ triggers:
+ - timed: ''
#---------------------------------------------------------------
# Enea Armband POD 2 Triggers running against brahmaputra branch
#---------------------------------------------------------------
@@ -217,3 +264,19 @@
name: 'armband-os-odl_l2-nofeature-ha-arm-pod2-brahmaputra-trigger'
triggers:
- timed: ''
+- trigger:
+ name: 'armband-os-nosdn-nofeature-ha-arm-pod2-brahmaputra-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'armband-os-odl_l3-nofeature-ha-arm-pod2-brahmaputra-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'armband-os-odl_l2-bgpvpn-ha-arm-pod2-brahmaputra-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'armband-os-odl_l2-nofeature-noha-arm-pod2-brahmaputra-trigger'
+ triggers:
+ - timed: ''
diff --git a/jjb/armband/build.sh b/jjb/armband/build.sh
index 81917f6de..26c46d2fc 100755
--- a/jjb/armband/build.sh
+++ b/jjb/armband/build.sh
@@ -1,6 +1,8 @@
#!/bin/bash
+# SPDX-license-identifier: Apache-2.0
##############################################################################
# Copyright (c) 2016 Ericsson AB and others.
+# Copyright (c) 2016 Enea AB.
# 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,14 +14,49 @@ set -o pipefail
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 Armband Fuel ISO for this commit"
+
+ curl -s -o $LATEST_ISO_PROPERTIES http://$GS_URL/latest.properties 2>/dev/null
+
+ # get metadata of latest ISO
+ 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 "***************************************************"
+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 Armband. This could take some time..."
+echo "Starting the build of Armband $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"
@@ -39,7 +76,7 @@ NOCACHE_ARG=${NOCACHE_ARG:-}
# start the build
cd $WORKSPACE/ci
-./build.sh $BUILD_DIRECTORY
+./build.sh -v $OPNFV_ARTIFACT_VERSION $NOCACHE_ARG -c file://$CACHE_DIRECTORY $BUILD_DIRECTORY
# list the build artifacts
ls -al $BUILD_DIRECTORY
diff --git a/jjb/compass4nfv/compass-ci-jobs.yml b/jjb/compass4nfv/compass-ci-jobs.yml
index 500984ada..eb30004d1 100644
--- a/jjb/compass4nfv/compass-ci-jobs.yml
+++ b/jjb/compass4nfv/compass-ci-jobs.yml
@@ -63,7 +63,7 @@
- 'os-onos-sfc-ha':
disabled: false
auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
- - 'os-odl_l2-moon-noha':
+ - 'os-odl_l2-moon-ha':
disabled: false
auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger'
- 'os-nosdn-kvm-ha':
@@ -238,7 +238,7 @@
- trigger:
name: 'compass-os-nosdn-nofeature-ha-huawei-pod2-master-trigger'
triggers:
- - timed: '0 3 * * *'
+ - timed: '0 19 * * *'
- trigger:
name: 'compass-os-odl_l2-nofeature-ha-huawei-pod2-master-trigger'
triggers:
@@ -246,11 +246,11 @@
- trigger:
name: 'compass-os-odl_l3-nofeature-ha-huawei-pod2-master-trigger'
triggers:
- - timed: '0 19 * * *'
+ - timed: '0 15 * * *'
- trigger:
name: 'compass-os-onos-nofeature-ha-huawei-pod2-master-trigger'
triggers:
- - timed: '0 15 * * *'
+ - timed: ''
- trigger:
name: 'compass-os-ocl-nofeature-ha-huawei-pod2-master-trigger'
triggers:
@@ -258,9 +258,9 @@
- trigger:
name: 'compass-os-onos-sfc-ha-huawei-pod2-master-trigger'
triggers:
- - timed: '0 7 * * *'
+ - timed: ''
- trigger:
- name: 'compass-os-odl_l2-moon-noha-huawei-pod2-master-trigger'
+ name: 'compass-os-odl_l2-moon-ha-huawei-pod2-master-trigger'
triggers:
- timed: ''
- trigger:
@@ -271,29 +271,29 @@
- trigger:
name: 'compass-os-nosdn-nofeature-ha-baremetal-master-trigger'
triggers:
- - timed: '0 3 * * *'
+ - timed: '0 2 * * *'
- trigger:
name: 'compass-os-odl_l2-nofeature-ha-baremetal-master-trigger'
triggers:
- - timed: '0 23 * * *'
+ - timed: '0 22 * * *'
- trigger:
name: 'compass-os-odl_l3-nofeature-ha-baremetal-master-trigger'
triggers:
- - timed: '0 19 * * *'
+ - timed: '0 18 * * *'
- trigger:
name: 'compass-os-onos-nofeature-ha-baremetal-master-trigger'
triggers:
- - timed: '0 15 * * *'
+ - timed: '0 14 * * *'
- trigger:
name: 'compass-os-ocl-nofeature-ha-baremetal-master-trigger'
triggers:
- - timed: '0 11 * * *'
+ - timed: '0 10 * * *'
- trigger:
name: 'compass-os-onos-sfc-ha-baremetal-master-trigger'
triggers:
- - timed: '0 7 * * *'
+ - timed: '0 6 * * *'
- trigger:
- name: 'compass-os-odl_l2-moon-noha-baremetal-master-trigger'
+ name: 'compass-os-odl_l2-moon-ha-baremetal-master-trigger'
triggers:
- timed: ''
- trigger:
@@ -326,7 +326,7 @@
triggers:
- timed: ''
- trigger:
- name: 'compass-os-odl_l2-moon-noha-baremetal-brahmaputra-trigger'
+ name: 'compass-os-odl_l2-moon-ha-baremetal-brahmaputra-trigger'
triggers:
- timed: ''
- trigger:
@@ -337,11 +337,11 @@
- trigger:
name: 'compass-os-nosdn-nofeature-ha-virtual-master-trigger'
triggers:
- - timed: '0 3 * * *'
+ - timed: '0 21 * * *'
- trigger:
name: 'compass-os-odl_l2-nofeature-ha-virtual-master-trigger'
triggers:
- - timed: '0 23 * * *'
+ - timed: '0 20 * * *'
- trigger:
name: 'compass-os-odl_l3-nofeature-ha-virtual-master-trigger'
triggers:
@@ -349,19 +349,19 @@
- trigger:
name: 'compass-os-onos-nofeature-ha-virtual-master-trigger'
triggers:
- - timed: '0 15 * * *'
+ - timed: '0 18 * * *'
- trigger:
name: 'compass-os-ocl-nofeature-ha-virtual-master-trigger'
triggers:
- - timed: '0 11 * * *'
+ - timed: '0 16 * * *'
- trigger:
name: 'compass-os-onos-sfc-ha-virtual-master-trigger'
triggers:
- - timed: '0 7 * * *'
+ - timed: '0 15 * * *'
- trigger:
- name: 'compass-os-odl_l2-moon-noha-virtual-master-trigger'
+ name: 'compass-os-odl_l2-moon-ha-virtual-master-trigger'
triggers:
- - timed: ''
+ - timed: '0 14 * * *'
- trigger:
name: 'compass-os-nosdn-kvm-ha-virtual-master-trigger'
triggers:
@@ -392,7 +392,7 @@
triggers:
- timed: ''
- trigger:
- name: 'compass-os-odl_l2-moon-noha-virtual-brahmaputra-trigger'
+ name: 'compass-os-odl_l2-moon-ha-virtual-brahmaputra-trigger'
triggers:
- timed: ''
- trigger:
diff --git a/jjb/fuel/fuel-ci-jobs.yml b/jjb/fuel/fuel-ci-jobs.yml
index dbf19297c..b9e201d46 100644
--- a/jjb/fuel/fuel-ci-jobs.yml
+++ b/jjb/fuel/fuel-ci-jobs.yml
@@ -14,11 +14,6 @@
stream: master
branch: '{stream}'
gs-pathname: ''
- brahmaputra: &brahmaputra
- stream: brahmaputra
- branch: 'stable/{stream}'
- gs-pathname: '/{stream}'
- auto-trigger-name: 'daily-trigger-disabled'
#--------------------------------
# POD, INSTALLER, AND BRANCH MAPPING
#--------------------------------
@@ -31,18 +26,15 @@
- virtual:
slave-label: fuel-virtual
<<: *master
- - baremetal:
- slave-label: fuel-baremetal
- <<: *brahmaputra
- - virtual:
- slave-label: fuel-virtual
- <<: *brahmaputra
#--------------------------------
# None-CI PODs
#--------------------------------
- zte-pod1:
slave-label: zte-pod1
<<: *master
+ - zte-pod3:
+ slave-label: zte-pod3
+ <<: *master
#--------------------------------
# scenarios
#--------------------------------
@@ -68,6 +60,25 @@
auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
- 'os-nosdn-kvm_ovs-ha':
auto-trigger-name: 'daily-trigger-disabled'
+ # 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':
+ 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':
+ auto-trigger-name: 'fuel-{scenario}-{pod}-daily-{stream}-trigger'
jobs:
- 'fuel-{scenario}-{pod}-daily-{stream}'
@@ -227,6 +238,8 @@
#-----------------------------------------------
# Triggers for job running on fuel-baremetal against master branch
#-----------------------------------------------
+
+# HA Scenarios
- trigger:
name: 'fuel-os-nosdn-nofeature-ha-baremetal-daily-master-trigger'
triggers:
@@ -262,11 +275,45 @@
- trigger:
name: 'fuel-os-nosdn-ovs-ha-baremetal-daily-master-trigger'
triggers:
+ - timed: '0 20 * * *'
+
+# NOHA Scenarios
+- trigger:
+ name: 'fuel-os-nosdn-nofeature-noha-baremetal-daily-master-trigger'
+ 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'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'fuel-os-onos-sfc-noha-baremetal-daily-master-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'fuel-os-onos-nofeature-noha-baremetal-daily-master-trigger'
+ 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: ''
+- trigger:
+ name: 'fuel-os-nosdn-ovs-noha-baremetal-daily-master-trigger'
+ triggers:
+ - timed: ''
#-----------------------------------------------
# Triggers for job running on fuel-virtual against master branch
#-----------------------------------------------
@@ -306,10 +353,45 @@
name: 'fuel-os-nosdn-ovs-ha-virtual-daily-master-trigger'
triggers:
- timed: ''
+
+# NOHA Scenarios
+- trigger:
+ name: 'fuel-os-nosdn-nofeature-noha-virtual-daily-master-trigger'
+ triggers:
+ - timed: '0 13 * * *'
+- trigger:
+ name: 'fuel-os-odl_l2-nofeature-noha-virtual-daily-master-trigger'
+ triggers:
+ - timed: '30 15 * * *'
+- trigger:
+ name: 'fuel-os-odl_l3-nofeature-noha-virtual-daily-master-trigger'
+ triggers:
+ - timed: '0 18 * * *'
+- trigger:
+ name: 'fuel-os-onos-sfc-noha-virtual-daily-master-trigger'
+ triggers:
+ - timed: '30 20 * * *'
+- trigger:
+ name: 'fuel-os-onos-nofeature-noha-virtual-daily-master-trigger'
+ triggers:
+ - timed: '0 23 * * *'
+- trigger:
+ name: 'fuel-os-odl_l2-sfc-noha-virtual-daily-master-trigger'
+ triggers:
+ - timed: '30 1 * * *'
+- trigger:
+ name: 'fuel-os-odl_l2-bgpvpn-noha-virtual-daily-master-trigger'
+ triggers:
+ - timed: '0 4 * * *'
- trigger:
name: 'fuel-os-nosdn-kvm-noha-virtual-daily-master-trigger'
triggers:
- - timed: ''
+ - timed: '30 6 * * *'
+- trigger:
+ name: 'fuel-os-nosdn-ovs-noha-virtual-daily-master-trigger'
+ triggers:
+ - timed: '0 9 * * *'
+
#-----------------------------------------------
# ZTE POD1 Triggers running against master branch
#-----------------------------------------------
@@ -349,3 +431,117 @@
name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-master-trigger'
triggers:
- timed: ''
+# NOHA Scenarios
+- trigger:
+ name: 'fuel-os-nosdn-nofeature-noha-zte-pod1-daily-master-trigger'
+ 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'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'fuel-os-onos-sfc-noha-zte-pod1-daily-master-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'fuel-os-onos-nofeature-noha-zte-pod1-daily-master-trigger'
+ 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: ''
+- trigger:
+ name: 'fuel-os-nosdn-ovs-noha-zte-pod1-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: ''
+- trigger:
+ name: 'fuel-os-odl_l3-nofeature-ha-zte-pod3-daily-master-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'fuel-os-onos-sfc-ha-zte-pod3-daily-master-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'fuel-os-onos-nofeature-ha-zte-pod3-daily-master-trigger'
+ 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 * * *'
+- trigger:
+ name: 'fuel-os-nosdn-ovs-ha-zte-pod3-daily-master-trigger'
+ triggers:
+ - timed: ''
+# NOHA Scenarios
+- trigger:
+ name: 'fuel-os-nosdn-nofeature-noha-zte-pod3-daily-master-trigger'
+ 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'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'fuel-os-onos-sfc-noha-zte-pod3-daily-master-trigger'
+ triggers:
+ - timed: ''
+- trigger:
+ name: 'fuel-os-onos-nofeature-noha-zte-pod3-daily-master-trigger'
+ 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: ''
+- trigger:
+ name: 'fuel-os-nosdn-ovs-noha-zte-pod3-daily-master-trigger'
+ triggers:
+ - timed: '' \ No newline at end of file
diff --git a/jjb/fuel/fuel-deploy.sh b/jjb/fuel/fuel-deploy.sh
index c30041711..730f0d116 100755
--- a/jjb/fuel/fuel-deploy.sh
+++ b/jjb/fuel/fuel-deploy.sh
@@ -29,7 +29,7 @@ fi
# set deployment parameters
export TMPDIR=$HOME/tmpdir
-BRIDGE=pxebr
+BRIDGE=${BRIDGE:-pxebr}
LAB_NAME=${NODE_NAME/-*}
POD_NAME=${NODE_NAME/*-}
diff --git a/jjb/fuel/fuel-download-artifact.sh b/jjb/fuel/fuel-download-artifact.sh
index d78ddc5ba..5685444f8 100755
--- a/jjb/fuel/fuel-download-artifact.sh
+++ b/jjb/fuel/fuel-download-artifact.sh
@@ -10,6 +10,9 @@
set -o errexit
set -o pipefail
+# use proxy url to replace the nomral URL, for googleusercontent.com will be blocked randomly
+[[ "$NODE_NAME" =~ (zte) ]] && GS_URL=$GS_BASE_PROXY
+
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
@@ -47,6 +50,8 @@ if [[ ! "$JOB_NAME" =~ (verify|merge) ]]; then
fi
fi
+[[ "$NODE_NAME" =~ (zte) ]] && OPNFV_ARTIFACT_URL=${GS_BASE_PROXY%%/*}/$OPNFV_ARTIFACT_URL
+
# log info to console
echo "Downloading the $INSTALLER_TYPE artifact using URL http://$OPNFV_ARTIFACT_URL"
echo "This could take some time..."
diff --git a/jjb/functest/functest-ci-jobs.yml b/jjb/functest/functest-ci-jobs.yml
index 2917e5b39..e88197de8 100644
--- a/jjb/functest/functest-ci-jobs.yml
+++ b/jjb/functest/functest-ci-jobs.yml
@@ -222,6 +222,7 @@
- 'rally_full'
- 'vims'
- 'multisite'
+ - 'parser'
- parameter:
name: functest-parameter
parameters:
diff --git a/jjb/joid/joid-ci-jobs.yml b/jjb/joid/joid-ci-jobs.yml
index ae03eab4a..1c998c9c4 100644
--- a/jjb/joid/joid-ci-jobs.yml
+++ b/jjb/joid/joid-ci-jobs.yml
@@ -253,7 +253,7 @@
- trigger:
name: 'joid-os-odl_l2-nofeature-ha-baremetal-master-trigger'
triggers:
- - timed: '0 10 * * *'
+ - timed: '0 7 * * *'
- trigger:
name: 'joid-os-odl_l2-nofeature-ha-virtual-master-trigger'
triggers:
@@ -289,7 +289,7 @@
- trigger:
name: 'joid-os-onos-nofeature-ha-baremetal-master-trigger'
triggers:
- - timed: '0 18 * * *'
+ - timed: '0 12 * * *'
- trigger:
name: 'joid-os-onos-nofeature-ha-virtual-master-trigger'
triggers:
@@ -307,7 +307,7 @@
- trigger:
name: 'joid-os-onos-sfc-ha-baremetal-master-trigger'
triggers:
- - timed: '0 22 * * *'
+ - timed: '0 17 * * *'
- trigger:
name: 'joid-os-onos-sfc-ha-virtual-master-trigger'
triggers:
@@ -359,7 +359,7 @@
- trigger:
name: 'joid-os-nosdn-lxd-noha-baremetal-master-trigger'
triggers:
- - timed: ''
+ - timed: '0 22 * * *'
- trigger:
name: 'joid-os-nosdn-lxd-noha-virtual-master-trigger'
triggers:
@@ -395,7 +395,7 @@
- trigger:
name: 'joid-os-nosdn-lxd-ha-baremetal-master-trigger'
triggers:
- - timed: ''
+ - timed: '0 10 * * *'
- trigger:
name: 'joid-os-nosdn-lxd-ha-virtual-master-trigger'
triggers:
diff --git a/jjb/joid/joid-deploy.sh b/jjb/joid/joid-deploy.sh
index 4b8e3ffda..da3676e28 100644
--- a/jjb/joid/joid-deploy.sh
+++ b/jjb/joid/joid-deploy.sh
@@ -83,7 +83,7 @@ else
sed -i -- "s/user: ubuntu/user: $MAAS_USER/" $MAASCONFIG
sed -i -- "s/password: ubuntu/password: $MAAS_PASSWORD/" $MAASCONFIG
echo "------ Redeploy MAAS ------"
- ./02-maasdeploy.sh $POD_NAME
+ ./00-maasdeploy.sh $POD_NAME
exit_on_error $? "MAAS Deploy FAILED"
fi
diff --git a/jjb/kvmfornfv/kvmfornfv-download-artifact.sh b/jjb/kvmfornfv/kvmfornfv-download-artifact.sh
new file mode 100755
index 000000000..89b7e3164
--- /dev/null
+++ b/jjb/kvmfornfv/kvmfornfv-download-artifact.sh
@@ -0,0 +1,28 @@
+#!/bin/bash
+
+if [[ "$JOB_NAME" =~ (verify|merge|daily|weekly) ]]; then
+ JOB_TYPE=${BASH_REMATCH[0]}
+else
+ echo "Unable to determine job type!"
+ exit 1
+fi
+
+# do stuff differently based on the job type
+case "$JOB_TYPE" in
+ verify)
+ echo "Downloading artifacts for the change $GERRIT_CHANGE_NUMBER. This could take some time..."
+ GS_UPLOAD_LOCATION="gs://artifacts.opnfv.org/$PROJECT/review/$GERRIT_CHANGE_NUMBER"
+ ;;
+ *)
+ echo "Artifact download is not enabled for $JOB_TYPE jobs"
+ exit 1
+esac
+
+/bin/mkdir -p $WORKSPACE/build_output
+gsutil cp -r $GS_UPLOAD_LOCATION/* $WORKSPACE/build_output > $WORKSPACE/gsutil.log 2>&1
+
+echo "--------------------------------------------------------"
+ls -al $WORKSPACE/build_output
+echo "--------------------------------------------------------"
+echo
+echo "Downloaded artifacts!"
diff --git a/jjb/kvmfornfv/kvmfornfv-test.sh b/jjb/kvmfornfv/kvmfornfv-test.sh
new file mode 100755
index 000000000..868de13bd
--- /dev/null
+++ b/jjb/kvmfornfv/kvmfornfv-test.sh
@@ -0,0 +1,10 @@
+#!/bin/bash
+##########################################################
+##This script includes executing cyclictest scripts.
+##########################################################
+#The latest build packages are stored in build_output
+ls -al $WORKSPACE/build_output
+
+#start the test
+cd $WORKSPACE
+./ci/test_kvmfornfv.sh
diff --git a/jjb/kvmfornfv/kvmfornfv-upload-artifact.sh b/jjb/kvmfornfv/kvmfornfv-upload-artifact.sh
new file mode 100755
index 000000000..190ab4b4d
--- /dev/null
+++ b/jjb/kvmfornfv/kvmfornfv-upload-artifact.sh
@@ -0,0 +1,36 @@
+#!/bin/bash
+
+if [[ "$JOB_NAME" =~ (verify|merge|daily|weekly) ]]; then
+ JOB_TYPE=${BASH_REMATCH[0]}
+else
+ echo "Unable to determine job type!"
+ exit 1
+fi
+
+case "$JOB_TYPE" in
+ verify)
+ echo "Uploading artifacts for the change $GERRIT_CHANGE_NUMBER. This could take some time..."
+ GS_UPLOAD_LOCATION="gs://artifacts.opnfv.org/$PROJECT/review/$GERRIT_CHANGE_NUMBER"
+ ;;
+ daily)
+ echo "Uploding daily artifacts This could take some time..."
+ OPNFV_ARTIFACT_VERSION=$(date -u +"%Y-%m-%d_%H-%M-%S")
+ GS_UPLOAD_LOCATION="gs://$GS_URL/$OPNFV_ARTIFACT_VERSION"
+ ;;
+ *)
+ echo "Artifact upload is not enabled for $JOB_TYPE jobs"
+ exit 1
+esac
+
+gsutil cp -r $WORKSPACE/build_output $GS_UPLOAD_LOCATION > $WORKSPACE/gsutil.log 2>&1
+gsutil -m setmeta -r \
+ -h "Cache-Control:private, max-age=0, no-transform" \
+ $GS_UPLOAD_LOCATION > /dev/null 2>&1
+
+gsutil ls $GS_UPLOAD_LOCATION > /dev/null 2>&1
+if [[ $? -ne 0 ]]; then
+ echo "Problem while uploading artifacts!"
+ echo "Check log $WORKSPACE/gsutil.log on $NODE_NAME"
+ exit 1
+fi
+echo "Uploaded artifacts!"
diff --git a/jjb/kvmfornfv/kvmfornfv.yml b/jjb/kvmfornfv/kvmfornfv.yml
index aa8b645f3..5fcb27042 100644
--- a/jjb/kvmfornfv/kvmfornfv.yml
+++ b/jjb/kvmfornfv/kvmfornfv.yml
@@ -3,21 +3,49 @@
project: '{name}'
- jobs:
- - 'kvmfornfv-verify-{stream}'
- - 'kvmfornfv-merge-{stream}'
-
stream:
- master:
branch: '{stream}'
gs-pathname: ''
+ disabled: false
- brahmaputra:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
-
+ disabled: true
+#####################################
+# patch verification phases
+#####################################
+ phase:
+ - 'build':
+ slave-label: 'opnfv-build-ubuntu'
+ - 'test':
+ slave-label: 'intel-pod1'
+#####################################
+# patch verification phases
+#####################################
+ jobs:
+ - 'kvmfornfv-verify-{stream}'
+ - 'kvmfornfv-verify-{phase}-{stream}'
+ - 'kvmfornfv-merge-{stream}'
+ - 'kvmfornfv-daily-{stream}'
+#####################################
+# job templates
+#####################################
- job-template:
name: 'kvmfornfv-verify-{stream}'
+ project-type: multijob
+
+ disabled: '{obj:disabled}'
+
+ concurrent: true
+
+ properties:
+ - throttle:
+ enabled: true
+ max-total: 3
+ option: 'project'
+
parameters:
- project-parameter:
project: '{project}'
@@ -25,12 +53,6 @@
branch: '{branch}'
- 'opnfv-build-ubuntu-defaults'
- scm:
- - gerrit-trigger-scm:
- credentials-id: '{ssh-credentials}'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
-
triggers:
- gerrit:
trigger-on:
@@ -51,8 +73,68 @@
branch-pattern: '**/{branch}'
builders:
- - shell:
- !include-raw: ./kvmfornfv-build.sh
+ - description-setter:
+ description: "Built on $NODE_NAME"
+ - multijob:
+ name: build
+ condition: SUCCESSFUL
+ projects:
+ - name: 'kvmfornfv-verify-build-{stream}'
+ current-parameters: false
+ predefined-parameters: |
+ GERRIT_BRANCH=$GERRIT_BRANCH
+ GERRIT_REFSPEC=$GERRIT_REFSPEC
+ GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+ node-parameters: false
+ kill-phase-on: FAILURE
+ abort-all-job: true
+ - multijob:
+ name: test
+ condition: SUCCESSFUL
+ projects:
+ - name: 'kvmfornfv-verify-test-{stream}'
+ current-parameters: false
+ predefined-parameters: |
+ GERRIT_BRANCH=$GERRIT_BRANCH
+ GERRIT_REFSPEC=$GERRIT_REFSPEC
+ GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+ node-parameters: false
+ kill-phase-on: FAILURE
+ abort-all-job: true
+
+- job-template:
+ name: 'kvmfornfv-verify-{phase}-{stream}'
+
+ disabled: '{obj:disabled}'
+
+ concurrent: true
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: '$GERRIT_REFSPEC'
+ choosing-strategy: 'gerrit'
+
+ wrappers:
+ - ssh-agent-credentials:
+ users:
+ - '{ssh-credentials}'
+ - timeout:
+ timeout: 360
+ fail: true
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ - gerrit-parameter:
+ branch: '{branch}'
+ - '{slave-label}-defaults'
+ - 'kvmfornfv-defaults':
+ gs-pathname: '{gs-pathname}'
+
+ builders:
+ - description-setter:
+ description: "Built on $NODE_NAME"
+ - '{project}-verify-{phase}-macro'
- job-template:
name: 'kvmfornfv-merge-{stream}'
@@ -63,6 +145,8 @@
- gerrit-parameter:
branch: '{branch}'
- 'opnfv-build-ubuntu-defaults'
+ - 'kvmfornfv-defaults':
+ gs-pathname: '{gs-pathname}'
scm:
- gerrit-trigger-scm:
@@ -86,3 +170,63 @@
builders:
- shell:
!include-raw: ./kvmfornfv-build.sh
+
+- job-template:
+ name: 'kvmfornfv-daily-{stream}'
+
+ project-type: multijob
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ - gerrit-parameter:
+ branch: '{branch}'
+ - 'opnfv-build-ubuntu-defaults'
+ - 'kvmfornfv-defaults':
+ gs-pathname: '{gs-pathname}'
+
+ scm:
+ - gerrit-trigger-scm:
+ credentials-id: '{ssh-credentials}'
+ refspec: ''
+ choosing-strategy: 'default'
+
+ triggers:
+ - timed: '@midnight'
+
+ builders:
+ - shell:
+ !include-raw-escape: ./kvmfornfv-build.sh
+ - shell:
+ !include-raw-escape: ./kvmfornfv-upload-artifact.sh
+#####################################
+# builder macros
+#####################################
+- builder:
+ name: 'kvmfornfv-verify-build-macro'
+ builders:
+ - shell:
+ !include-raw: ./kvmfornfv-build.sh
+ - shell:
+ !include-raw: ./kvmfornfv-upload-artifact.sh
+- builder:
+ name: 'kvmfornfv-verify-test-macro'
+ builders:
+ - shell:
+ !include-raw: ./kvmfornfv-download-artifact.sh
+ - shell:
+ !include-raw: ./kvmfornfv-test.sh
+#####################################
+# parameter macros
+#####################################
+- parameter:
+ name: 'kvmfornfv-defaults'
+ parameters:
+ - string:
+ name: GS_URL
+ default: artifacts.opnfv.org/$PROJECT{gs-pathname}
+ description: "URL to Google Storage."
diff --git a/jjb/multisite/multisite.yml b/jjb/multisite/multisite.yml
index ab99eefad..00b211ceb 100644
--- a/jjb/multisite/multisite.yml
+++ b/jjb/multisite/multisite.yml
@@ -82,6 +82,9 @@
name: KINGBIRD_LOG_FILE
default: $WORKSPACE/kingbird.log
- 'intel-virtual6-defaults'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: 'os-nosdn-multisite-ha'
scm:
- gerrit-trigger-scm:
diff --git a/jjb/opnfv/installer-params.yml b/jjb/opnfv/installer-params.yml
index 60fee9263..833a1d449 100644
--- a/jjb/opnfv/installer-params.yml
+++ b/jjb/opnfv/installer-params.yml
@@ -49,6 +49,10 @@
name: EXTERNAL_NETWORK
default: 'admin_floating_net'
description: 'external network for test'
+ - string:
+ name: BRIDGE
+ default: 'pxebr'
+ description: 'pxe bridge for booting of Fuel master'
- parameter:
name: 'joid-defaults'
diff --git a/jjb/opnfv/opnfv-docs.yml b/jjb/opnfv/opnfv-docs.yml
index 0c11757ec..2b80b84f0 100644
--- a/jjb/opnfv/opnfv-docs.yml
+++ b/jjb/opnfv/opnfv-docs.yml
@@ -51,19 +51,16 @@
- comment-added-contains-event:
comment-contains-value: 'reverify'
projects:
- - project-compare-type: 'ANT'
- project-pattern: '(?!yardstick)'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- file-paths:
- - compare-type: ANT
- pattern: 'docs/**'
- - project-compare-type: 'ANT'
- project-pattern: 'yardstick'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
+ - project-compare-type: 'ANT'
+ project-pattern: '*'
+ branches:
+ - branch-compare-type: 'ANT'
+ branch-pattern: '**/{branch}'
+ file-paths:
+ - compare-type: ANT
+ pattern: docs/**
+ - compare-type: ANT
+ pattern: yardstick/**
builders:
- upload-review-docs
@@ -94,19 +91,16 @@
- comment-added-contains-event:
comment-contains-value: 'remerge'
projects:
- - project-compare-type: 'ANT'
- project-pattern: '(?!yardstick)'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- file-paths:
- - compare-type: ANT
- pattern: 'docs/**'
- - project-compare-type: 'ANT'
- project-pattern: 'yardstick'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
+ - project-compare-type: 'ANT'
+ project-pattern: '*'
+ branches:
+ - branch-compare-type: 'ANT'
+ branch-pattern: '**/{branch}'
+ file-paths:
+ - compare-type: ANT
+ pattern: docs/**
+ - compare-type: ANT
+ pattern: yardstick/**
builders:
- upload-merged-docs
diff --git a/jjb/opnfv/slave-params.yml b/jjb/opnfv/slave-params.yml
index 7b9983060..4d73ad807 100644
--- a/jjb/opnfv/slave-params.yml
+++ b/jjb/opnfv/slave-params.yml
@@ -229,6 +229,20 @@
default: https://gerrit.opnfv.org/gerrit/$PROJECT
description: 'Git URL to use on this Jenkins Slave'
- parameter:
+ name: 'intel-pod1-defaults'
+ parameters:
+ - node:
+ name: SLAVE_NAME
+ description: 'Slave name on Jenkins'
+ allowed-slaves:
+ - intel-pod1
+ default-slaves:
+ - intel-pod1
+ - string:
+ name: GIT_BASE
+ default: https://gerrit.opnfv.org/gerrit/$PROJECT
+ description: 'Git URL to use on this Jenkins Slave'
+- parameter:
name: 'intel-pod2-defaults'
parameters:
- node:
@@ -323,6 +337,42 @@
default: https://gerrit.opnfv.org/gerrit/$PROJECT
description: 'Git URL to use on this Jenkins Slave'
- parameter:
+ name: 'zte-pod2-defaults'
+ parameters:
+ - node:
+ name: SLAVE_NAME
+ description: 'Slave name on Jenkins'
+ allowed-slaves:
+ - zte-pod2
+ default-slaves:
+ - zte-pod2
+ - string:
+ name: GIT_BASE
+ default: https://gerrit.opnfv.org/gerrit/$PROJECT
+ description: 'Git URL to use on this Jenkins Slave'
+ - string:
+ name: INSTALLER_IP
+ default: '10.20.1.2'
+ description: 'IP of the installer'
+- parameter:
+ name: 'zte-pod3-defaults'
+ parameters:
+ - node:
+ name: SLAVE_NAME
+ description: 'Slave name on Jenkins'
+ allowed-slaves:
+ - zte-pod3
+ default-slaves:
+ - zte-pod3
+ - string:
+ name: GIT_BASE
+ default: https://gerrit.opnfv.org/gerrit/$PROJECT
+ description: 'Git URL to use on this Jenkins Slave'
+ - string:
+ name: BRIDGE
+ default: 'br0'
+ description: 'pxe bridge for booting of Fuel master'
+- parameter:
name: 'juniper-pod1-defaults'
parameters:
- node:
diff --git a/jjb/qtip/qtip-ci-jobs.yml b/jjb/qtip/qtip-ci-jobs.yml
index 068b273f7..ef455f8df 100644
--- a/jjb/qtip/qtip-ci-jobs.yml
+++ b/jjb/qtip/qtip-ci-jobs.yml
@@ -42,6 +42,10 @@
installer: fuel
auto-trigger-name: 'qtip-daily-zte-pod1-trigger'
<<: *master
+ - zte-pod2:
+ installer: fuel
+ auto-trigger-name: 'daily-trigger-disabled'
+ <<: *master
#--------------------------------
jobs:
@@ -58,8 +62,8 @@
parameters:
- project-parameter:
project: '{project}'
- - '{pod}-defaults'
- '{installer}-defaults'
+ - '{pod}-defaults'
- string:
name: DEPLOY_SCENARIO
default: 'os-nosdn-nofeature-ha'
diff --git a/jjb/releng-macros.yaml b/jjb/releng-macros.yaml
index c14ea6c47..8328aec03 100644
--- a/jjb/releng-macros.yaml
+++ b/jjb/releng-macros.yaml
@@ -13,7 +13,7 @@
description: "URL to Google Storage."
- string:
name: GS_BASE_PROXY
- default: build.opnfv.org/artifacts/$PROJECT
+ default: build.opnfv.org/artifacts.opnfv.org/$PROJECT
description: "URL to Google Storage proxy"
- parameter:
diff --git a/jjb/releng/releng-ci-jobs.yml b/jjb/releng/releng-ci-jobs.yml
index f346c1c5f..ac323a3c1 100644
--- a/jjb/releng/releng-ci-jobs.yml
+++ b/jjb/releng/releng-ci-jobs.yml
@@ -99,7 +99,7 @@
source /opt/virtualenv/jenkins-job-builder/bin/activate
cd /opt/jenkins-ci/releng
git pull
- jenkins-jobs update --delete-old jjb/
+ jenkins-jobs update -r --delete-old jjb/
- job-template:
name: 'builder-sandbox'
diff --git a/jjb/yardstick/yardstick-ci-jobs.yml b/jjb/yardstick/yardstick-ci-jobs.yml
index 6b922889a..041eabd03 100644
--- a/jjb/yardstick/yardstick-ci-jobs.yml
+++ b/jjb/yardstick/yardstick-ci-jobs.yml
@@ -318,6 +318,14 @@
description: 'Arguments to use in order to choose the backend DB'
- parameter:
+ name: 'yardstick-params-zte-pod3'
+ parameters:
+ - string:
+ name: YARDSTICK_DB_BACKEND
+ default: '-i 104.197.68.199:8086'
+ description: 'Arguments to use in order to choose the backend DB'
+
+- parameter:
name: 'yardstick-params-orange-pod2'
parameters:
- string:
diff --git a/jjb/yardstick/yardstick-daily.sh b/jjb/yardstick/yardstick-daily.sh
index e8df9be58..7e9a65b82 100755
--- a/jjb/yardstick/yardstick-daily.sh
+++ b/jjb/yardstick/yardstick-daily.sh
@@ -23,6 +23,11 @@ elif [[ ${INSTALLER_TYPE} == 'joid' ]]; then
# replace the default one by the customized one provided by jenkins config
fi
+# Set iptables rule to allow forwarding return traffic for container
+if ! sudo iptables -C FORWARD -j RETURN 2> ${redirect} || ! sudo iptables -L FORWARD | awk 'NR==3' | grep RETURN 2> ${redirect}; then
+ sudo iptables -I FORWARD -j RETURN
+fi
+
opts="--privileged=true --rm"
envs="-e INSTALLER_TYPE=${INSTALLER_TYPE} -e INSTALLER_IP=${INSTALLER_IP} \
-e NODE_NAME=${NODE_NAME} -e EXTERNAL_NETWORK=${EXTERNAL_NETWORK} \
diff --git a/prototypes/bifrost/.gitkeep b/prototypes/bifrost/.gitkeep
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/prototypes/bifrost/.gitkeep
diff --git a/prototypes/puppet-infracloud/.gitkeep b/prototypes/puppet-infracloud/.gitkeep
new file mode 100644
index 000000000..e69de29bb
--- /dev/null
+++ b/prototypes/puppet-infracloud/.gitkeep
diff --git a/utils/fetch_os_creds.sh b/utils/fetch_os_creds.sh
index 0f4b25db8..e11df599b 100755
--- a/utils/fetch_os_creds.sh
+++ b/utils/fetch_os_creds.sh
@@ -145,11 +145,9 @@ elif [ "$installer_type" == "compass" ]; then
echo 'export OS_REGION_NAME=regionOne' >> $dest_path
info "This file contains the mgmt keystone API, we need the public one for our rc file"
- admin_ip=$(cat $dest_path | grep "OS_AUTH_URL" | sed 's/^.*\=//' | sed "s/^\([\"']\)\(.*\)\1\$/\2/g" | sed s'/\/$//')
- info "admin_ip: $admin_ip"
public_ip=$(sshpass -p root ssh $ssh_options root@${installer_ip} \
- "ssh ${controller_ip} 'source /opt/admin-openrc.sh; keystone endpoint-list'" \
- | grep $admin_ip | sed 's/ /\n/g' | grep ^http | head -1)
+ "ssh ${controller_ip} 'source /opt/admin-openrc.sh; openstack endpoint show identity '" \
+ | grep publicurl | awk '{print $4}')
info "public_ip: $public_ip"
diff --git a/utils/push-test-logs.sh b/utils/push-test-logs.sh
index d36561d2d..24b3281e8 100644
--- a/utils/push-test-logs.sh
+++ b/utils/push-test-logs.sh
@@ -24,6 +24,7 @@ node_list=(\
'lf-pod1' 'lf-pod2' 'intel-pod2' 'intel-pod3' \
'intel-pod5' 'intel-pod6' 'intel-pod7' 'intel-pod8' \
'ericsson-pod2' \
+'arm-pod1' \
'huawei-pod1' 'huawei-pod2' 'huawei-virtual1' 'huawei-virtual2' 'huawei-virtual3' 'huawei-virtual4')
diff --git a/utils/test/reporting/functest/reporting-status.py b/utils/test/reporting/functest/reporting-status.py
index 622c375cc..7c943d8b3 100644
--- a/utils/test/reporting/functest/reporting-status.py
+++ b/utils/test/reporting/functest/reporting-status.py
@@ -99,8 +99,9 @@ for version in conf.versions:
for test_case in testValid:
test_case.checkRunnable(installer, s,
test_case.getConstraints())
- logger.debug("testcase %s is %s" %
+ logger.debug("testcase %s (%s) is %s" %
(test_case.getDisplayName(),
+ test_case.getName(),
test_case.isRunnable))
time.sleep(1)
if test_case.isRunnable:
@@ -131,8 +132,10 @@ for version in conf.versions:
for test_case in otherTestCases:
test_case.checkRunnable(installer, s,
test_case.getConstraints())
- logger.info("testcase %s is %s" %
- (test_case.getName(), test_case.isRunnable))
+ logger.debug("testcase %s (%s) is %s" %
+ (test_case.getDisplayName(),
+ test_case.getName(),
+ test_case.isRunnable))
time.sleep(1)
if test_case.isRunnable:
dbName = test_case.getDbName()
diff --git a/utils/test/reporting/functest/reportingConf.py b/utils/test/reporting/functest/reportingConf.py
index a58eeecc9..9c618a274 100644
--- a/utils/test/reporting/functest/reportingConf.py
+++ b/utils/test/reporting/functest/reportingConf.py
@@ -10,19 +10,18 @@
#
# ****************************************************
installers = ["apex", "compass", "fuel", "joid"]
-# installers = ["apex"]
# list of test cases declared in testcases.yaml but that must not be
# taken into account for the scoring
-blacklist = ["odl", "ovno", "security_scan", "copper", "moon"]
+blacklist = ["ovno", "security_scan"]
# versions = ["brahmaputra", "master"]
versions = ["master"]
-PERIOD = 10
-MAX_SCENARIO_CRITERIA = 18
+PERIOD = 50
+MAX_SCENARIO_CRITERIA = 50
# get the last 5 test results to determinate the success criteria
NB_TESTS = 5
# REPORTING_PATH = "/usr/share/nginx/html/reporting/functest"
REPORTING_PATH = "."
URL_BASE = 'http://testresults.opnfv.org/test/api/v1/results'
TEST_CONF = "https://git.opnfv.org/cgit/functest/plain/ci/testcases.yaml"
-LOG_LEVEL = "ERROR"
+LOG_LEVEL = "DEBUG"
LOG_FILE = REPORTING_PATH + "/reporting.log"
diff --git a/utils/test/reporting/functest/testCase.py b/utils/test/reporting/functest/testCase.py
index e19853a09..e97303533 100644
--- a/utils/test/reporting/functest/testCase.py
+++ b/utils/test/reporting/functest/testCase.py
@@ -35,7 +35,11 @@ class TestCase(object):
'promise': 'Promise',
'moon': 'moon',
'copper': 'copper',
- 'security_scan': 'security'
+ 'security_scan': 'security',
+ 'multisite': 'multisite',
+ 'domino': 'domino',
+ 'odl-sfc': 'SFC',
+ 'onos_sfc': 'SFC'
}
try:
self.displayName = display_name_matrix[self.name]
@@ -123,7 +127,11 @@ class TestCase(object):
'promise': 'promise',
'moon': 'moon',
'copper': 'copper',
- 'security_scan': 'security'
+ 'security_scan': 'security',
+ 'multisite': 'multisite',
+ 'domino': 'domino-multinode',
+ 'odl-sfc': 'odl-sfc',
+ 'onos_sfc': 'onos_sfc'
}
try:
return test_match_matrix[self.name]