9a9266d494320726c689f4f39414a16d0aa9a5f4
[invirt/packages/invirt-remote.git] / server / usr / sbin / invirt-remote-proxy
1 #!/bin/bash
2 # invoke as invirt-remote-proxy-$TYPE, with "TYPE" in the remctl sense.
3
4 klist -s || kinit -k
5
6 TYPE="${0##*-}"
7 case "$TYPE" in
8     control )
9         MACHINE="$1"; SERVICE="$2"; shift; shift ;;
10     * )
11         SERVICE="$1"; shift ;;
12 esac
13
14 case "$TYPE/$SERVICE" in
15     web/listvms )
16         invirt-remote-listvms "$@" ;;
17     web/vnccert )
18         invirt-remote-vnccert "$@" ;;
19     web/availability )
20         invirt-remote-availability "$@" ;;
21     web/lvcreate | web/lvremove | web/lvrename | web/lvresize )
22         remctl "$(invirt-getconf hosts.0.hostname)" remote "$TYPE" "$SERVICE" "$@" ;;
23     control/help )
24         invirt-remctl-help ;;
25     control/create|control/install )
26         invirt-remote-create "$SERVICE" "$MACHINE" "$@" ;;
27     control/listhost|control/list-host )
28         invirt-remote-listhost "$MACHINE" "$@" ;;
29     control/* )
30         # Everything but create must go where the VM is already running.
31         invirt-remote-control "$MACHINE" "$SERVICE" "$@" ;;
32     * )
33         echo "ERROR: invalid subcommand"
34         exit 34
35         ;;
36 esac