Merge "Bug Fix: Start openvswitch service in Centos distro"
[yardstick.git] / tests / ci / load_images.sh
index dee6759..1e1591c 100755 (executable)
@@ -43,6 +43,12 @@ if [ "${YARD_IMG_ARCH}" == "arm64" ]; then
     fi
 fi
 
+cleanup_loopbacks() {
+    # try again to cleanup loopbacks in case of error
+    losetup -a
+    losetup -O NAME,BACK-FILE | awk '/yardstick/ { print $1 }' | xargs -l1 losetup -v -d || true
+}
+
 build_yardstick_image()
 {
     echo
@@ -56,6 +62,7 @@ build_yardstick_image()
             # Build the image. Retry once if the build fails
             $cmd || $cmd
 
+            cleanup_loopbacks
             if [ ! -f "${RAW_IMAGE}" ]; then
                 echo "Failed building RAW image"
                 exit 1
@@ -70,16 +77,20 @@ build_yardstick_image()
                      -e YARD_IMG_ARCH=${YARD_IMG_ARCH} \
                      -vvv -i inventory.ini build_yardstick_image.yml
 
+            cleanup_loopbacks
             if [ ! -f "${QCOW_IMAGE}" ]; then
                 echo "Failed building QCOW image"
                 exit 1
             fi
         fi
-        if [[ $DEPLOY_SCENARIO == *[_-]ovs[_-]* ]]; then
+        # DPDK compile is not enabled for arm64 yet so disable for now
+        # JIRA: YARSTICK-1124
+        if [[ ! -f "${QCOW_NSB_IMAGE}"  && ${DEPLOY_SCENARIO} == *[_-]ovs_dpdk[_-]* && "${YARD_IMG_ARCH}" != "arm64" ]]; then
             ansible-playbook \
                      -e img_property="nsb" \
                      -e YARD_IMG_ARCH=${YARD_IMG_ARCH} \
                      -vvv -i inventory.ini build_yardstick_image.yml
+            cleanup_loopbacks
             if [ ! -f "${QCOW_NSB_IMAGE}" ]; then
                 echo "Failed building QCOW NSB image"
                 exit 1
@@ -122,7 +133,9 @@ load_yardstick_image()
             ${EXTRA_PARAMS} \
             --file ${QCOW_IMAGE} \
             yardstick-image)
-        if [[ $DEPLOY_SCENARIO == *[_-]ovs[_-]* ]]; then
+        # DPDK compile is not enabled for arm64 yet so disable NSB images for now
+        # JIRA: YARSTICK-1124
+        if [[ $DEPLOY_SCENARIO == *[_-]ovs_dpdk[_-]* && "${YARD_IMG_ARCH}" != "arm64" ]]; then
             nsb_output=$(eval openstack ${SECURE} image create \
                 --public \
                 --disk-format qcow2 \