# dgit-repos-server
#
# usages:
-# .../dgit-repos-server SUITES KEYRING-AUTH-SPEC DGIT-REPOS-DIR --ssh
+# .../dgit-repos-server DISTRO SUITES KEYRING-AUTH-SPEC DGIT-REPOS-DIR --ssh
# internal usage:
# .../dgit-repos-server --pre-receive-hook PACKAGE
#
for (;;) {
print PT or die $!;
$!=0; $_=<T>; defined or die "missing signature? $!";
+ if (m/^\[dgit ([^"].*)\]$/) { # [dgit "something"] is for future
+ $_ = $1." ";
+ for (;;) {
+ if (s/^distro\=(\S+) //) {
+ die "$1 != $distro" unless $1 eq $distro;
+ } elsif (s/^[-+.=0-9a-z]+ //) {
+ } else {
+ die "unknown dgit info in tag";
+ }
+ }
+ next;
+ }
last if m/^-----BEGIN PGP/;
}
for (;;) {
shift @ARGV;
@ARGV == 1 or die;
$package = shift @ARGV;
+ defined($distro = $ENV{'DGIT_DRS_DISTRO'}) or die;
defined($suitesfile = $ENV{'DGIT_DRS_SUITES'}) or die;
defined($workrepo = $ENV{'DGIT_DRS_WORK'}) or die;
defined($destrepo = $ENV{'DGIT_DRS_DEST'}) or die;
exit 0;
}
+ $ENV{'DGIT_DRS_DISTRO'} = argval();
$ENV{'DGIT_DRS_SUITES'} = argval();
$ENV{'DGIT_DRS_KEYRINGS'} = argval();
$dgitrepos = argval();