[Secure-testing-commits] r657 - sarge-checks

Joey Hess joeyh@costa.debian.org
Fri, 25 Mar 2005 17:03:01 +0000


Author: joeyh
Date: 2005-03-25 17:03:01 +0000 (Fri, 25 Mar 2005)
New Revision: 657

Modified:
   sarge-checks/checklist
Log:
- e robust when madison segfaults
- deal better with arches that are not keeping up in testing (like arm)


Modified: sarge-checks/checklist
===================================================================
--- sarge-checks/checklist	2005-03-25 15:36:19 UTC (rev 656)
+++ sarge-checks/checklist	2005-03-25 17:03:01 UTC (rev 657)
@@ -64,15 +64,22 @@
 				}
 			}
 
-			my $maddy=`madison -s testing '$package'`;
+			my @maddy;
+			for (1..5) {
+				@maddy=`madison -s testing '$package'`;
+				if ($? & 127) {
+					# segfult. good old newraff..
+					next;
+				}
+				last;
+			}
 			if ($? & 127) {
-				# good old newraff..
-				record($package, "<em>[madison segfaulted]</em>", $id);
+				record($package, "<em>[madison segfaulted 5 times in a row.. Medic!]</em>", $id);
 			}
 			elsif ($? >> 8 != 0 && $? >> 8 != 1) {
 				record($package, "<em>[madison exited with ".($? >> 8)."]</em>", $id);
 			}
-			if (! length $maddy) {
+			if (! @maddy) {
 				next;
 			}
 			
@@ -81,16 +88,20 @@
 				$unfixed++;
 			}
 			else {
-				my @fields = split(/\s*\|\s*/, $maddy);
-				my $havver=$fields[1];
-				$version=~s/\s+//; # strip whitespace
-				my $cmp=system("dpkg --compare-versions '$havver' '>=' '$version'");
-				if ($cmp != 0) {
-					if ($html) {
-						$havver='<a href="http://bjorn.haxx.se/debian/testing.pl?package='.uri_escape($package).'">'.$havver.'</a>';
+				foreach my $maddy (@maddy) {
+					my @fields = split(/\s*\|\s*/, $maddy);
+					my $havver=$fields[1];
+					my $arches=$fields[3];
+					$version=~s/\s+//; # strip whitespace
+					$arches=~s/\s+$//;
+					my $cmp=system("dpkg --compare-versions '$havver' '>=' '$version'");
+					if ($cmp != 0) {
+						if ($html) {
+							$havver='<a href="http://bjorn.haxx.se/debian/testing.pl?package='.uri_escape($package).'">'.$havver.'</a>';
+						}
+						record($package, "$version needed, have $havver".(@maddy > 1 ? " [$arches]" : ""), $id);
+						$unprop++;
 					}
-					record($package, "$version needed, have $havver", $id);
-					$unprop++;
 				}
 			}
 		}