]> git.decadent.org.uk Git - dak.git/blobdiff - config/backports/cron.weekly
Update the cron scripts
[dak.git] / config / backports / cron.weekly
index 9a563aa5c579420a5e11de511a5fdd30018a51d2..c4a3a4b3e0f0f08be9b54533a241f2481a492a95 100755 (executable)
@@ -1,22 +1,51 @@
-#!/bin/sh
+#!/bin/bash
 #
-# Run once a week via cron, out of katie's crontab.
 
 set -e
+set -u
+# ERR traps should be inherited from functions too. (And command
+# substitutions and subshells and whatnot, but for us the functions is
+# the important part here)
+set -E
 export SCRIPTVARS=/srv/backports-master.debian.org/config/backports/vars
 . $SCRIPTVARS
 
+# Start logging
+NOW=`date "+%Y.%m.%d-%H:%M:%S"`
+LOGFILE="$logdir/weekly_${NOW}.log"
+exec > "$LOGFILE" 2>&1
+
+cleanup() {
+  echo "Cleanup"
+  rm -f "$LOGFILE"
+}
+trap cleanup 0
+
 ################################################################################
 
 # Purge empty directories
-
+echo "Purging empty directories in $ftpdir/pool/"
 if [ ! -z "$(find $ftpdir/pool/ -type d -empty)" ]; then
    find $ftpdir/pool/ -type d -empty | xargs rmdir;
 fi
 
 # Clean up apt-ftparchive's databases
 
+echo "Splitting queue/done"
+dak split-done
+
+# Clean up apt-ftparchive's databases
 cd $configdir
+echo "Cleanup apt-ftparchive's database"
 apt-ftparchive -q clean apt.conf
 
+echo "Fixing symlinks in $ftpdir"
+symlinks -d -r $ftpdir
+
+echo "Finally, all is done, compressing logfile"
+exec > /dev/null 2>&1
+
+bzip2 -9 "$LOGFILE"
+
+
 ################################################################################