Bottlenecks testcase online
[releng.git] / jjb / bottlenecks / bottlenecks-run-suite.sh
index 341aab5..7a3db00 100644 (file)
@@ -16,6 +16,10 @@ RELENG_REPO=${WORKSPACE}/releng
 [ -d ${RELENG_REPO} ] && rm -rf ${RELENG_REPO}
 git clone https://gerrit.opnfv.org/gerrit/releng ${RELENG_REPO} >${redirect}
 
+YARDSTICK_REPO=${WORKSPACE}/yardstick
+[ -d ${YARDSTICK_REPO} ] && rm -rf ${YARDSTICK_REPO}
+git clone https://gerrit.opnfv.org/gerrit/yardstick ${YARDSTICK_REPO} >${redirect}
+
 OPENRC=/tmp/admin_rc.sh
 OS_CACERT=/tmp/os_cacert
 
@@ -23,26 +27,23 @@ BOTTLENECKS_CONFIG=/tmp
 
 if [[ $SUITE_NAME == *posca* ]]; then
     POSCA_SCRIPT=/home/opnfv/bottlenecks/testsuites/posca
+    sudo rm -f ${OPENRC}
 
     # Preparing OpenStack RC and Cacert files
     echo "BOTTLENECKS INFO: fetching os credentials from $INSTALLER_TYPE"
     if [[ $INSTALLER_TYPE == 'compass' ]]; then
-        if [[ ${BRANCH} == 'master' ]]; then
-            ${RELENG_REPO}/utils/fetch_os_creds.sh -d ${OPENRC} -i ${INSTALLER_TYPE} -a ${INSTALLER_IP} -o ${OS_CACERT} >${redirect}
-            if [[ -f ${OS_CACERT} ]]; then
-                echo "BOTTLENECKS INFO: successfully fetching os_cacert for openstack: ${OS_CACERT}"
-            else
-                echo "BOTTLENECKS ERROR: couldn't find os_cacert file: ${OS_CACERT}, please check if the it's been properly provided."
-                exit 1
-            fi
+        ${RELENG_REPO}/utils/fetch_os_creds.sh -d ${OPENRC} -i ${INSTALLER_TYPE} -a ${INSTALLER_IP} -o ${OS_CACERT} >${redirect}
+        if [[ -f ${OS_CACERT} ]]; then
+            echo "BOTTLENECKS INFO: successfully fetching os_cacert for openstack: ${OS_CACERT}"
         else
-            ${RELENG_REPO}/utils/fetch_os_creds.sh -d ${OPENRC} -i ${INSTALLER_TYPE} -a ${INSTALLER_IP}  >${redirect}
+            echo "BOTTLENECKS ERROR: couldn't find os_cacert file: ${OS_CACERT}, please check if the it's been properly provided."
+            exit 1
         fi
     fi
 
     if [[ -f ${OPENRC} ]]; then
         echo "BOTTLENECKS INFO: openstack credentials path is ${OPENRC}"
-        if [[ $INSTALLER_TYPE == 'compass' && ${BRANCH} == 'master' ]]; then
+        if [[ $INSTALLER_TYPE == 'compass' ]]; then
             echo "BOTTLENECKS INFO: writing ${OS_CACERT} to ${OPENRC}"
             echo "export OS_CACERT=${OS_CACERT}" >> ${OPENRC}
         fi
@@ -67,13 +68,13 @@ if [[ $SUITE_NAME == *posca* ]]; then
 
     set +e
 
-    sudo pip install virtualenv
+    sudo -H pip install virtualenv
 
     cd ${RELENG_REPO}/modules
     sudo virtualenv venv
     source venv/bin/activate
-    sudo pip install -e ./ >/dev/null
-    sudo pip install netaddr
+    sudo -H pip install -e ./ >/dev/null
+    sudo -H pip install netaddr
 
     if [[ ${INSTALLER_TYPE} == compass ]]; then
         options="-u root -p root"
