]> git.decadent.org.uk Git - dak.git/blobdiff - config/debian-security/cron.daily
Switch to "jessie" as stable.
[dak.git] / config / debian-security / cron.daily
index 025f6fcaab038a3503bd978b822c86e149d75ebe..f2eff107b10e1ce9c29622a971e253e1d146ddce 100755 (executable)
@@ -1,11 +1,14 @@
-#!/bin/sh
+#!/bin/bash
 #
 # Executed daily via cron, out of dak's crontab.
 
 set -e
-export SCRIPTVARS=/org/security-master.debian.org/dak/config/debian-security/vars
+set -o pipefail
+export SCRIPTVARS=/srv/security-master.debian.org/dak/config/debian-security/vars
 . $SCRIPTVARS
 
+LOCKFILE="$lockdir/unchecked.lock"
+
 ################################################################################
 
 # Fix overrides
@@ -14,65 +17,67 @@ rsync --delete -r --include=override\* --exclude=\* --password-file /srv/securit
 
 cd $overridedir
 for file in override*.gz; do
-       zcat $file > $(basename $file .gz)
+    zcat $file > $(basename $file .gz)
 done
 find . -maxdepth 1 -mindepth 1 -type l | xargs --no-run-if-empty rm
 
-for suite in $suites; do
+for suite in oldstable stable testing; do
     case $suite in
-               oldstable) override_suite=etch;;
-               stable) override_suite=lenny;;
-               testing) override_suite=squeeze;;
-               *) echo "Unknown suite type ($suite)"; exit 1;;
+        oldstable) override_suite=wheezy  ;;
+        stable)    override_suite=jessie  ;;
+        testing)   override_suite=stretch ;;
+        *) echo "Unknown suite type ($suite)"; exit 1;;
     esac
     for component in $components; do
-               for override_type in $override_types; do
-                       case $override_type in
-                               deb) type="" ;;
-                               dsc) type=".src" ;;
-                               udeb) type=".debian-installer" ;;
-                       esac
-
-                       if [ "$override_type" = "udeb" ]; then
-                               if [ ! "$component" = "main" ]; then
-                                       continue
-                               fi
-                       fi
-                       zcat override.$override_suite.$component$type.gz | dak control-overrides -q -a -t $override_type -s $suite -c updates/$component
-               done
-    done
-done
+        for override_type in $override_types; do
+            case $override_type in
+                deb) type="" ;;
+                dsc) type=".src" ;;
+                udeb) type=".debian-installer" ;;
+            esac
 
-# Generate .all3 overides for the buildd support
-for dist in etch lenny squeeze; do
-    rm -f override.$dist.all3
-    components="main contrib non-free";
-    if [ -f override.$dist.main.debian-installer.gz ]; then
-               components="$components main.debian-installer"
-    fi
-    for component in $components; do
-               zcat override.$dist.$component.gz >> override.$dist.all3
-        if [ -e "override.$dist.$component.src.gz" ]; then
-                       zcat override.$dist.$component.src.gz >> override.$dist.all3.src
-               fi
+            if [ "$override_type" = "udeb" ]; then
+                if [ ! "$component" = "main" ]; then
+                    continue
+                fi
+            fi
+
+            OFILE="override.$override_suite.$component$type.gz"
+            if [ -r "$OFILE" ]; then
+                zcat "$OFILE" | dak control-overrides -q -a -t $override_type -s $suite -c updates/$component
+            fi
+        done
     done
 done
 
 ################################################################################
 
-cd $masterdir
-dak clean-queues
+cd $configdir
+dak import-keyring -L /srv/keyring.debian.org/keyrings/debian-keyring.gpg
+
+cleanup() {
+    rm -f "$LOCKFILE"
+}
+
+if ! lockfile -r100 "$LOCKFILE"; then
+    echo "Could not lock $LOCKFILE." >&2
+    exit 1
+fi
+trap cleanup EXIT
+
+dak clean-queues -i ${unchecked}
+dak clean-queues -i $disembargo
 dak clean-suites
-apt-ftparchive -q clean apt.conf
-apt-ftparchive -q clean apt.conf.buildd
+
+cleanup
+trap - EXIT
 
 symlinks -d -r $ftpdir
 
-pg_dump obscurity > /org/security-master.debian.org/dak-backup/dump_$(date +%Y.%m.%d-%H:%M:%S)
+pg_file="${base}/dak-backup/dump_$(date +%Y.%m.%d-%H:%M:%S)"
+pg_dump obscurity > "${pg_file}"
+nice xz -9 "${pg_file}"
 
-# Vacuum the database
-set +e
-echo "VACUUM; VACUUM ANALYZE;" | psql obscurity 2>&1 | egrep -v "^NOTICE:  Skipping \"pg_.*only table or database owner can VACUUM it$|^VACUUM$"
-set -e
+find "${base}/dak-backup" -mtime +30 \! -name '.nobackup' -delete
 
 ################################################################################