Check VM is stopped or not before try to create route

Sometimes the service try to create route for stopped VM (or template). This case creates a loop and avoid the script to create routes for others VMs while he failed to create route for the stopped VM/template. We met this case with a template...
This commit is contained in:
nemo 2019-05-05 17:56:57 +02:00
parent 78467d27ff
commit e41806ae48
1 changed files with 9 additions and 5 deletions

View File

@ -1,9 +1,13 @@
#!/bin/sh
inotifywait -q -m --format '%f' -e create /run/qemu-server/ | while read -r vm; do
# Only act if the line is not empty
if [ ${vm} ] && [ "$(echo ${vm} | sed -E 's/[0-9]{3}(\..*)/\1/')" = ".qmp" ]; then
# The sed transforms 100.pid (or .whatever) to 100
creationRoutesVM $(echo ${vm} | sed -E 's/([0-9]{3})\..*/\1/')
fi
# Only act if the line is not empty
if [ ${vm} ] && [ "$(echo ${vm} | sed -E 's/[0-9]{3}(\..*)/\1/')" = ".qmp" ]; then
# Get VM id ; The sed transforms 100.pid (or .whatever) to 100
vm_id=$(echo ${vm} | sed -E 's/([0-9]{3})\..*/\1/')
# If vm status is not "stopped"
if [ "$(qm status ${vm_id})" != "status: stopped" ]; then
creationRoutesVM ${vm_id}
fi
fi
done