aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorchenjiankun <chenjiankun1@huawei.com>2017-03-28 07:58:49 +0000
committerchenjiankun <chenjiankun1@huawei.com>2017-03-28 11:05:14 +0000
commit38df788fc4a683717a6e7cbd498fad1e7cbe7209 (patch)
tree6b597c617e6d6255f425ba87dddb2d46c05e46c4
parent355f6833772f06b7935c58d2b15f9a1f3409c28b (diff)
yardstick offline support
JIRA: YARDSTICK-597 Currently yardstick can not run offline. In some case this will block the process, causing yardstick job failed The reason is yardstick will pull the latest code when run in CI. Actually we need not pull the latest code because the code in yardstick is already the latest code. So I remove them. Also I check the environment variable and yardstick-image when fetch openrc file and load images. Change-Id: I797da272932ab5292aa40585c82c119aa71b8849 Signed-off-by: chenjiankun <chenjiankun1@huawei.com>
-rwxr-xr-xtests/ci/load_images.sh39
-rwxr-xr-xtests/ci/prepare_env.sh50
2 files changed, 53 insertions, 36 deletions
diff --git a/tests/ci/load_images.sh b/tests/ci/load_images.sh
index 4be51fd15..0110773da 100755
--- a/tests/ci/load_images.sh
+++ b/tests/ci/load_images.sh
@@ -45,26 +45,30 @@ build_yardstick_image()
echo "========== Build yardstick cloud image =========="
if [[ "$DEPLOY_SCENARIO" == *"-lxd-"* ]]; then
- local cmd
- cmd="sudo $(which yardstick-img-lxd-modify) $(pwd)/tools/ubuntu-server-cloudimg-modify.sh"
+ if [ ! -f "${RAW_IMAGE}" ];then
+ local cmd
+ cmd="sudo $(which yardstick-img-lxd-modify) $(pwd)/tools/ubuntu-server-cloudimg-modify.sh"
- # Build the image. Retry once if the build fails
- $cmd || $cmd
+ # Build the image. Retry once if the build fails
+ $cmd || $cmd
- if [ ! -f "${RAW_IMAGE}" ]; then
- echo "Failed building RAW image"
- exit 1
+ if [ ! -f "${RAW_IMAGE}" ]; then
+ echo "Failed building RAW image"
+ exit 1
+ fi
fi
else
- local cmd
- cmd="sudo $(which yardstick-img-modify) $(pwd)/tools/ubuntu-server-cloudimg-modify.sh"
+ if [ ! -f "${QCOW_IMAGE}" ];then
+ local cmd
+ cmd="sudo $(which yardstick-img-modify) $(pwd)/tools/ubuntu-server-cloudimg-modify.sh"
- # Build the image. Retry once if the build fails
- $cmd || $cmd
+ # Build the image. Retry once if the build fails
+ $cmd || $cmd
- if [ ! -f "${QCOW_IMAGE}" ]; then
- echo "Failed building QCOW image"
- exit 1
+ if [ ! -f "${QCOW_IMAGE}" ]; then
+ echo "Failed building QCOW image"
+ exit 1
+ fi
fi
fi
}
@@ -241,6 +245,13 @@ main()
QCOW_IMAGE="/tmp/workspace/yardstick/yardstick-image.img"
RAW_IMAGE="/tmp/workspace/yardstick/yardstick-image.tar.gz"
+ if [ -f /home/opnfv/images/yardstick-image.img ];then
+ QCOW_IMAGE='/home/opnfv/images/yardstick-image.img'
+ fi
+ if [ -f /home/opnfv/images/yardstick-image.tar.gz ];then
+ RAW_IMAGE='/home/opnfv/images/yardstick-image.tar.gz'
+ fi
+
build_yardstick_image
load_yardstick_image
if [ "${YARD_IMG_ARCH}" == "arm64" ]; then
diff --git a/tests/ci/prepare_env.sh b/tests/ci/prepare_env.sh
index be59b7f37..e8f287bcd 100755
--- a/tests/ci/prepare_env.sh
+++ b/tests/ci/prepare_env.sh
@@ -21,35 +21,41 @@ export EXTERNAL_NETWORK=$(echo $EXTERNAL_NETWORK | cut -f1 -d \;)
# Create openstack credentials
echo "INFO: Creating openstack credentials .."
-OPENRC=/home/opnfv/openrc
+mkdir -p /etc/yardstick
+OPENRC=/etc/yardstick/openstack.creds
INSTALLERS=(apex compass fuel joid)
-if [ ! -f $OPENRC ]; then
- # credentials file is not given, check if environment variables are set
- # to get the creds using fetch_os_creds.sh later on
- echo "INFO: Checking environment variables INSTALLER_TYPE and INSTALLER_IP"
- if [ -z ${INSTALLER_TYPE} ]; then
- echo "environment variable 'INSTALLER_TYPE' is not defined."
- exit 1
- elif [[ ${INSTALLERS[@]} =~ ${INSTALLER_TYPE} ]]; then
- echo "INSTALLER_TYPE env variable found: ${INSTALLER_TYPE}"
- else
- echo "Invalid env variable INSTALLER_TYPE=${INSTALLER_TYPE}"
- exit 1
- fi
+RC_VAR_EXIST=false
+if [ "${OS_AUTH_URL}" -a "${OS_USERNAME}" -a "${OS_PASSWORD}" -a "${EXTERNAL_NETWORK}" ];then
+ RC_VAR_EXIST=true
+fi
- if [ "$DEPLOY_TYPE" == "virt" ]; then
- FETCH_CRED_ARG="-v -d $OPENRC -i ${INSTALLER_TYPE} -a ${INSTALLER_IP}"
- else
- FETCH_CRED_ARG="-d $OPENRC -i ${INSTALLER_TYPE} -a ${INSTALLER_IP}"
- fi
+if [ "${RC_VAR_EXIST}" = false ]; then
+ if [ ! -f $OPENRC ];then
+ # credentials file is not given, check if environment variables are set
+ # to get the creds using fetch_os_creds.sh later on
+ echo "INFO: Checking environment variables INSTALLER_TYPE and INSTALLER_IP"
+ if [ -z ${INSTALLER_TYPE} ]; then
+ echo "environment variable 'INSTALLER_TYPE' is not defined."
+ exit 1
+ elif [[ ${INSTALLERS[@]} =~ ${INSTALLER_TYPE} ]]; then
+ echo "INSTALLER_TYPE env variable found: ${INSTALLER_TYPE}"
+ else
+ echo "Invalid env variable INSTALLER_TYPE=${INSTALLER_TYPE}"
+ exit 1
+ fi
- $RELENG_REPO_DIR/utils/fetch_os_creds.sh $FETCH_CRED_ARG
+ if [ "$DEPLOY_TYPE" == "virt" ]; then
+ FETCH_CRED_ARG="-v -d $OPENRC -i ${INSTALLER_TYPE} -a ${INSTALLER_IP}"
+ else
+ FETCH_CRED_ARG="-d $OPENRC -i ${INSTALLER_TYPE} -a ${INSTALLER_IP}"
+ fi
+ $RELENG_REPO_DIR/utils/fetch_os_creds.sh $FETCH_CRED_ARG
+ fi
+ source $OPENRC
fi
-source $OPENRC
-
export EXTERNAL_NETWORK INSTALLER_TYPE DEPLOY_TYPE NODE_NAME
# Prepare a admin-rc file for StorPerf integration