X-Git-Url: http://xvm.mit.edu/gitweb/invirt/packages/invirt-remote.git/blobdiff_plain/d9d238b8ee37ac47081374c4c658fe959780fdfe..1b6f1212b2fb8d7577f48bbd01a1c7f601eec57b:/files/usr/sbin/sipb-xen-remote-proxy diff --git a/files/usr/sbin/sipb-xen-remote-proxy b/files/usr/sbin/sipb-xen-remote-proxy index 2b62ca9..c94a764 100755 --- a/files/usr/sbin/sipb-xen-remote-proxy +++ b/files/usr/sbin/sipb-xen-remote-proxy @@ -1,12 +1,26 @@ -#!/bin/sh +#!/bin/bash # invoke as sipb-xen-remote-proxy-$TYPE, with "TYPE" in the remctl sense. -klist -s || kinit -k host/remote.mit.edu -#echo remctl black-mesa remote ${0##*-} "$@" -if false ; then - remctl black-mesa remote ${0##*-} "$@" -else - case "$1" in - listvms ) shift; sipb-xen-remote-listvms "$@" ;; - * ) remctl black-mesa remote ${0##*-} "$@" ;; - esac -fi + +klist -s || kinit -k + +TYPE="${0##*-}" +case "$TYPE" in + control ) + MACHINE="$1"; SERVICE="$2"; shift; shift ;; + * ) + SERVICE="$1"; shift ;; +esac + +case "$TYPE/$SERVICE" in + web/listvms ) + sipb-xen-remote-listvms "$@" ;; + control/create ) + sipb-xen-remote-create "$MACHINE" "$@" ;; + control/listhost ) + sipb-xen-remote-listhost "$MACHINE" "$@" ;; + control/* ) + # Everything but create must go where the VM is already running. + sipb-xen-remote-control "$MACHINE" "$SERVICE" "$@" ;; + * ) + remctl "$(invirt-getconf hosts.0.hostname)" remote "$TYPE" "$SERVICE" "$@" ;; +esac