Merge branch 'master' of git.freeside.biz:/home/git/freeside
[freeside.git] / init.d / freeside-init
index 92e3fdf..248c5b3 100644 (file)
@@ -88,9 +88,11 @@ case "$1" in
         freeside-torrus-srvderive $QUEUED_USER
         echo "done."
 
-        #ip=`/sbin/ifconfig $IF | grep 'inet addr:' | cut -d: -f2- | cut -d' ' -f1`
-        #cp /opt/rt3/etc/RT_SiteConfig.pm.ORIG /opt/rt3/etc/RT_SiteConfig.pm
-        #perl -pi -e "s/localhost/$ip/" /opt/rt3/etc/RT_SiteConfig.pm
+        if [ -e /opt/rt3/etc/RT_SiteConfig.pm.ORIG_WEBDEMO_HACK ]; then
+          ip=`/sbin/ifconfig $IF | grep 'inet addr:' | cut -d: -f2- | cut -d' ' -f1`
+          cp /opt/rt3/etc/RT_SiteConfig.pm.ORIG_WEBDEMO_HACK /opt/rt3/etc/RT_SiteConfig.pm
+          perl -pi -e "s/localhost/$ip/" /opt/rt3/etc/RT_SiteConfig.pm
+        fi
 
         ;;
   stop)
@@ -160,6 +162,7 @@ case "$1" in
         then
           echo -n "Stopping (old) freeside-selfservice-server: "
           kill `cat /var/run/freeside-selfservice-server.$SELFSERVICE_USER.pid`
+          sleep 
           rm /var/run/freeside-selfservice-server.$SELFSERVICE_USER.pid
           echo "done."
         fi
@@ -168,9 +171,20 @@ case "$1" in
         for MACHINE in $SELFSERVICE_MACHINES; do
           if [ -e /var/run/freeside-selfservice-server.$SELFSERVICE_USER.$MACHINE.pid ]
           then
-            echo -n "Stopping freeside-selfservice-server to $MACHINE"
+            echo -n "Stopping freeside-selfservice-server to $MACHINE"
             kill `cat /var/run/freeside-selfservice-server.$SELFSERVICE_USER.$MACHINE.pid`
+            howlong=10
+            while [ $howlong -gt 0 ] && kill -0 `cat /var/run/freeside-selfservice-server.$SELFSERVICE_USER.$MACHINE.pid` 2>/dev/null; do
+              echo -n '.'
+              sleep 1
+              howlong=$(( $howlong - 1 ))
+              if [ $howlong -eq 0 ]; then
+                echo -n 'forcefully.'
+                kill -9 `cat /var/run/freeside-selfservice-server.$SELFSERVICE_USER.$MACHINE.pid`
+              fi
+            done
             echo "done."
+            rm /var/run/freeside-selfservice-server.$SELFSERVICE_USER.$MACHINE.pid
           fi
         done