remove {,un,move}register commands in remote server
[invirt/packages/invirt-remote.git] / files / usr / sbin / sipb-xen-remctl-update
diff --git a/files/usr/sbin/sipb-xen-remctl-update b/files/usr/sbin/sipb-xen-remctl-update
deleted file mode 100755 (executable)
index f0254b9..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-#!/bin/sh
-DIR=/etc/remctl/sipb-xen-auto
-TEMPLATE=$DIR/conf.template
-MACHINEDIR=$DIR/machine.d
-MOIRADIR=$DIR/moira-acl
-MOIRATMP=$DIR/moira-tmp
-MACHINETMP=$DIR/machine-list-tmp
-AUTOMACHINELIST=$DIR/auto-machine-list
-AUTOMOIRALIST=$DIR/auto-moira-list
-BINDIR=/usr/sbin
-ACLDIR=$DIR/acl
-
-update_machine()
-{
-    machine="$1"
-    sed "s/#MACHINENAME#/$machine/g" "$TEMPLATE" | \
-       sed "s,#BINDIR#,$BINDIR,g" >| "$MACHINETMP"
-    if ! cmp -s "$MACHINEDIR/$machine" "$MACHINETMP"; then
-       mv "$MACHINETMP" "$MACHINEDIR/$machine"
-    else
-       rm -f "$MACHINETMP"
-    fi
-}
-
-update_moiragroup()
-{
-    group="$1"
-    # Should perhaps replace with LDAP, but fine for now.
-
-    # We should do more careful error checking so we don't take away
-    # all bits and delete the moira-acl files whenever there's an AFS
-    # outage.
-    pts membership system:"$group" -noauth | tail -n+2 | \
-       sed 's/\./\//' | \
-       sed 's/^  //' | \
-       sed 's/$/@ATHENA.MIT.EDU/g' >| "$MOIRATMP"
-    if test -s "$MOIRATMP"; then
-       if ! cmp -s "$MOIRADIR/$group" "$MOIRATMP"; then
-           mv "$MOIRATMP" "$MOIRADIR/$group"
-       fi
-    else
-       if test -e "$MOIRADIR/$group"; then
-           rm "$MOIRADIR/$group"
-       fi
-    fi
-    rm -f "$MOIRATMP"
-}
-
-check_machine_name()
-{
-    machinename="$1"
-    if ! perl -0e 'exit($ARGV[0] !~ /^[A-Za-z0-9][A-Za-z0-9._-]*$/)' -- "$machinename"; then
-       echo "Bad machine name"
-       exit 1
-    fi
-}
-
-case "$1" in
-    moiragroup)
-       update_moiragroup "$2"
-       ;;
-
-    all_machines)
-        # update the remctl.conf definitions
-       for machine in `cat "$AUTOMACHINELIST"`; do
-           update_machine "$machine"
-       done
-       ;;
-    all_moira)
-        # update our moira ACL lists
-       for group in `cat "$AUTOMOIRALIST"`; do
-           update_moiragroup "$group"
-       done
-       ;;
-    auto_machine_list)
-        # update the list of maintained machines
-       /bin/ls "$ACLDIR" >| "$AUTOMACHINELIST"
-       ;;
-    auto_moira_list)
-        # update the moira list-of-lists
-        # /bin/ls "$MOIRADIR" >| "$AUTOMOIRALIST" # BAD IDEA in case of outage
-
-       # This extracts the list of all moira lists we care about, and updates those.
-       grep -R moira "$ACLDIR/" /etc/remctl/acl/ | perl -pe 's/.*moira-acl\/(.*)/$1/g' >| "$AUTOMOIRALIST"
-       ;;
-    unregister)
-       machine="$2"
-       check_machine_name "$machine"
-       rm -f "$ACLDIR"/"$machine"
-       rm -f "$MACHINEDIR"/"$machine"
-       "$0" web
-       ;;
-    moveregister)
-        oldmachine="$2"
-        newmachine="$3"
-       check_machine_name "$oldmachine"
-       check_machine_name "$newmachine"
-        mv "$ACLDIR"/"$oldmachine" "$ACLDIR"/"$newmachine"
-        rm -f "$MACHINEDIR"/"$oldmachine"
-        "$0" web
-       ;;
-    register)
-       machine="$2"
-       check_machine_name "$machine"
-       if [ -e "$ACLDIR"/"$machine" ]; then
-           echo "Machine already registered"
-           exit 1
-       fi
-       echo "include /etc/remctl/acl/web" > "$ACLDIR/$machine"
-       "$0" web
-       ;;
-    web)
-       "$0" auto_machine_list
-       "$0" all_machines
-       ;;      
-    remctl-moira-update|all)
-       "$0" auto_machine_list
-       "$0" all_machines
-       "$0" auto_moira_list
-       "$0" all_moira
-       ;;
-esac
-
-exit 0