X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=config%2Fdebian%2Fcron.weekly;h=7d884b6a1e707a07f9afb1eb5378b1cc8f0db933;hb=520cc894834d0bf90b409bca8db8ad428d273582;hp=9a4c56f141f57d466652ca462199d56feb1420f2;hpb=8e475b502ed8cc0696984ac7cb7aad91a0cfca27;p=dak.git diff --git a/config/debian/cron.weekly b/config/debian/cron.weekly index 9a4c56f1..7d884b6a 100755 --- a/config/debian/cron.weekly +++ b/config/debian/cron.weekly @@ -1,10 +1,15 @@ -#!/bin/sh +#!/bin/bash # # Run once a week via cron, out of dak's crontab. set -e +set -o pipefail set -u -export SCRIPTVARS=/srv/ftp.debian.org/dak/config/debian/vars +# 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/ftp-master.debian.org/dak/config/debian/vars . $SCRIPTVARS # Start logging @@ -27,31 +32,17 @@ if [ ! -z "$(find $ftpdir/pool/ -type d -empty)" ]; then find $ftpdir/pool/ -type d -empty | xargs rmdir; fi -# Split queue/done -echo "Splitting queue/done" -dak split-done > /dev/null - -# Vacuum the database -echo "VACUUM; VACUUM ANALYZE;" | psql --no-psqlrc projectb 2>&1 | grep -v "^NOTICE: Skipping.*only table owner can VACUUM it$" - # Do git cleanup stuff echo "Doing git stuff" -cd /org/ftp.debian.org/git/dak.git +cd /srv/ftp.debian.org/git/dak.git git gc --prune git update-server-info # now workaround a git bug not honoring the setup in logs/* # (fix in development, but until it reached backports.org.......) chmod -R g+w logs/ -# Clean up apt-ftparchive's databases -cd $configdir -echo "Cleanup apt-ftparchive's database" -apt-ftparchive -q clean apt.conf -apt-ftparchive -q clean apt.conf.buildd - -# Update wanna-build dump -echo "Update wanan-build database dump" -/org/ftp.debian.org/scripts/nfu/get-w-b-db +echo "Fixing symlinks in $ftpdir" +symlinks -d -r $ftpdir echo "Finally, all is done, compressing logfile" exec > /dev/null 2>&1