]> git.decadent.org.uk Git - dak.git/blob - config/debian-security/cron.buildd
Oldstable byebye
[dak.git] / config / debian-security / cron.buildd
1 #! /bin/bash
2 #
3 # Executed after cron.unchecked
4
5 ARCHS_stable="alpha amd64 arm hppa i386 ia64 mips mipsel powerpc sparc s390"
6 ARCHS_testing="alpha amd64 armel hppa i386 ia64 mips mipsel powerpc sparc s390"
7 DISTS="stable testing"
8 SSH_SOCKET=~/.ssh/buildd.debian.org.socket
9
10 set -e
11 export SCRIPTVARS=/org/security.debian.org/dak/config/debian-security/vars
12 . $SCRIPTVARS
13
14 if [ -e $ftpdir/Archive_Maintenance_In_Progress ]; then
15         exit 0
16 fi
17
18 cd $masterdir
19 for d in $DISTS; do
20         eval SOURCES_$d=`stat -c "%Y" $base/buildd/$d/Sources.gz`
21         eval PACKAGES_$d=`stat -c "%Y" $base/buildd/$d/Packages.gz`
22 done
23
24 apt-ftparchive -qq -o APT::FTPArchive::Contents=off generate apt.conf.buildd
25 dists=
26 for d in $DISTS; do
27         eval NEW_SOURCES_$d=`stat -c "%Y" $base/buildd/$d/Sources.gz`
28         eval NEW_PACKAGES_$d=`stat -c "%Y" $base/buildd/$d/Packages.gz`
29         old=SOURCES_$d
30         new=NEW_$old
31         if [ ${!new} -gt ${!old} ]; then
32                 if [ -z "$dists" ]; then
33                         dists="$d"
34                 else
35                         dists="$dists $d"
36                 fi
37                 continue
38         fi
39         old=PACKAGES_$d
40         new=NEW_$old
41         if [ ${!new} -gt ${!old} ]; then
42                 if [ -z "$dists" ]; then
43                         dists="$d"
44                 else
45                         dists="$dists $d"
46                 fi
47                 continue
48         fi
49 done
50
51 if [ ! -z "$dists" ]; then
52         # setup ssh master process
53         ssh buildd@buildd -S $SSH_SOCKET -MN 2> /dev/null &
54         SSH_PID=$!
55         while [ ! -S $SSH_SOCKET ]; do
56                 sleep 1
57         done
58         trap 'kill -TERM $SSH_PID' 0
59         for d in $dists; do
60                 archs=ARCHS_$d
61                 ARCHS=${!archs}
62                 cd /org/security.debian.org/buildd/$d
63                 if [ "$d" != "oldstable" ]; then
64                         # disabled for oldstable-security by ajt 2008-01-01
65                         for a in $ARCHS; do
66                                 quinn-diff -a /org/security.debian.org/buildd/Packages-arch-specific -A $a 2>/dev/null | ssh buildd@buildd -S $SSH_SOCKET wanna-build -d $d-security -b $a/build-db --merge-partial-quinn
67
68                                 ssh buildd@buildd -S $SSH_SOCKET wanna-build -d $d-security -A $a -b $a/build-db --merge-packages < Packages
69                         done
70                 else
71                         ssh buildd@bester.farm.ftbfs.de -i ~/.ssh/id_bester sleep 1
72                 fi
73         done
74 fi
75