X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-remote.git/blobdiff_plain/dbbcf1b394ec472b27954ab843314261852b17a6..cde7cbc2b17edd5a501668cdada020b72c77a04d:/files/usr/sbin/sipb-xen-vmcontrol

diff --git a/files/usr/sbin/sipb-xen-vmcontrol b/files/usr/sbin/sipb-xen-vmcontrol
index bf72dbc..3bbf63e 100755
--- a/files/usr/sbin/sipb-xen-vmcontrol
+++ b/files/usr/sbin/sipb-xen-vmcontrol
@@ -14,16 +14,31 @@ ACTION="$2"
 MACHINE="d_$ORIGMACHINE"
 
 case "$ACTION" in
-    list|vcpu-list|destroy|uptime|shutdown)
+    list|vcpu-list|uptime)
         xm "$ACTION" "$MACHINE"
 	;;
-    reboot|create|vmboot)
-	xm destroy "$MACHINE" 2>/dev/null
-	if [ -n "$3" ]; then
-	    xm create sipb-database machine_name="$ORIGMACHINE" cdrom_image="$3"
+    destroy|shutdown)
+	xm "$ACTION" "$MACHINE"
+	/usr/sbin/sipb-xen-update-conserver </dev/null >/dev/null 2>&1 &
+	;;
+    install|create|reboot)
+	ARG="$3"
+	shift; shift; shift; MOREARGS="$*"
+	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 [ "$ACTION" = "copy" ]; then
+#           sipb-xen-duplicate ...etc...
+	elif [ -n "$ARG" ]; then
+	    xm create sipb-database machine_name="$ORIGMACHINE" cdrom_image="$ARG"
 	else
 	    xm create sipb-database machine_name="$ORIGMACHINE"
 	fi
+	(sleep 4; /usr/sbin/sipb-xen-update-conserver) </dev/null >/dev/null 2>&1 &
 	;;
     list-long)
 	xm list --long "$MACHINE"