X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-remote.git/blobdiff_plain/cde3464f172dc386863b91ccf890b151e6e6a624..726af5c11e1b8270e1f0246d5d9c0e0789d44026:/files/usr/sbin/sipb-xen-vmcontrol diff --git a/files/usr/sbin/sipb-xen-vmcontrol b/files/usr/sbin/sipb-xen-vmcontrol index cf11c4f..081afd2 100755 --- a/files/usr/sbin/sipb-xen-vmcontrol +++ b/files/usr/sbin/sipb-xen-vmcontrol @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash # sipb-xen-vmcontrol MACHINE ACTION # # remctl should have already verified that the user is authorized to @@ -14,24 +14,28 @@ ACTION="$2" MACHINE="d_$ORIGMACHINE" case "$ACTION" in - list|vcpu-list|destroy|uptime|shutdown) + list|vcpu-list|uptime) xm "$ACTION" "$MACHINE" ;; + destroy|shutdown) + xm "$ACTION" "$MACHINE" + /usr/sbin/sipb-xen-update-conserver /dev/null 2>&1 & + ;; install|create|reboot) - ARG="$3" - shift; shift; shift; MOREARGS="$*" + shift; shift; if [ "$ACTION" = "reboot" ]; then xm destroy "$MACHINE" 2>/dev/null else xm list "$MACHINE" >/dev/null 2>/dev/null && echo "$MACHINE already exists" && exit 1 fi if [ "$ACTION" = "install" ]; then - xm create sipb-database machine_name="$ORIGMACHINE" installer="$ARG" installer_options="$MOREARGS" - elif [ -n "$3" ]; then - xm create sipb-database machine_name="$ORIGMACHINE" cdrom_image="$ARG" + xm create sipb-database machine_name="$ORIGMACHINE" installer_options="$(printf '%q ' "$@")" + elif [ -n "$1" ]; then + xm create sipb-database machine_name="$ORIGMACHINE" cdrom_image="$1" else xm create sipb-database machine_name="$ORIGMACHINE" fi + (sleep 4; /usr/sbin/sipb-xen-update-conserver) /dev/null 2>&1 & ;; list-long) xm list --long "$MACHINE"