X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=infra%2Fdgit-repos-server;h=811db69dd38021c3cb845ec781f6f8e81903cdfd;hb=f50450ae5e1ee0b122570dd17f7839f46ecbee92;hp=68429eb73a13881614e33510f844648ab6fedd48;hpb=dd88f3100854f2440b673cafc2b6ae5ad52f9ebf;p=dgit.git diff --git a/infra/dgit-repos-server b/infra/dgit-repos-server index 68429eb7..811db69d 100755 --- a/infra/dgit-repos-server +++ b/infra/dgit-repos-server @@ -1112,7 +1112,11 @@ sub mode_tag2upload () { my $tagref = "refs/tags/$tagval"; rmtree $work; + rmtree 'bpd'; mkdir $work or die $!; + mkdir 'bpd' or die $!; + unlink <*.orig*>; + dif $! if <*.orig*>; changedir $work; runcmd qw(git init -q); runcmd qw(git remote add origin), $url; @@ -1128,7 +1132,7 @@ sub mode_tag2upload () { # quick and dirty check, will check properly later m/^\[dgit[^"]* please-upload(?:\]| )/m or - $quit->("tag missing please-upload request $_"); + $quit->("tag missing please-upload request"); m/^tagger (.*) \d+ [-+]\d+$/m or $quit->("failed to fish tagger out of tag"); @@ -1145,7 +1149,6 @@ sub mode_tag2upload () { # This is for us. From now on, we will capture errors to # be emailed to the tagger. - # TODO: failures to git fetch from salsa will burn a version open H, ">>dgit-tmp/tagupl.email" or die $!; print H <("failed, emailed"); } open STDERR, ">&L" or die $!; open STDOUT, ">&STDERR" or die $!; open DEBUG, ">&STDERR" if $debuglevel; - die "$tagmversion != $version " unless $tagmversion eq $version; + reject "version mismatch $tagmversion != $version " + unless $tagmversion eq $version; my %need = map { $_ => 1 } qw(please-upload split); my ($upstreamc, $upstreamt); my $quilt; my $distro_ok; + confess if defined $upstreamt; + parsetag_general sub { if (m/^(\S+) / && exists $need{$1}) { $_ = $'; @@ -1231,6 +1237,7 @@ END push @dgit, $ENV{DGIT_DRS_DGIT} // 'dgit'; push @dgit, '-wn'; push @dgit, "-p$package"; + push @dgit, '--build-products-dir=../bpd'; changedir ".."; runcmd (@dgit, qw(setup-gitattributes)); @@ -1244,8 +1251,6 @@ END } runcmd @fetch; - $upstreamc eq git_rev_parse "refs/tags/$upstreamt" or die; - runcmd qw(git checkout -q), "refs/tags/$tagval"; @fetch = (@dgit, qw(fetch), $suite); @@ -1255,7 +1260,10 @@ END failedcmd @fetch unless $? == 4*256; } # this is just to get the orig, so we don't really care about the ref - runcmd qw(git deborig), "$upstreamc"; + if (defined $upstreamc) { + $upstreamc eq git_rev_parse "refs/tags/$upstreamt" or die; + runcmd qw(git deborig), "$upstreamc"; + } my @dgitcmd; push @dgitcmd, @dgit;