chiark / gitweb /
* hosts/cadmium/onepackage-config: explain about archive skew.
authorIan Jackson <ian@davenant.greenend.org.uk>
Wed, 26 Sep 2007 15:59:37 +0000 (16:59 +0100)
committerIan Jackson <ian@davenant.greenend.org.uk>
Wed, 26 Sep 2007 15:59:37 +0000 (16:59 +0100)
* adt-testreport-onepackage: nicer score logging re skip chars.
* adt-testreport-onepackage: skip emails if _source_ is suppresed.
* adt-testreport-onepackage etc.: new blacklist feature, and initially
  blacklist ltsp-client{,-core}.

debian/changelog
hosts/cadmium/onepackage-config
runner/adt-testreport-onepackage

index b295641ae01a2ddd30735d45a0bc108e8962aa13..f240b545c7f23361ad0c4ac726228e1b33ba89a0 100644 (file)
@@ -8,6 +8,11 @@ autopkgtest (1.0.9) unstable; urgency=low
   * adt-testreport-onepackage: Do not prefer packages whose source package
     is listed in the suppressions file.
   * hosts/cadmium/manual-test-one-binary: new testing script.
+  * hosts/cadmium/onepackage-config: explain about archive skew.
+  * adt-testreport-onepackage: nicer score logging re skip chars.
+  * adt-testreport-onepackage: skip emails if _source_ is suppresed.
+  * adt-testreport-onepackage etc.: new blacklist feature, and initially
+    blacklist ltsp-client{,-core}.
 
   --
 
index 700a50f74254fcd418750dfd639df2ed6a3422d7..616f06882a94165112a1c5b454a2b1b6fe40668a 100644 (file)
@@ -14,11 +14,16 @@ upload_if_ok=true
 upload_if_notests=true
 suppressrepeatedemails=false
 suppresspackages=suppressions
+blacklistbinarypackages=blacklist
 
 email_extra_info='
 The test environment is an amd64 Xen guest with limited amounts of
 memory.  The relevant dependencies are installed for each test but
 very few other packages.  Most autopkgtest reports are FTBFS problems.
+
+Please forgive this bug report if the problem is due to archive skew;
+in that case you'\''ve just been unlucky with the timing.  Feel free to
+close the bug if the skew has been fixed, or will be fixed soon.
 '
 
 maintainer_email_override="new@bugs.launchpad.net"
index 0839e5a26d31c5fd1fe0a88da4ef6211eeb94f2d..87d33a7b935f5bc9e55598a4c48730354ec62f86 100755 (executable)
@@ -76,6 +76,12 @@ now=`date +%s`
 
 progress selecting
 
+if test $target = source; then
+       blacklist="$blacklistsourcepackages"
+else
+       blacklist="$blacklistbinarypackages"
+fi
+
 if [ "x$pkg" = x ]; then
  pkg="`perl -e '
        use IO::Handle;
@@ -93,17 +99,19 @@ if [ "x$pkg" = x ]; then
                printf SCORE "%$_[1]s", $_[0] or die $!;
        }
 
-       $suppresspackages= "'"$suppresspackages"'";
-       if (length $suppresspackages) {
-               unshift @ARGV, $suppresspackages; f1();
+       sub readpkglist ($$) {
+               my ($arrayref, $filename) = @_;
+               return unless length $filename;
+               unshift @ARGV, $filename; f1();
                while (<F>) {
                        next if m/^\#/ or !m/\S/;
                        die unless m/^($pre)\s*$/;
-#print STDERR "SUPPRESS GOT $1\n";
-                       $suppress{$1}= 1;
+                       $arrayref->{$1}= 1;
                }
                f2();
        }
+       readpkglist(\%suppress, "'"$suppresspackages"'");
+       readpkglist(\%blacklist, "'"$blacklist"'");
 
        f1();
        while (<F>) {
@@ -116,7 +124,8 @@ if [ "x$pkg" = x ]; then
        f1();
        $best_score= -2e9;
        sub scorepackage () {
-               return if $skip;
+               return if length $skip;
+               return if $blacklist{$package};
                return if $score < $best_score
                     or ($score==$best_score and \
                         $package gt $best_package);
@@ -159,7 +168,9 @@ if [ "x$pkg" = x ]; then
                        $score -= 2e7;
                        $scorechars.="s";
                }
-               pscore("-$scorechars",-5);
+               $scorechars.="[$skip]" if length $skip;
+
+               pscore("-$scorechars",-7);
                pscore("$score",10);
 
 #print STDERR "SCORE package=$package score $score source=$source\n";
@@ -183,7 +194,7 @@ if [ "x$pkg" = x ]; then
                } elsif (m/^Architecture:.*/ &&
                         !m/\s(?:'$arch'|all|any)\s/) {
 #printf STDERR " <----- skip %s %s\n", $&, "'$arch'";
-                       $skip= 1;
+                       $skip .= 'a';
                } elsif (m/^$/) {
                        endpackage();
                }
@@ -324,7 +335,7 @@ esac
 progress "RESULTS $summary"
 
 if  [ "x$suppresspackages" != x ] \
- && grep -x "$pkg" "$suppresspackages" >/dev/null; then
+ && grep -x "$src" "$suppresspackages" >/dev/null; then
        printf >&3 "email-suppressed "
        email=''
 fi