#!/bin/bash # # Updates wanna-build databases after the archive maintenance # finishes # # Files: # Sources-* == upstream fetched file # Sources.* == uncompressed, concat'd version # # RM: disabled for etch release LANG=C PATH="/bin:/usr/bin" ARCHS="m68k arm armel sparc alpha powerpc i386 mips mipsel ia64 hppa s390 amd64" TMPDIR="/org/wanna-build/tmp" WGETOPT="-q -t2 -w0 -T10" LOCKFILE="/org/wanna-build/tmp/DB_Maintenance_In_Progress" NEWARCH="" if lockfile -! -l 3600 $LOCKFILE; then echo "Cannot lock $LOCKFILE" exit 1 fi cleanup() { rm -f "$LOCKFILE" } trap cleanup 0 umask 027 exec >> /org/wanna-build/db/merge.log 2>&1 echo -- echo "incoming merge triggered: `date`" cd $TMPDIR rm -rf srcdep umask 022 cvs -d :pserver:anonymous@cvs.debian.org:/cvs/dak checkout srcdep/Packages-arch-specific >/dev/null if [ -f srcdep/Packages-arch-specific ]; then cp -p srcdep/Packages-arch-specific /org/buildd.debian.org/web/quinn-diff/ fi rm -rf srcdep umask 027 # # Make one big Packages and Sources file from accepted autobuilding. # rm -f Sources.unstable Sources.gz Packages.gz if wget $WGETOPT http://incoming.debian.org/buildd/Sources.gz; then mv Sources.gz Sources-unstable.accepted.gz fi if wget $WGETOPT http://incoming.debian.org/buildd/Packages.gz; then mv Packages.gz Packages-unstable.accepted.gz fi cp Sources.unstable.base Sources.unstable zcat Sources-unstable.accepted.gz >> Sources.unstable for a in $ARCHS; do rm -f Packages.unstable.$a cp Packages.unstable.$a.base Packages.unstable.$a zcat Packages-unstable.accepted.gz >> Packages.unstable.$a done umask 007 for a in $ARCHS ; do if [ "$a" = "i386" ]; then quinn-diff -i -D 177 -A $a -a /org/buildd.debian.org/web/quinn-diff/Packages-arch-specific -s Sources.unstable -p Packages.unstable.$a >> quinn-unstable.$a 2> /dev/null else if [ "$a" = "$NEWARCH" ]; then quinn-diff -i -A $a -a /org/buildd.debian.org/web/quinn-diff/Packages-arch-specific -s Sources.unstable.$NEWARCH -p Packages.unstable.$a >> quinn-unstable.$a 2> /dev/null else quinn-diff -i -A $a -a /org/buildd.debian.org/web/quinn-diff/Packages-arch-specific -s Sources.unstable -p Packages.unstable.$a >> quinn-unstable.$a 2> /dev/null fi fi perl -pi -e 's#^(non-free)/.*$##msg' quinn-unstable.$a if [ "$a" = "$NEWARCH" ]; then wanna-build -v --merge-all --arch=$a --dist=unstable --database=$a/build-db Packages.unstable.$a quinn-unstable.$a Sources.unstable.$NEWARCH else wanna-build -v --merge-all --arch=$a --dist=unstable --database=$a/build-db Packages.unstable.$a quinn-unstable.$a Sources.unstable fi mv Packages.unstable.$a Packages.unstable.$a-old mv quinn-unstable.$a quinn-unstable.$a-old done mv Sources.unstable Sources.unstable-old echo "incoming merge ended: `date`" exit 0