Merge pull request #55 from SUNET/patlu-fleetlock-lock-timeouts
fleetlock: configurable lock/unlock timeout
This commit is contained in:
commit
770a5ca3cc
|
@ -67,14 +67,19 @@ fleetlock_lock() {
|
||||||
# called.
|
# called.
|
||||||
fleetlock_enable_unlock_service || return 1
|
fleetlock_enable_unlock_service || return 1
|
||||||
local fleetlock_group=""
|
local fleetlock_group=""
|
||||||
|
local optional_args=()
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
. $FLEETLOCK_CONFIG || return 1
|
. $FLEETLOCK_CONFIG || return 1
|
||||||
if [ -z "$fleetlock_group" ]; then
|
if [ -z "$fleetlock_group" ]; then
|
||||||
echo "Unable to set fleetlock_group"
|
echo "Unable to set fleetlock_group"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
if [ -n "$fleetlock_lock_timeout" ]; then
|
||||||
|
optional_args+=("--timeout")
|
||||||
|
optional_args+=("$fleetlock_lock_timeout")
|
||||||
|
fi
|
||||||
echo "Getting fleetlock lock"
|
echo "Getting fleetlock lock"
|
||||||
$FLEETLOCK_TOOL --lock-group "$fleetlock_group" --lock || return 1
|
$FLEETLOCK_TOOL --lock-group "$fleetlock_group" --lock "${optional_args[@]}" || return 1
|
||||||
fi
|
fi
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
@ -82,15 +87,20 @@ fleetlock_lock() {
|
||||||
fleetlock_unlock() {
|
fleetlock_unlock() {
|
||||||
if [ ! -f $FLEETLOCK_DISABLE_FILE ] && [ -f $FLEETLOCK_CONFIG ] && [ -x $FLEETLOCK_TOOL ]; then
|
if [ ! -f $FLEETLOCK_DISABLE_FILE ] && [ -f $FLEETLOCK_CONFIG ] && [ -x $FLEETLOCK_TOOL ]; then
|
||||||
local fleetlock_group=""
|
local fleetlock_group=""
|
||||||
|
local optional_args=()
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
. $FLEETLOCK_CONFIG || return 1
|
. $FLEETLOCK_CONFIG || return 1
|
||||||
if [ -z "$fleetlock_group" ]; then
|
if [ -z "$fleetlock_group" ]; then
|
||||||
echo "Unable to set fleetlock_group"
|
echo "Unable to set fleetlock_group"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
if [ -n "$fleetlock_unlock_timeout" ]; then
|
||||||
|
optional_args+=("--timeout")
|
||||||
|
optional_args+=("$fleetlock_unlock_timeout")
|
||||||
|
fi
|
||||||
machine_is_healthy || return 1
|
machine_is_healthy || return 1
|
||||||
echo "Releasing fleetlock lock"
|
echo "Releasing fleetlock lock"
|
||||||
$FLEETLOCK_TOOL --lock-group "$fleetlock_group" --unlock || return 1
|
$FLEETLOCK_TOOL --lock-group "$fleetlock_group" --unlock "${optional_args[@]}" || return 1
|
||||||
fi
|
fi
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
|
@ -97,7 +97,10 @@ def do_fleetlock_request(
|
||||||
timeout=args.request_timeout,
|
timeout=args.request_timeout,
|
||||||
auth=("", config[args.lock_group]["password"]),
|
auth=("", config[args.lock_group]["password"]),
|
||||||
)
|
)
|
||||||
except requests.exceptions.ConnectionError as e:
|
except (
|
||||||
|
requests.exceptions.ConnectionError,
|
||||||
|
requests.exceptions.ReadTimeout,
|
||||||
|
) as e:
|
||||||
print(f"POST request failed: {e}")
|
print(f"POST request failed: {e}")
|
||||||
time.sleep(retry_sleep_delay)
|
time.sleep(retry_sleep_delay)
|
||||||
continue
|
continue
|
||||||
|
|
Loading…
Reference in a new issue