chiark
/
gitweb
/
~ianmdlvl
/
dgit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
For non-Debian distros, debiantag() uses distro name a la DEP-14.
[dgit.git]
/
infra
/
dgit-repos-server
diff --git
a/infra/dgit-repos-server
b/infra/dgit-repos-server
index a6f57be64311ba3fea2d84462404b4fd2c16e29b..ae25aaa3bc1c7579fdc4ffcd302b4acf281ebda5 100755
(executable)
--- a/
infra/dgit-repos-server
+++ b/
infra/dgit-repos-server
@@
-62,7
+62,7
@@
$SIG{__WARN__} = sub { die $_[0]; };
# as a result of this the stunt pre-receive hook runs; it does this:
# + understand what refs we are allegedly updating and
# check some correspondences:
# as a result of this the stunt pre-receive hook runs; it does this:
# + understand what refs we are allegedly updating and
# check some correspondences:
-# * we are updating only refs/tags/
debian
/* and refs/dgit/*
+# * we are updating only refs/tags/
DISTRO
/* and refs/dgit/*
# * and only one of each
# * and the tag does not already exist
# and
# * and only one of each
# * and the tag does not already exist
# and
@@
-323,7
+323,7
@@
sub movetogarbage () {
ensuredir "$dgitrepos/_removed-tags";
open PREVIOUS, ">>", removedtagsfile or die removedtagsfile." $!";
ensuredir "$dgitrepos/_removed-tags";
open PREVIOUS, ">>", removedtagsfile or die removedtagsfile." $!";
- git_for_each_ref('refs/tags/'.debiantag('*'), sub {
+ git_for_each_ref('refs/tags/'.debiantag('*'
,$distro
), sub {
my ($objid,$objtype,$fullrefname,$reftail) = @_;
print PREVIOUS "\n$objid $reftail .\n" or die $!;
}, $real);
my ($objid,$objtype,$fullrefname,$reftail) = @_;
print PREVIOUS "\n$objid $reftail .\n" or die $!;
}, $real);
@@
-458,7
+458,7
@@
sub readupdates () {
printdebug " upd.| $_\n";
m/^(\S+) (\S+) (\S+)$/ or die "$_ ?";
my ($old, $sha1, $refname) = ($1, $2, $3);
printdebug " upd.| $_\n";
m/^(\S+) (\S+) (\S+)$/ or die "$_ ?";
my ($old, $sha1, $refname) = ($1, $2, $3);
- if ($refname =~ m{^refs/tags/(?=
debian
/)}) {
+ if ($refname =~ m{^refs/tags/(?=
$distro
/)}) {
reject "pushing multiple tags!" if defined $tagname;
$tagname = $'; #';
$tagval = $sha1;
reject "pushing multiple tags!" if defined $tagname;
$tagname = $'; #';
$tagval = $sha1;
@@
-773,11
+773,9
@@
sub checks () {
tagh1('object') eq $commit or reject "tag refers to wrong commit";
tagh1('tag') eq $tagname or reject "tag name in tag is wrong";
tagh1('object') eq $commit or reject "tag refers to wrong commit";
tagh1('tag') eq $tagname or reject "tag name in tag is wrong";
- my $v = $version;
- $v =~ y/~:/_%/;
-
- printdebug "translated version $v\n";
- $tagname eq "debian/$v" or die;
+ my $expecttagname = debiantag $version, $distro;
+ printdebug "expected tag $expecttagname\n";
+ $tagname eq $expecttagname or die;
lockrealtree();
lockrealtree();