create-user: create fastcgi wrapper script
[hcoop/scripts.git] / lib / create-user-lib.sh
index 51834ef..a65b490 100644 (file)
@@ -36,18 +36,16 @@ MAILPATH=/afs/hcoop.net/common/email/$PATHBITS
 
 function execute_on_web_nodes () {
     ssh -K deleuze $*
-    ssh -K mire $*
     ssh -K navajos $*
 }
 
 function execute_on_domtool_server () {
-    ssh -K deleuze.hcoop.net $*
+    ssh -K fritz.hcoop.net $*
 }
 
 
 function execute_on_all_machines () {
     $*
-    ssh -K mire.hcoop.net $*
     ssh -K hopper.hcoop.net $*
     ssh -K deleuze.hcoop.net $*
     ssh -K navajos.hcoop.net $*
@@ -101,9 +99,6 @@ function export_user_keytabs () {
     sudo chmod 440            /etc/keytabs/user.daemon/$NEWUSER
 
     # rsync keytabs
-    (cd /etc/keytabs
-       sudo tar clpf - user.daemon/$NEWUSER | \
-           ssh mire.hcoop.net cd /etc/keytabs\; sudo tar xlpf -)
     (cd /etc/keytabs
        sudo tar clpf - user.daemon/$NEWUSER | \
            ssh hopper.hcoop.net cd /etc/keytabs\; sudo tar xlpf -)
@@ -133,7 +128,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 400000
+       vos create fritz.hcoop.net /vicepa user.$NEWUSER -maxquota 4000000
 
     mkdir -p `dirname $HOMEPATH`
     fs ls $HOMEPATH || test -L $HOMEPATH || fs mkm $HOMEPATH user.$NEWUSER
@@ -158,7 +153,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 400000
+       vos create fritz.hcoop.net /vicepa mail.$NEWUSER -maxquota 4000000
     
     mkdir -p `dirname $MAILPATH`
     fs ls $MAILPATH || fs mkm $MAILPATH         mail.$NEWUSER
@@ -215,6 +210,7 @@ function seed_user_hcoop_directories () {
     mkdir -p $HOMEPATH/.logs/apache
     chown $NEWUSER:nogroup $HOMEPATH/.logs/apache
     fs sa $HOMEPATH/.logs/apache $NEWUSER.daemon rlwidk
+    fs sa $HOMEPATH/.logs/apache webalizer read
     mkdir -p $HOMEPATH/.logs/mail
     fs sa $HOMEPATH/.logs/mail $NEWUSER.daemon rlwidk
     chown $NEWUSER:nogroup $HOMEPATH/.logs/mail
@@ -241,7 +237,8 @@ function seed_user_hcoop_directories () {
     chown $NEWUSER:nogroup $HOMEPATH/.public/.domtool
     test -e $HOMEPATH/.domtool || \
        test -L $HOMEPATH/.domtool || \
-        execute_on_domtool_server sudo -u $NEWUSER ln -s $HOMEPATH/.public/.domtool $HOMEPATH/.domtool
+        execute_on_domtool_server ln -s $HOMEPATH/.public/.domtool $HOMEPATH/.domtool
+        execute_on_domtool_server chown $NEWUSER $HOMEPATH/.domtool 
         # ^^ work around sudo env_reset crap without having to
         # actually figure out how to make it work cleanly -- clinton,
         # 2011-11-30
@@ -292,4 +289,22 @@ function ensure_afs_servers_synced () {
     
     # refresh volume location cache (takes ~2hrs otherwise)
     execute_on_all_machines fs checkvolumes
-}
\ No newline at end of file
+}
+
+#
+# webserver
+#
+
+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}
+    cat > $wrapper <<EOF
+#!/bin/bash
+
+exec k5start -qtUf /etc/keytabs/user.daemon/${NEWUSER} -- $@
+EOF
+
+    chmod +x $wrapper
+    chown $NEWUSER:nogroup $wrapper
+}