@@ -85,14 +86,24 @@ if [[ $SUITE_NAME == *posca* ]]; then
         echo "Don't support to generate pod.yaml on ${INSTALLER_TYPE} currently."
     fi
 
-    cmd="sudo python ${RELENG_REPO}/utils/create_pod_file.py -t ${INSTALLER_TYPE} \
+    if [[ ${INSTALLER_TYPE} != compass ]]; then
+        cmd="sudo python ${RELENG_REPO}/utils/create_pod_file.py -t ${INSTALLER_TYPE} \
          -i ${INSTALLER_IP} ${options} -f ${BOTTLENECKS_CONFIG}/pod.yaml \
          -s ${BOTTLENECKS_CONFIG}/id_rsa"
-    echo ${cmd}
-    ${cmd}
+        echo ${cmd}
+        ${cmd}
+    else
+        cmd="sudo cp ${YARDSTICK_REPO}/etc/yardstick/nodes/compass_sclab_virtual/pod.yaml \
+        ${BOTTLENECKS_CONFIG}"
+        echo ${cmd}
+        ${cmd}
+    fi
 
     deactivate
 
+    sudo rm -rf ${RELENG_REPO}/modules/venv
+    sudo rm -rf ${RELENG_REPO}/modules/opnfv.egg-info
+
     set -e
 
     cd ${WORKSPACE}
@@ -114,7 +125,7 @@ if [[ $SUITE_NAME == *posca* ]]; then
           -e NODE_NAME=${NODE_NAME} -e EXTERNAL_NET=${EXTERNAL_NETWORK} \
           -e BRANCH=${BRANCH} -e GERRIT_REFSPEC_DEBUG=${GERRIT_REFSPEC_DEBUG} \
           -e BOTTLENECKS_DB_TARGET=${BOTTLENECKS_DB_TARGET} -e PACKAGE_URL=${PACKAGE_URL} \
-          -e DEPLOY_SCENARIO=${DEPLOY_SCENARIO}"
+          -e DEPLOY_SCENARIO=${DEPLOY_SCENARIO} -e BUILD_TAG=${BUILD_TAG}"
     docker_volume="-v /var/run/docker.sock:/var/run/docker.sock -v /tmp:/tmp"
 
     cmd="docker run ${opts} ${envs} --name bottlenecks-load-master ${docker_volume} opnfv/bottlenecks:${DOCKER_TAG} /bin/bash"
@@ -125,13 +136,12 @@ if [[ $SUITE_NAME == *posca* ]]; then
     # Running test cases through Bottlenecks docker
     if [[ $SUITE_NAME == posca_stress_traffic ]]; then
         TEST_CASE=posca_factor_system_bandwidth
-        testcase_cmd="docker exec bottlenecks-load-master python ${POSCA_SCRIPT}/../run_testsuite.py testcase $TEST_CASE $REPORT"
-        echo "BOTTLENECKS INFO: running test case ${TEST_CASE} with report indicator: ${testcase_cmd}"
-        ${testcase_cmd} >$redirect
     elif [[ $SUITE_NAME == posca_stress_ping ]]; then
         TEST_CASE=posca_factor_ping
-        testcase_cmd="docker exec bottlenecks-load-master python ${POSCA_SCRIPT}/../run_testsuite.py testcase $TEST_CASE $REPORT"
-        echo "BOTTLENECKS INFO: running test case ${TEST_CASE} with report indicator: ${testcase_cmd}"
-        ${testcase_cmd} >$redirect
+    else
+        TEST_CASE=$SUITE_NAME
     fi
+    testcase_cmd="docker exec bottlenecks-load-master python ${POSCA_SCRIPT}/../run_testsuite.py testcase $TEST_CASE $REPORT"
+    echo "BOTTLENECKS INFO: running test case ${TEST_CASE} with report indicator: ${testcase_cmd}"
+    ${testcase_cmd} >$redirect
 fi