X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=scripts%2Fdebian%2Fgenerate-d-i;h=5d6bca78f5333ddceb1c5e844a9abc8db42c2559;hb=7066337f607d0b8e116557a94ab2d4978094f2be;hp=fee0ba5bbe6c21097a8e243ff293fa3d97b1dbb3;hpb=16f731a893f0ba036a995c25b8b5f3490394070e;p=dak.git diff --git a/scripts/debian/generate-d-i b/scripts/debian/generate-d-i index fee0ba5b..5d6bca78 100755 --- a/scripts/debian/generate-d-i +++ b/scripts/debian/generate-d-i @@ -1,38 +1,67 @@ -#!/bin/sh +#!/bin/bash # Original written from Jeroen van Wolffelaar set -e -export SCRIPTVARS=/srv/ftp.debian.org/dak/config/debian/vars +export SCRIPTVARS=/srv/ftp-master.debian.org/dak/config/debian/vars . $SCRIPTVARS export PAGER=cat exec > $webdir/d-i 2>&1 +testing_id=$(psql -t -c "SELECT id FROM suite WHERE suite_name='testing'") +testing_pu_id=$(psql -t -c "SELECT id FROM suite WHERE suite_name='testing-proposed-updates'") +unstable_id=$(psql -t -c "SELECT id FROM suite WHERE suite_name='unstable'") echo "udeb's in testing that don't (anymore) correspond to any testing source:" -psql projectb -c "select b.package, b.version, (SELECT arch_string from -architecture where b.architecture=architecture.id) as arch, s.source from -bin_associations ba LEFT JOIN binaries b on (ba.bin=b.id) LEFT JOIN source s -on (b.source=s.id) WHERE ba.suite=4 AND s.id NOT IN (SELECT source from -src_associations WHERE suite=4) AND b.type = 'udeb' ORDER BY s.source, -b.package, b.architecture;" +psql -c " + SELECT + b.package, + b.version, + (SELECT arch_string from architecture where b.architecture = architecture.id) as arch, + s.source + FROM bin_associations ba + LEFT JOIN binaries b on (ba.bin = b.id) + LEFT JOIN source s on (b.source = s.id) + WHERE ba.suite = ${testing_id} + AND s.id NOT IN (SELECT source from src_associations WHERE suite = ${testing_id}) + AND b.type = 'udeb' + ORDER BY s.source, b.package, b.architecture; + " echo "udeb's in unstable that should be in testing too:" -psql projectb -c "select b.package, b.version, (SELECT arch_string from -architecture where b.architecture=architecture.id) as arch, s.source from -bin_associations ba LEFT JOIN binaries b on (ba.bin=b.id) LEFT JOIN source s -on (b.source=s.id) WHERE ba.suite=5 AND NOT EXISTS (SELECT 1 FROM -bin_associations ba2 WHERE ba2.suite=4 AND ba2.bin=ba.bin) AND s.id IN (SELECT -source from src_associations WHERE suite=4) AND b.type = 'udeb' AND -b.architecture NOT IN (4,8,12) ORDER BY s.source, b.package, b.architecture;" +psql -c " + SELECT + b.package, + b.version, + (SELECT arch_string from architecture where b.architecture = architecture.id) as arch, + s.source + FROM bin_associations ba + LEFT JOIN binaries b on (ba.bin=b.id) + LEFT JOIN source s on (b.source=s.id) + WHERE ba.suite = ${unstable_id} + AND NOT EXISTS (SELECT 1 FROM bin_associations ba2 WHERE ba2.suite = ${testing_id} AND ba2.bin = ba.bin) + AND s.id IN (SELECT source from src_associations WHERE suite = ${testing_id}) + AND b.type = 'udeb' + AND b.architecture NOT IN (4,8,12) + ORDER BY s.source, b.package, b.architecture; + " echo "udeb's in t-p-u that should be in testing too:" -psql projectb -c "select b.package, b.version, (SELECT arch_string from -architecture where b.architecture=architecture.id) as arch, s.source from -bin_associations ba LEFT JOIN binaries b on (ba.bin=b.id) LEFT JOIN source s -on (b.source=s.id) WHERE ba.suite=3 AND NOT EXISTS (SELECT 1 FROM -bin_associations ba2 WHERE ba2.suite=4 AND ba2.bin=ba.bin) AND s.id IN (SELECT -source from src_associations WHERE suite=4) AND b.type = 'udeb' AND -b.architecture NOT IN (4,8,12) ORDER BY s.source, b.package, b.architecture;" +psql -c " + SELECT + b.package, + b.version, + (SELECT arch_string from architecture where b.architecture=architecture.id) as arch, + s.source + FROM bin_associations ba + LEFT JOIN binaries b ON ba.bin = b.id + LEFT JOIN source s ON b.source = s.id + WHERE ba.suite = ${testing_pu_id} + AND NOT EXISTS (SELECT 1 FROM bin_associations ba2 WHERE ba2.suite = ${testing_id} AND ba2.bin = ba.bin) + AND s.id IN (SELECT source from src_associations WHERE suite = ${testing_id}) + AND b.type = 'udeb' + AND b.architecture NOT IN (4,8,12) + ORDER BY s.source, b.package, b.architecture; + "