]> git.decadent.org.uk Git - dak.git/blobdiff - config/debian/cron.hourly
push mirror on ries instead of having ries pull from franck
[dak.git] / config / debian / cron.hourly
index 0c06b74f3c3196ad92d134b88c9788c53a07427c..cbc687fb219b4e1e1c730d49e640baff46ef0843 100755 (executable)
@@ -1,18 +1,35 @@
-#! /bin/sh
+#! /bin/bash
 #
 # Executed hourly via cron, out of dak's crontab.
 
 set -e
+set -o pipefail
 set -u
 
 export SCRIPTVARS=/srv/ftp-master.debian.org/dak/config/debian/vars
 . $SCRIPTVARS
 
+PROGRAM="Hourly"
+########################################################################
+# Functions                                                            #
+########################################################################
+# common functions are "outsourced"
+. "${configdir}/common"
+
 dak import-users-from-passwd
+
+# do not run show-new and other stuff in parallel
+LOCKFILE="$lockdir/unchecked.lock"
+if lockfile -r16 $LOCKFILE 2> /dev/null; then
+    do_new
+    dak show-new > /dev/null || true
+    rm -f $LOCKFILE
+fi
+
 dak queue-report -n > $webdir/new.html
-dak queue-report -8 -d new,byhand,proposedupdates,oldproposedupdates
-dak show-deferred > ${webdir}/deferred.html
-dak show-new > /dev/null
+dak queue-report -8 -d new,byhand,stable-new,oldstable-new -r $webdir/stat
+dak show-deferred -r $webdir/stat > ${webdir}/deferred.html
+dak graph -n new,byhand,stable-new,oldstable-new,deferred -r $webdir/stat -i $webdir/stat -x $scriptsdir/rrd-release-freeze-dates
 
 cd $webdir
 cat removals-20*.txt > removals-full.txt
@@ -21,6 +38,34 @@ cat removals-20*.822 > removals-full.822
 cat removals.822 >> removals-full.822
 
 $base/dak/tools/queue_rss.py -q $queuedir/new -o $webdir/rss/ -d $base/misc -l $base/log/
-$base/dak/tools/removals.pl > $webdir/rss/removals.rss
+$base/dak/tools/removals.pl $configdir/removalsrss.rc > $webdir/rss/removals.rss
+
+
+# Tell ries to sync its tree
+${scriptsdir}/sync-dd ries-sync ries-sync1 ries-sync2 sync
 
 $scriptsdir/generate-di
+
+# Push files over to security
+#pg_dump -a -F p -t files | sed -e "s,^COPY files (,DELETE FROM external_files; COPY external_files (," | xz -3 | \
+#        ssh -o BatchMode=yes -o ConnectTimeout=30 -o SetupTimeout=30 -2 -i ${base}/s3kr1t/push-external_files dak@wherever sync
+#
+# The key should run the following command:
+#        'xzcat | pg_restore -1 -a'
+
+# do the buildd key updates
+BUILDDFUN=$(mktemp -p "${TMPDIR}" BUILDDFUN.XXXXXX)
+exec >> "${BUILDDFUN}" 2>&1
+${scriptsdir}/buildd-remove-keys
+${scriptsdir}/buildd-add-keys
+${scriptsdir}/buildd-prepare-dir
+
+for keyring in $(dak admin k list-binary); do
+    dak import-keyring --generate-users "%s" ${keyring}
+done
+exec >>/dev/null 2>&1
+
+DATE=$(date -Is)
+cat "${BUILDDFUN}" | mail -a "X-Debian: DAK" -e -s "[$(hostname -s)] Buildd key changes ${DATE}" buildd-keys@ftp-master.debian.org -- -F "Debian FTP Masters" -f ftpmaster@ftp-master.debian.org
+
+rm -f "${BUILDDFUN}"