* tentative merge of onelab myplc
[myplc.git] / plc.d / crond
index 34f371c..c828ea7 100755 (executable)
@@ -7,7 +7,7 @@
 # Mark Huang <mlhuang@cs.princeton.edu>
 # Copyright (C) 2006 The Trustees of Princeton University
 #
-# $Id: crond,v 1.4 2006/05/26 19:57:30 mlhuang Exp $
+# $Id: crond 1078 2007-11-15 13:38:27Z thierry $
 #
 
 # Source function library and configuration
@@ -17,6 +17,9 @@
 # Be verbose
 set -x
 
+# Export so that we do not have to specify -p to psql invocations
+export PGPORT=$PLC_DB_PORT
+
 case "$1" in
     start)
        MESSAGE=$"Starting crond"
@@ -27,31 +30,53 @@ case "$1" in
        else
            MAILTO=
        fi
+
        cat >/etc/cron.d/plc.cron <<EOF
 SHELL=/bin/bash
 PATH=/sbin:/bin:/usr/sbin:/usr/bin
 MAILTO=$MAILTO
 HOME=/
-
+#
 # minute hour day-of-month month day-of-week user command
-*/5 * * * * root gen-slices-xml-05.py
-*/15 * * * * root gen-sites-xml.py
-*/15 * * * * root gen-static-content.py
-*/15 * * * * root dns-config
-5 5 * * * root vacuumdb -U postgres --all --analyze --quiet
 EOF
 
-        # Run them once at startup
-       gen-slices-xml-05.py
-       check
-       gen-sites-xml.py
-       check
-       gen-static-content.py
-       check
-       dns-config
-       check
-       vacuumdb -U postgres --all --analyze --quiet
-       check
+        # Run all jobs once at startup
+
+#      if [ "$PLC_BOOT_ENABLED" = "1" ] ; then
+#          echo "*/5 * * * * root gen-slices-xml-05.py" >>/etc/cron.d/plc.cron
+#          gen-slices-xml-05.py
+#          check
+       fi
+
+       if [ "$PLC_WWW_ENABLED" = "1" ] ; then
+#          echo "*/15 * * * * root gen-static-content.py" >>/etc/cron.d/plc.cron
+#          echo "*/15 * * * * root gen-sites-xml.py" >>/etc/cron.d/plc.cron
+           echo "00 * * * * wget -O - -q http://localhost/cron.php" >>/etc/cron.d/plc.cron
+#          gen-static-content.py
+#          check
+#          gen-sites-xml.py
+#          check
+           wget -O - -q http://localhost/cron.php
+           check
+       fi
+
+       if [ "$PLC_DNS_ENABLED" = "1" ] ; then
+           echo "*/15 * * * * root dns-config" >>/etc/cron.d/plc.cron
+           dns-config
+           check
+       fi
+
+       if [ "$PLC_DB_ENABLED" = "1" ] ; then
+           echo "5 5 * * * root vacuumdb -U postgres --all --analyze --quiet" >>/etc/cron.d/plc.cron
+           vacuumdb -U postgres --all --analyze --quiet
+           check
+       fi
+
+       if [ "$PLC_WWW_ENABLED" = "1" ] ; then
+         echo "*/15 * * * * root clean-empty-dirs.py /var/tmp/bootmedium" >> /etc/cron.d/plc.cron
+         clean-empty-dirs.py /var/tmp/bootmedium
+         check
+       fi
 
        plc_daemon crond
        check