From 115858b81b8c21514fb26fb24a55d50a0e941e2a Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Mon, 28 Oct 2019 12:33:20 +0100 Subject: [run-virt] Retry mounting image via dnbd3 for up to 4 seconds --- .../openslx/vmchooser/run-virt-includes/setup_image_access.inc | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'core/modules/run-virt/data/opt/openslx/vmchooser') diff --git a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/setup_image_access.inc b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/setup_image_access.inc index fad51c5d..73a01800 100644 --- a/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/setup_image_access.inc +++ b/core/modules/run-virt/data/opt/openslx/vmchooser/run-virt-includes/setup_image_access.inc @@ -39,8 +39,11 @@ setup_dnbd3 () { local TIMEOUT VM_DISKFILE_REVISION rm -f -- "${DNBD3_EXITFLAG}" ( - dnbd3-fuse -f -o allow_other,max_readahead=262144 -h "${SLX_DNBD3_SERVERS}" -i "${SRC_IMG_RELATIVE}" "${DNBD3_MOUNT_POINT}" > "${DNBD3_TMPLOG}" 2>&1 - RET=$? + startup="$( date +%s )" + while [ "$( date +%s )" -lt "$(( startup + 4 ))" ]; do + dnbd3-fuse -f -o allow_other,max_readahead=262144 -h "${SLX_DNBD3_SERVERS}" -i "${SRC_IMG_RELATIVE}" "${DNBD3_MOUNT_POINT}" > "${DNBD3_TMPLOG}" 2>&1 + RET=$? + done touch "${DNBD3_EXITFLAG}" if [ "$RET" != "0" ]; then writelog "dnbd3-fuse stopped working (Exit code $RET)" @@ -58,7 +61,7 @@ setup_dnbd3 () { add_cleanup "cleanup_dnbd3" break fi - [ "$TIMEOUT" = "OUT" -o -e "$DNBD3_EXITFLAG" ] && break + [ "$TIMEOUT" = "OUT" ] || [ -e "$DNBD3_EXITFLAG" ] && break sleep "$TIMEOUT" done -- cgit v1.2.3-55-g7522