Konstantin Ryabitsev <[email protected]> wrote:
> t/v2mirror.t ................. 71/? W:
> /tmp/pi-v2mirror-39373-Dl1N/m/git/3.git missing remote.origin.url
> fatal: not a git repository: '/tmp/pi-v2mirror-39373-Dl1N/m/git/3.git'
> git --git-dir=/tmp/pi-v2mirror-39373-Dl1N/m/git/3.git fetch -q failed
> Bailout called. Further testing stopped: -fetch failed
> FAILED--Further testing stopped: -fetch failed
> make: *** [test_dynamic] Error 255
>
> FYI, this is git 2.31.1.
I'm not seeing this at all with 2.31.1, 2.20, 2.33...
I wonder if there's a permissions problem or some latent GIT_*
var in env...
Are you testing as root? I think that would be broken, yes.
The partial fetching would need some work to support working as
root.
> I'll be happy to help troubleshoot things as necessary.
Otherwise, dumping the config and some more info could help...
diff --git a/lib/PublicInbox/Fetch.pm b/lib/PublicInbox/Fetch.pm
index 7881b402e3f6..a5e4c43c039b 100644
--- a/lib/PublicInbox/Fetch.pm
+++ b/lib/PublicInbox/Fetch.pm
@@ -122,6 +122,10 @@ sub do_fetch { # main entry point
$epoch = $nr;
} else {
warn "W: $edir missing remote.origin.url\n";
+ my $pid = spawn([qw(git config -l)], undef,
+ { 1 => $lei->{2}, 2 => $lei->{2} });
+ waitpid($pid, 0);
+ $lei->child_error($?) if $?;
}
}
@epochs = grep { !$skip->{$_} } @epochs if $skip;
diff --git a/t/v2mirror.t b/t/v2mirror.t
index 63d17ebfebba..e3936919306b 100644
--- a/t/v2mirror.t
+++ b/t/v2mirror.t
@@ -5,6 +5,7 @@ use v5.10.1;
use PublicInbox::TestCommon;
use File::Path qw(remove_tree make_path);
use Cwd qw(abs_path);
+use Carp ();
use PublicInbox::Spawn qw(which);
require_git(2.6);
require_cmd('curl');
@@ -102,7 +103,9 @@ my @new_epochs;
my $fetch_each_epoch = sub {
my %before = map { $_ => 1 } glob("$tmpdir/m/git/*");
run_script([qw(-fetch --exit-code -q)], undef, {-C => "$tmpdir/m"}) or
- xbail '-fetch fail';
+ xbail('-fetch fail ',
+ [ xqx([which('find'), "$tmpdir/m", qw(-type f -ls) ]) ],
+ Carp::longmess());
is($?, 0, '--exit-code 0 after fetch updated');
my @after = grep { !$before{$_} } glob("$tmpdir/m/git/*");
push @new_epochs, @after;
--
unsubscribe: one-click, see List-Unsubscribe header
archive: https://public-inbox.org/meta/