chiark / gitweb /
archive query methods: Clarify organisation (code motion, nfc)
[dgit.git] / dgit
diff --git a/dgit b/dgit
index 9d40ceef5db54a2ae53c2b32ae4c5c0bd2a5110f..2e67eb5be574b26115d412101be1956c314d9bfb 100755 (executable)
--- a/dgit
+++ b/dgit
@@ -52,6 +52,7 @@ our $new_package = 0;
 our $ignoredirty = 0;
 our $rmonerror = 1;
 our @deliberatelies;
+our %supersedes;
 our $existing_package = 'dpkg';
 our $cleanmode = 'dpkg-source';
 our $changes_since_version;
@@ -772,6 +773,25 @@ sub must_getcwd () {
     return $d;
 }
 
+our %rmad;
+
+sub archive_query ($) {
+    my ($method) = @_;
+    my $query = access_cfg('archive-query','RETURN-UNDEF');
+    $query =~ s/^(\w+):// or badcfg "invalid archive-query method \`$query'";
+    my $proto = $1;
+    my $data = $'; #';
+    { no strict qw(refs); &{"${method}_${proto}"}($proto,$data); }
+}
+
+sub pool_dsc_subpath ($$) {
+    my ($vsn,$component) = @_; # $package is implict arg
+    my $prefix = substr($package, 0, $package =~ m/^l/ ? 4 : 1);
+    return "/pool/$component/$prefix/$package/".dscfn($vsn);
+}
+
+#---------- `ftpmaster-api' archive query method (nascent) ----------
+
 sub archive_api_query_cmd ($) {
     my ($subpath) = @_;
     my @cmd = qw(curl -sS);
@@ -793,22 +813,7 @@ sub archive_api_query_cmd ($) {
     return @cmd;
 }
 
-our %rmad;
-
-sub archive_query ($) {
-    my ($method) = @_;
-    my $query = access_cfg('archive-query','RETURN-UNDEF');
-    $query =~ s/^(\w+):// or badcfg "invalid archive-query method \`$query'";
-    my $proto = $1;
-    my $data = $'; #';
-    { no strict qw(refs); &{"${method}_${proto}"}($proto,$data); }
-}
-
-sub pool_dsc_subpath ($$) {
-    my ($vsn,$component) = @_; # $package is implict arg
-    my $prefix = substr($package, 0, $package =~ m/^l/ ? 4 : 1);
-    return "/pool/$component/$prefix/$package/".dscfn($vsn);
-}
+#---------- `madison' archive query method ----------
 
 sub archive_query_madison {
     return map { [ @$_[0..1] ] } madison_get_parse(@_);
@@ -856,6 +861,8 @@ sub canonicalise_suite_madison {
     return $r[0][2];
 }
 
+#---------- `sshpsql' archive query method ----------
+
 sub sshpsql ($$$) {
     my ($data,$runeinfo,$sql) = @_;
     if (!length $data) {
@@ -929,6 +936,8 @@ END
     return $rows[0];
 }
 
+#---------- `dummycat' archive query method ----------
+
 sub canonicalise_suite_dummycat ($$) {
     my ($proto,$data) = @_;
     my $dpath = "$data/suite.$isuite";
@@ -968,6 +977,8 @@ sub archive_query_dummycat ($$) {
     return sort { -version_compare($a->[0],$b->[0]); } @rows;
 }
 
+#---------- archive query entrypoints and rest of program ----------
+
 sub canonicalise_suite () {
     return if defined $csuite;
     fail "cannot operate on $isuite suite" if $isuite eq 'UNRELEASED';
@@ -1562,6 +1573,7 @@ sub push_mktag ($$$$$$$) {
     # to control the "tagger" (b) we can do remote signing
     my $authline = clogp_authline $clogp;
     my $delibs = join(" ", "",@deliberatelies);
+    my $declaredistro = access_basedistro();
     open TO, '>', $tfn->('.tmp') or die $!;
     print TO <<END or die $!;
 object $head
@@ -1570,7 +1582,7 @@ tag $tag
 tagger $authline
 
 $package release $cversion for $clogsuite ($csuite) [dgit]
-[dgit distro=$distro$delibs]
+[dgit distro=$declaredistro$delibs]
 END
     foreach my $ref (sort keys %supersedes) {
                    print TO <<END or die $!;