]> git.donarmstrong.com Git - wannabuild.git/blob - trigger.often
catch-up commit
[wannabuild.git] / trigger.often
1 #!/bin/bash
2 #
3 # Updates wanna-build databases after the archive maintenance
4 # finishes
5 #
6 # Files:
7 #     Sources-* == upstream fetched file
8 #     Sources.* == uncompressed, concat'd version
9 #
10
11 LANG=C
12 PATH="/bin:/usr/bin"
13 TMPDIR="/org/wanna-build/tmp"
14 LIBTRIGGER="/org/wanna-build/libtrigger.sh"
15 WGETOPT="-q -t2 -w0 -T10"
16 LOCKFILE="/org/wanna-build/tmp/DB_Maintenance_In_Progress"
17 NEWARCH=""
18
19 . "$LIBTRIGGER"
20
21 if lockfile -! -l 3600 $LOCKFILE; then
22         echo "Cannot lock $LOCKFILE"
23         exit 1
24 fi
25
26 cleanup() {
27         rm -f "$LOCKFILE"
28 }
29 trap cleanup 0
30
31 umask 027
32
33 exec >> /org/wanna-build/db/merge.log 2>&1
34
35 echo --
36 echo "incoming merge triggered: `date`"
37
38 cd $TMPDIR
39
40 #
41 # Make one big Packages and Sources file from accepted autobuilding.
42 #
43 rm -f Sources.unstable Sources.gz Packages.gz
44 if wget $WGETOPT http://incoming.debian.org/buildd/Sources.gz; then
45         mv Sources.gz Sources-unstable.accepted.gz
46 fi
47 if wget $WGETOPT http://incoming.debian.org/buildd/Packages.gz; then
48         mv Packages.gz Packages-unstable.accepted.gz
49 fi
50 cp Sources.unstable.base Sources.unstable
51 zcat Sources-unstable.accepted.gz >> Sources.unstable
52 for a in $ARCHS_unstable; do
53         rm -f Packages.unstable.$a
54         cp Packages.unstable.$a.base Packages.unstable.$a
55         zcat Packages-unstable.accepted.gz >> Packages.unstable.$a
56 done
57         
58 umask 007
59 for a in $ARCHS_unstable ; do
60         if [ "$a" = "$NEWARCH" ]; then
61                 quinn-diff -A $a -a /org/buildd.debian.org/web/quinn-diff/sid/Packages-arch-specific -s Sources.unstable.$NEWARCH -p Packages.unstable.$a >> quinn-unstable.$a 2> /dev/null
62         else
63                 quinn-diff -A $a -a /org/buildd.debian.org/web/quinn-diff/sid/Packages-arch-specific -s Sources.unstable -p Packages.unstable.$a >> quinn-unstable.$a 2> /dev/null
64         fi
65         perl -pi -e 's#^(non-free)/.*$##msg' quinn-unstable.$a
66         if [ "$a" = "$NEWARCH" ]; then
67                 wanna-build -v --merge-all --arch=$a --dist=unstable --database=$a/build-db Packages.unstable.$a quinn-unstable.$a Sources.unstable.$NEWARCH
68         else
69                 wanna-build -v --merge-all --arch=$a --dist=unstable --database=$a/build-db Packages.unstable.$a quinn-unstable.$a Sources.unstable
70         fi
71         mv Packages.unstable.$a Packages.unstable.$a-old
72         mv quinn-unstable.$a quinn-unstable.$a-old
73 done
74 mv Sources.unstable Sources.unstable-old
75
76 echo "incoming merge ended: `date`"
77 exit 0