dovetail: debug logs set to true
[releng.git] / jjb / dovetail / dovetail-run.sh
index 9186347..4082c34 100755 (executable)
@@ -22,7 +22,7 @@ if [[ ${INSTALLER_TYPE} == 'apex' ]]; then
 elif [[ ${INSTALLER_TYPE} == 'joid' ]]; then
     # If production lab then creds may be retrieved dynamically
     # creds are on the jumphost, always in the same folder
-    labconfig="-v $LAB_CONFIG/admin-openrc:/home/opnfv/openrc"
+    labconfig="-v $LAB_CONFIG/admin-openrc:/home/opnfv/functest/conf/openstack.creds"
     # If dev lab, credentials may not be the default ones, just provide a path to put them into docker
     # replace the default one by the customized one provided by jenkins config
 fi
@@ -32,25 +32,44 @@ if ! sudo iptables -C FORWARD -j RETURN 2> ${redirect} || ! sudo iptables -L FOR
     sudo iptables -I FORWARD -j RETURN
 fi
 
-opts="--privileged=true --rm"
+opts="--privileged=true -id"
 envs="-e CI_DEBUG=${CI_DEBUG} \
       -e INSTALLER_TYPE=${INSTALLER_TYPE} \
       -e INSTALLER_IP=${INSTALLER_IP} \
       -e DEPLOY_SCENARIO=${DEPLOY_SCENARIO} \
-      -e DEPLOY_TYPE=${DEPLOY_TYPE} \
-      -v /var/run/docker.sock:/var/run/docker.sock \
-      -v /home/opnfv/dovetail/results:/home/opnfv/dovetail/results"
+      -e DEPLOY_TYPE=${DEPLOY_TYPE}"
+results_envs="-v /var/run/docker.sock:/var/run/docker.sock \
+              -v /home/opnfv/dovetail/results:/home/opnfv/dovetail/results"
 
 # Pull the image with correct tag
 echo "Dovetail: Pulling image opnfv/dovetail:${DOCKER_TAG}"
 docker pull opnfv/dovetail:$DOCKER_TAG >$redirect
 
-# Run docker
-echo "Dovetail: docker running..."
-sudo docker run ${opts} ${envs} ${labconfig} ${sshkey} opnfv/dovetail:${DOCKER_TAG} \
-"python ${DOVETAIL_REPO_DIR}/dovetail/run.py --testsuite ${TESTSUITE}"
+cmd="sudo docker run ${opts} ${envs} ${results_envs} ${labconfig} ${sshkey} \
+     opnfv/dovetail:${DOCKER_TAG} /bin/bash"
+echo "Dovetail: running docker run command: ${cmd}"
+${cmd} >${redirect}
+sleep 5
+container_id=$(docker ps | grep "opnfv/dovetail:${DOCKER_TAG}" | awk '{print $1}' | head -1)
+echo "Container ID=${container_id}"
+if [ -z ${container_id} ]; then
+    echo "Cannot find opnfv/dovetail container ID ${container_id}. Please check if it is existing."
+    docker ps -a
+    exit 1
+fi
+echo "COntainer Start: docker start ${container_id}"
+docker start ${container_id}
+sleep 5
+docker ps >${redirect}
+if [ $(docker ps | grep "opnfv/dovetail:${DOCKER_TAG}" | wc -l) == 0 ]; then
+    echo "The container opnfv/dovetail with ID=${container_id} has not been properly started. Exiting..."
+    exit 1
+fi
+
+exec_cmd="python ${DOVETAIL_REPO_DIR}/dovetail/run.py --testsuite ${TESTSUITE} -d true"
+echo "Container exec command: ${exec_cmd}"
+docker exec ${container_id} ${exec_cmd}
 
-echo "Dovetail: store results..."
 sudo cp -r ${DOVETAIL_REPO_DIR}/results ./
 #To make sure the file owner is jenkins, for the copied results files in the above line
 #if not, there will be error when next time to wipe workspace