]> git.donarmstrong.com Git - debbugs.git/commitdiff
add changes by collin to fix stable debian specific issues
authorDebian BTS <debbugs@rietz>
Sat, 9 Jun 2007 23:15:25 +0000 (23:15 +0000)
committerDon Armstrong <don@donarmstrong.com>
Sat, 1 Apr 2023 05:54:02 +0000 (22:54 -0700)
examples/debian/versions/update-mldbm

index 9a893027e63ec937f4685ba4b17a0d1a31ce311c..c844b2dd255178034a9c25ede02bdbcdfbb69ca2 100755 (executable)
@@ -4,10 +4,72 @@ cd /org/bugs.debian.org/versions/indices
 
 ARCHIVES='ftp' # security -- should be included too, but too difficult to deal with
 
-../bin/build-versions-db versions.idx versions_time.idx \
-                        /srv/bugs.debian.org/versions/indices/ftp \
-                        oldstable stable proposed-updates \
-                        testing \
-                        testing-proposed-updates \
-                        unstable \
-                        experimental;
+# Nuke old versions of versions.idx.new in case there's one hanging about
+rm -f versions.idx.new
+# This index is much larger and keeps track of historic versions of
+# packages, and is used for expiring bugs
+rm -f versions_time.idx.new
+if [ -e versions_time.idx ]; then
+    cp versions_time.idx versions_time.idx.new;
+fi;
+
+set -e
+for archive in $ARCHIVES; do
+    case $archive in
+       ftp)
+           SUITES='oldstable stable proposed-updates testing testing-proposed-updates unstable experimental'
+           di_main='main main/debian-installer'
+           ;;
+       nonus)
+           SUITES='oldstable'
+           di_main='main'
+           ;;
+       security)
+           SUITES='oldstable stable testing'
+           di_main='main'
+           ;;
+    esac
+    for suite in $SUITES; do
+        if [ "$suite" != "oldstable" ] || [ -d /org/bugs.debian.org/etc/indices/$archive/$suite ]; then
+       case $suite in
+           oldstable)
+               ARCHES='alpha arm hppa i386 ia64 m68k mips mipsel powerpc s390 sparc'
+               ;;
+           stable|proposed-updates)
+               ARCHES='alpha arm hppa i386 ia64 mips mipsel powerpc s390 sparc'
+               ;;
+           testing|testing-proposed-updates)
+               ARCHES='alpha amd64 arm hppa i386 ia64 mips mipsel powerpc s390 sparc'
+               ;;
+           unstable|experimental)
+               ARCHES='alpha amd64 arm hppa hurd-i386 i386 ia64 m68k mips mipsel powerpc s390 sparc'
+               ;;
+       esac
+       case $suite in
+           oldstable|experimental)
+               COMPONENTS='main contrib non-free'
+               ;;
+           stable|proposed-updates|testing|testing-proposed-updates|unstable)
+               COMPONENTS="$di_main contrib non-free"
+               ;;
+       esac
+       for component in $COMPONENTS; do
+           for arch in $ARCHES; do
+               zcat "/org/bugs.debian.org/etc/indices/$archive/$suite/$component/binary-$arch/Packages.gz" | ../bin/build-mldbm.pl "$archive" "$suite" "$arch"
+           done
+           if [ "$component" != main/debian-installer ]; then
+               zcat "/org/bugs.debian.org/etc/indices/$archive/$suite/$component/source/Sources.gz" | ../bin/build-mldbm.pl "$archive" "$suite" source
+           fi
+       done
+       fi
+    done
+done
+
+# This removes old versions
+../bin/versions_time_cleanup
+
+chmod 664 versions.idx.new
+mv versions.idx.new versions.idx
+
+chmod 664 versions_time.idx.new
+mv versions_time.idx.new versions_time.idx