adhoc-revtuple-generator and cs-bisection-step try to guess the VCS
from the URL, by looking at the end of the URL for a suitable file
extension. If none was found, things would break.
This relies on a convention about tree URLs which is sadly no longer
being widely observed. In particular many projects have git URLs
which do not mention git.
Instead, have these scripts assume that urls which don't end in .git
or .hg are for git.
This renders hg into a second-class VCS in osstest, which is (I think)
tolerable. If it isn't, then someone ought to come up with some
better way of ensuring that the vcs is explicitly specified to
adhoc-revtuple-generator and cs-bisection-step. That would probably
be doable but is too much work right now.
Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
$tree->{Gen}= \&hg_generator;
$tree->{Show}= \&hg_revshower;
$tree->{Treename}= $1;
+ } elsif (m,([^/]+)$,) {
+ my $name= $1;
+ $name =~ s,\.[^.]+$,,;
+ $tree->{Gen}= \&git_generator;
+ $tree->{Show}= \&git_revshower;
+ $tree->{Treename}= $name;
} else {
die "unknown tree format $_ ?";
}
my $basisvcs = $basisrmap->{$tree}{Url};
#print STDERR Dumper($failvcs, $basisvcs);
next unless defined $basisvcs;
- $failvcs=~ s/.*(\.\w+)$/$1/ or warn "$tryfail->{flight} $tree ";
- $basisvcs=~s/.*(\.\w+)$/$1/ or warn "$trybasisflight $tree ";
+ $failvcs =~ s/.*(\.git|\.hg)$/$1/ or $failvcs= 'git';
+ $basisvcs =~ s/.*(\.git|\.hg)$/$1/ or $basisvcs='git';
#print STDERR "COMPARE $failvcs $basisvcs\n";
push @bad, "$tree:<$failvcs>/<$basisvcs>"
if $failvcs ne $basisvcs;