create-user: update for new servers
[hcoop/scripts.git] / lib / create-user-lib.sh
index a65b490..716d0da 100644 (file)
@@ -35,21 +35,20 @@ MAILPATH=/afs/hcoop.net/common/email/$PATHBITS
 #
 
 function execute_on_web_nodes () {
-    ssh -K deleuze $*
-    ssh -K navajos $*
+    ssh -K shelob.hcoop.net $*
 }
 
 function execute_on_domtool_server () {
-    ssh -K fritz.hcoop.net $*
+    ssh -K gibran.hcoop.net $*
 }
 
 
 function execute_on_all_machines () {
     $*
-    ssh -K hopper.hcoop.net $*
-    ssh -K deleuze.hcoop.net $*
-    ssh -K navajos.hcoop.net $*
-    ssh -K bog.hcoop.net $*
+    ssh -K marsh.hcoop.net $*
+    ssh -K minsky.hcoop.net $*
+    ssh -K shelob.hcoop.net $*
+    ssh -K outpost.hcoop.net $*
 }
 
 #
@@ -99,18 +98,17 @@ function export_user_keytabs () {
     sudo chmod 440            /etc/keytabs/user.daemon/$NEWUSER
 
     # rsync keytabs
+    # only needed on nodes that will run code on behalf of members
+    # fixme: duplicates all server list
     (cd /etc/keytabs
        sudo tar clpf - user.daemon/$NEWUSER | \
-           ssh hopper.hcoop.net cd /etc/keytabs\; sudo tar xlpf -)
+           ssh marsh.hcoop.net cd /etc/keytabs\; sudo tar xlpf -)
     (cd /etc/keytabs
        sudo tar clpf - user.daemon/$NEWUSER | \
-           ssh deleuze.hcoop.net cd /etc/keytabs\; sudo tar xlpf -)
+           ssh minsky.hcoop.net cd /etc/keytabs\; sudo tar xlpf -)
     (cd /etc/keytabs
        sudo tar clpf - user.daemon/$NEWUSER | \
-           ssh navajos.hcoop.net cd /etc/keytabs\; sudo tar xlpf -)
-    (cd /etc/keytabs
-       sudo tar clpf - user.daemon/$NEWUSER | \
-           ssh bog.hcoop.net cd /etc/keytabs\; sudo tar xlpf -)
+           ssh shelob.hcoop.net cd /etc/keytabs\; sudo tar xlpf -)
 }
 
 
@@ -128,7 +126,7 @@ function create_home_volume () {
        vos rename user.$NEWUSER.d user.$NEWUSER
     fi
     vos examine user.$NEWUSER 2>/dev/null || \
-       vos create fritz.hcoop.net /vicepa user.$NEWUSER -maxquota 4000000
+       vos create gibran.hcoop.net /vicepa user.$NEWUSER -maxquota 4000000
 
     mkdir -p `dirname $HOMEPATH`
     fs ls $HOMEPATH || test -L $HOMEPATH || fs mkm $HOMEPATH user.$NEWUSER
@@ -153,7 +151,7 @@ function create_mail_volume () {
        vos rename mail.$NEWUSER.d mail.$NEWUSER
     fi
     vos examine mail.$NEWUSER 2>/dev/null || \
-       vos create fritz.hcoop.net /vicepa mail.$NEWUSER -maxquota 4000000
+       vos create gibran.hcoop.net /vicepa mail.$NEWUSER -maxquota 4000000
     
     mkdir -p `dirname $MAILPATH`
     fs ls $MAILPATH || fs mkm $MAILPATH         mail.$NEWUSER
@@ -170,7 +168,7 @@ function create_mail_volume () {
             "\n<http://wiki.hcoop.net/MemberManual/Email> on our website."| \
             mail -s "Welcome to your HCoop email store" \
             -e -a "From: postmaster@hcoop.net" \
-            real-$NEWUSER
+            real-$NEWUSER@hcoop.net
     fi
 
     chown $NEWUSER:nogroup $MAILPATH/cur $MAILPATH/new $MAILPATH/tmp
@@ -188,7 +186,7 @@ function create_mail_volume () {
                $file
        fi
     else
-       maildirmake --add SpamAssassin=/var/local/lib/spamd/Maildir \
+       maildirmake --add SpamAssassin=/afs/hcoop.net/user/s/sp/spamd/Maildir \
             $HOMEPATH/Maildir
     fi
 
@@ -276,7 +274,7 @@ function enable_domtool () {
 function subscribe_to_lists () {
     # Subscribe user to our mailing lists.
 
-    echo $NEWUSER@hcoop.net | ssh -K deleuze sudo -u list \
+    echo $NEWUSER@hcoop.net | ssh -K minsky sudo -u list  \
        /var/lib/mailman/bin/add_members -r - hcoop-announce
 }
 
@@ -284,8 +282,11 @@ function ensure_afs_servers_synced () {
     vos release old
     
     # technically this might not be necessary, but for good measure...
-    vos syncserv fritz
-    vos syncvldb fritz
+    local srv
+    for srv in gibran lovelace outpost; do
+       vos syncserv $srv
+       vos syncvldb $srv
+    done
     
     # refresh volume location cache (takes ~2hrs otherwise)
     execute_on_all_machines fs checkvolumes
@@ -297,14 +298,16 @@ function ensure_afs_servers_synced () {
 
 function create_fcgi_wrapper () {
     # note: might want to move this to domtool-adduser
-    local wrapper="/afs/hcoop.net/common/httpd/fastcgi/${PATHBITS}/${NEWUSER}-wrapper-wrapper"
-    mkdir -p /afs/hcoop.net/common/httpd/fastcgi/${PATHBITS}
+    local wrapper_dir="/afs/hcoop.net/common/etc/domtool/httpd/fastcgi/${PATHBITS}"
+    local wrapper="${wrapper_dir}/${NEWUSER}-wrapper-wrapper"
+    mkdir -p $wrapper_dir
     cat > $wrapper <<EOF
 #!/bin/bash
 
-exec k5start -qtUf /etc/keytabs/user.daemon/${NEWUSER} -- $@
+exec k5start -qtUf /etc/keytabs/user.daemon/${NEWUSER} -- \$@
 EOF
 
     chmod +x $wrapper
     chown $NEWUSER:nogroup $wrapper
+    chown $NEWUSER:nogroup $wrapper_dir
 }