case "$TYPE/$SERVICE" in
web/listvms )
- exec invirt-remote-listvms "$@" ;;
+ invirt-remote-listvms "$@" ;;
web/vnccert )
- exec invirt-remote-vnccert "$@" ;;
+ invirt-remote-vnccert "$@" ;;
+ web/availability )
+ invirt-remote-availability "$@" ;;
+ web/lvcreate | web/lvremove | web/lvrename | web/lvresize )
+ if [ -f "/etc/invirt/nolvm" ]; then
+ echo "LVM operations are temporarily disabled for maintenance, sorry."
+ exit 2
+ fi
+ remctl "$(invirt-getconf hosts.0.hostname)" remote "$TYPE" "$SERVICE" "$@" ;;
control/help )
- exec invirt-remctl-help ;;
+ invirt-remctl-help ;;
control/create|control/install )
- exec invirt-remote-create "$SERVICE" "$MACHINE" "$@" ;;
+ if [ -f "/etc/invirt/nocreate" ]; then
+ echo "Booting VMs is temporarily disabled for maintenance, sorry."
+ exit 2
+ fi
+ invirt-remote-create "$SERVICE" "$MACHINE" "$@" ;;
control/listhost|control/list-host )
- exec invirt-remote-listhost "$MACHINE" "$@" ;;
+ invirt-remote-listhost "$MACHINE" "$@" ;;
control/* )
# Everything but create must go where the VM is already running.
- exec invirt-remote-control "$MACHINE" "$SERVICE" "$@" ;;
+ invirt-remote-control "$MACHINE" "$SERVICE" "$@" ;;
* )
- exec remctl "$(invirt-getconf hosts.0.hostname)" remote "$TYPE" "$SERVICE" "$@" ;;
+ echo "ERROR: invalid subcommand"
+ exit 34
+ ;;
esac