]> git.decadent.org.uk Git - dak.git/blobdiff - config/debian-security/cron.buildd
remove lenny
[dak.git] / config / debian-security / cron.buildd
index 368cd988b382eda440fabdae56ee58f32802cf09..970a232263f3e9a8d9307db7ff1c6dccda37bd33 100755 (executable)
@@ -11,54 +11,46 @@ SSH_SOCKET=~/.ssh/buildd.debian.org.socket
 DISTS=$(dak admin s list)
 
 if [ -e $ftpdir/Archive_Maintenance_In_Progress ]; then
-       exit 0
+    exit 0
 fi
 
-for dist in $DISTS; do
-       eval SOURCES_$dist=`stat -c "%Y" $base/buildd/$dist/Sources.gz`
-       eval PACKAGES_$dist=`stat -c "%Y" $base/buildd/$dist/Packages.gz`
-done
-
-cd $configdir
-apt-ftparchive -qq -o APT::FTPArchive::Contents=off generate apt.conf.buildd
-
 dists=
-
+now=$(date +%s)
+check=$(( now - 3*60 ))
 
 for dist in $DISTS; do
-       eval NEW_SOURCES_$dist=`stat -c "%Y" $base/buildd/$dist/Sources.gz`
-       eval NEW_PACKAGES_$dist=`stat -c "%Y" $base/buildd/$dist/Packages.gz`
-       old=SOURCES_$dist
-    new=NEW_$old
-    if [ ${!new} -gt ${!old} ]; then
-               if [ -z "$dists" ]; then
-                       dists="$dist"
-               else
-                       dists="$dists $dist"
-               fi
-               continue
-       fi
-       old=PACKAGES_$dist
-       new=NEW_$old
-    if [ ${!new} -gt ${!old} ]; then
-               if [ -z "$dists" ]; then
-                       dists="$dist"
-               else
-                       dists="$dists $dist"
-               fi
-               continue
-       fi
+    smodtime=$(stat -c "%Y" $base/buildd/$dist/Sources.gz)
+    pmodtime=$(stat -c "%Y" $base/buildd/$dist/Packages.gz)
+
+    if [ ${smodtime} -gt ${check} ] || [ ${pmodtime} -gt ${check} ]; then
+        # Packages/Sources changed in the last minutes
+        dists="${dists} ${dist}"
+    else
+        continue
+    fi
 done
 
-if [ ! -z "$dists" ]; then
-       # setup ssh master process
-       ssh wbadm@buildd -S $SSH_SOCKET -MN 2> /dev/null &
-       SSH_PID=$!
-       while [ ! -S $SSH_SOCKET ]; do
-               sleep 1
-       done
-       trap 'kill -TERM $SSH_PID' 0
-       for d in $dists; do
-               ssh wbadm@buildd -S $SSH_SOCKET trigger.security $d
-       done
+if [ ! -z "${dists}" ]; then
+    # setup ssh master process
+    ssh wbadm@buildd -S $SSH_SOCKET -MN 2> /dev/null &
+    SSH_PID=$!
+    while [ ! -S $SSH_SOCKET ]; do
+        sleep 1
+    done
+    trap 'kill -TERM $SSH_PID' 0
+    for d in ${dists}; do
+        case ${d} in
+            stable)
+                send=squeeze
+                ;;
+            testing)
+                send=wheezy
+                ;;
+            *)
+                send=unknown
+                ;;
+        esac
+
+        ssh wbadm@buildd -S $SSH_SOCKET trigger.security $send
+    done
 fi