]> xenbits.xensource.com Git - osstest.git/commitdiff
cs-bisection-step: Cope with url-less trees flight-26918 flight-26920 flight-26922 flight-26924 flight-26925 flight-26926 flight-26927 flight-26929 flight-26931 flight-26933 flight-26934 flight-26935 flight-26936 flight-26937 flight-26938 flight-26940 flight-26942 flight-26944 flight-26945 flight-26946 flight-26948 flight-26949 flight-26950 flight-26951 flight-26952 flight-26956 flight-26964 flight-26967 flight-26969 flight-26971 flight-26972 flight-26973 flight-26979 flight-26980 flight-26981 flight-26982 flight-26984 flight-26985 flight-26986 flight-26988 flight-26989 flight-26990 flight-26991 flight-26992 flight-26995 flight-26996 flight-26998 flight-26999 flight-27000 flight-27002 flight-27003 flight-27004 flight-27006 flight-27007 flight-27008 flight-27009 flight-27011 flight-27013 flight-27014 flight-27015 flight-27016 flight-27017 flight-27018 flight-27019 flight-27020 flight-27022 flight-27023 flight-27026 flight-27027 flight-27028 flight-27029 flight-27030
authorIan Jackson <ian.jackson@eu.citrix.com>
Mon, 2 Jun 2014 10:09:17 +0000 (11:09 +0100)
committerIan Jackson <Ian.Jackson@eu.citrix.com>
Mon, 2 Jun 2014 10:09:17 +0000 (11:09 +0100)
Since osstest 64a9c064, some flights have a tree with an empty
tree_<foo> variable.  This breaks the bisector.  Make it more robust
as follows:

When searching for the basis flight, ignore not only trees with no url
specified but also ones with an empty url.

When preparing the set of trees we care about, eliminate any where the
latest flight has no url (or an empty url).

(It would still be better for the flight constructor to leave
tree_<foo> unset, and for the ts-* build script to set it in as a part
of the post-build data collection.  That would allow the bisector to
work on that tree where relevant.  But doing this is a task for
another day - if for no other reason than that we have to decide
whether to put it in a new variable built_tree_<foo>.)

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
cs-bisection-step

index ca3b28ac4a292deec3ad25ec15145b0933251a53..3172b571b5272ec668b1a98770c06e6447a94af8 100755 (executable)
@@ -357,7 +357,7 @@ END
                my $failvcs = $failrmap->{$tree}{Url};
                my $basisvcs = $basisrmap->{$tree}{Url};
 #print STDERR Dumper($failvcs, $basisvcs);
-               next unless defined $basisvcs;
+               next unless defined $basisvcs && length $basisvcs;
                $failvcs  =~ s/.*(\.git|\.hg)$/$1/ or $failvcs= 'git';
                $basisvcs =~ s/.*(\.git|\.hg)$/$1/ or $basisvcs='git';
 #print STDERR "COMPARE $failvcs $basisvcs\n";
@@ -437,10 +437,15 @@ sub digraph_whole () {
 
     foreach my $tree (sort keys %$latest_rmap) {
         if (defined $basispass_rmap->{$tree}) {
-            push @treeinfos, {
-                Name => $tree,
-                Url => $latest_rmap->{$tree}{Url}
-            };
+           my $url = $latest_rmap->{$tree}{Url};
+           if (defined $url && length $url) {
+               push @treeinfos, {
+                   Name => $tree,
+                   Url => $latest_rmap->{$tree}{Url}
+               };
+           } else {
+               print STDERR "(tree with no url: $tree)\n";
+           }
         } else {
             print STDERR "(tree in latest but not in basispass: $tree)\n";
         }