From 29c85048380d8b7a9cbfd632610740153fccc555 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Sat, 23 Oct 2021 20:19:39 +0000 Subject: www: respect coderepo.*.url during cgit init This is necessary for showing "found $OID in $CODEREPO_URL" in solver-generated pages ($INBOX_URL/$OID/s/). --- lib/PublicInbox/Cgit.pm | 5 +---- lib/PublicInbox/Config.pm | 7 +++---- 2 files changed, 4 insertions(+), 8 deletions(-) diff --git a/lib/PublicInbox/Cgit.pm b/lib/PublicInbox/Cgit.pm index 8ad07be2..cc729aa2 100644 --- a/lib/PublicInbox/Cgit.pm +++ b/lib/PublicInbox/Cgit.pm @@ -63,15 +63,12 @@ sub new { pi_cfg => $pi_cfg, }, $class; - # fill in -code_repos mapped to inboxes - $pi_cfg->each_inbox($pi_cfg->can('repo_objs')); - # some cgit repos may not be mapped to inboxes, so ensure those exist: my $code_repos = $pi_cfg->{-code_repos}; foreach my $k (keys %$pi_cfg) { $k =~ /\Acoderepo\.(.+)\.dir\z/ or next; my $dir = $pi_cfg->{$k}; - $code_repos->{$1} ||= PublicInbox::Git->new($dir); + $code_repos->{$1} ||= $pi_cfg->fill_code_repo($1); } while (my ($nick, $repo) = each %$code_repos) { $self->{"\0$nick"} = $repo; diff --git a/lib/PublicInbox/Config.pm b/lib/PublicInbox/Config.pm index f2e5d5f0..41117ac5 100644 --- a/lib/PublicInbox/Config.pm +++ b/lib/PublicInbox/Config.pm @@ -323,9 +323,8 @@ sub parse_cgitrc { cgit_repo_merge($self, $repo->{dir}, $repo) if $repo; } -# parse a code repo -# Only git is supported at the moment, but SVN and Hg are possibilities -sub _fill_code_repo { +# parse a code repo, only git is supported at the moment +sub fill_code_repo { my ($self, $nick) = @_; my $pfx = "coderepo.$nick"; my $dir = $self->{"$pfx.dir"} // do { # aka "GIT_DIR" @@ -392,7 +391,7 @@ sub repo_objs { next; } my $repo = $code_repos->{$nick} //= - _fill_code_repo($self, $nick); + fill_code_repo($self, $nick); push @repo_objs, $repo if $repo; } if (scalar @repo_objs) { -- cgit v1.2.3-24-ge0c7