From 38df788fc4a683717a6e7cbd498fad1e7cbe7209 Mon Sep 17 00:00:00 2001 From: chenjiankun Date: Tue, 28 Mar 2017 07:58:49 +0000 Subject: 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 --- tests/ci/prepare_env.sh | 50 +++++++++++++++++++++++++++---------------------- 1 file changed, 28 insertions(+), 22 deletions(-) (limited to 'tests/ci/prepare_env.sh') 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 -- cgit 1.2.3-korg