-#!/bin/sh
+#!/bin/bash
#
# Executed daily via cron, out of dak's crontab.
set -e
-export SCRIPTVARS=/org/security.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
-rsync --delete -r --include=override\* --exclude=\* --password-file /srv/non-us.debian.org/s3kr1t/rsync-password -ql security-master@ftp-master::indices/ $overridedir
+rsync --delete -r --include=override\* --exclude=\* --password-file /srv/security-master.debian.org/s3kr1t/rsync-password -ql security-master@ftp-master::indices/ $overridedir
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 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=squeeze;;
+ stable) override_suite=wheezy;;
+ testing) override_suite=jessie;;
+ *) 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
+ 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
+
+ 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
# Generate .all3 overides for the buildd support
-for dist in etch lenny squeeze; do
+for dist in squeeze wheezy jessie; 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"
+ components="$components main.debian-installer"
fi
for component in $components; do
- zcat override.$dist.$component.gz >> override.$dist.all3
+ 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
+ zcat override.$dist.$component.src.gz >> override.$dist.all3.src
+ fi
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.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
################################################################################