2 # invirt-vmcontrol MACHINE ACTION
4 # remctl should have already verified that the user is authorized to
5 # control the machine. So, we just need to execute the action requested.
7 # $0 and $1 come from the trusted remctl source.
9 # $2 and so on are user-provided, and thus sketchy.
13 MACHINE="d_$ORIGMACHINE"
16 list|vcpu-list|uptime)
17 xm "$ACTION" "$MACHINE"
19 destroy|shutdown|reboot)
20 xm "$ACTION" "$MACHINE"
21 /usr/sbin/invirt-update-conserver </dev/null >/dev/null 2>&1 &
25 if [ -f "/etc/invirt/nocreate" ]; then
26 echo "Host $HOSTNAME is currently refusing VM creation." && exit 2
28 xm list "$MACHINE" >/dev/null 2>/dev/null && echo "$MACHINE already exists" && exit 1
29 if [ "$ACTION" = "install" ]; then
30 xm create invirt-database machine_name="$ORIGMACHINE" installer_options="$(printf '%q ' "$@")"
31 elif [ -n "$1" ]; then
32 xm create invirt-database machine_name="$ORIGMACHINE" cdrom_image="$1"
34 xm create invirt-database machine_name="$ORIGMACHINE"
36 (sleep 4; /usr/sbin/invirt-update-conserver) </dev/null >/dev/null 2>&1 &
39 xm list --long "$MACHINE"
42 invirt-vnc-authtoken "$ORIGMACHINE"
45 echo "ERROR: Invalid Command"