1
0
mirror of https://gitlab.com/libvirt/libvirt.git synced 2025-02-02 13:47:13 +03:00

libvirt-guests: Check if URI is reachable before launching commands

This patch adds a check to the libvirt-guests script to check for the
URI to be alive before attempting any calls. This avoids nasty error
messages and allows us to fail gracefully and continue on other URIs
configured in the script.
This commit is contained in:
Peter Krempa 2012-02-28 14:39:17 +01:00
parent bc72d9a3a9
commit 0531377076

View File

@ -88,6 +88,20 @@ run_virsh_c() {
( export LC_ALL=C; run_virsh "$@" )
}
# test_connect URI
# check if URI is reachable
test_connect()
{
uri=$1
run_virsh "$uri" connect 2>/dev/null
if [ $? -ne 0 ]; then
eval_gettext "Can't connect to \$uri. Skipping."
echo
return 1
fi
}
# list_guests URI PERSISTENT
# List running guests on URI.
# PERSISTENT argument options:
@ -172,6 +186,8 @@ start() {
continue
fi
test_connect "$uri" || continue
eval_gettext "Resuming guests on \$uri URI..."; echo
for guest in $list; do
name=$(guest_name "$uri" "$guest")
@ -278,12 +294,10 @@ stop() {
set -f
for uri in $URIS; do
set +f
eval_gettext "Running guests on \$uri URI: "
if [ "x$uri" = xdefault ] && [ ! -x "$libvirtd" ]; then
gettext "libvirtd not installed; skipping this URI."; echo
continue
fi
test_connect "$uri" || continue
eval_gettext "Running guests on \$uri URI: "
list=$(list_guests "$uri")
if [ $? -eq 0 ]; then