From: Eric Wong Date: Fri, 11 May 2018 19:20:16 +0000 (+0000) Subject: convert+compact: fix when running without ~/.public-inbox/config X-Git-Tag: v1.2.0~509 X-Git-Url: http://www.git.stargrave.org/?p=public-inbox.git;a=commitdiff_plain;h=9814b8f8f9a2231004f4bf2760eea69cb28b9fcc convert+compact: fix when running without ~/.public-inbox/config Some users may not have any public-inboxes configured, especially in tests. --- diff --git a/script/public-inbox-compact b/script/public-inbox-compact index 5f18497e..d22e4032 100755 --- a/script/public-inbox-compact +++ b/script/public-inbox-compact @@ -13,12 +13,14 @@ use File::Path qw(remove_tree); use PublicInbox::Spawn qw(spawn); my $usage = "Usage: public-inbox-compact REPO_DIR\n"; my $dir = shift or die $usage; -my $config = PublicInbox::Config->new; +my $config = eval { PublicInbox::Config->new }; my $ibx; $dir = abs_path($dir); -$config->each_inbox(sub { - $ibx = $_[0] if abs_path($_[0]->{mainrepo}) eq $dir -}); +if ($config) { + $config->each_inbox(sub { + $ibx = $_[0] if abs_path($_[0]->{mainrepo}) eq $dir + }); +} unless ($ibx) { warn "W: $dir not configured in ". PublicInbox::Config::default_file() . "\n"; diff --git a/script/public-inbox-convert b/script/public-inbox-convert index 2979a0c8..bd8fb985 100755 --- a/script/public-inbox-convert +++ b/script/public-inbox-convert @@ -25,12 +25,14 @@ my $old_dir = shift or die $usage; my $new_dir = shift or die $usage; die "$new_dir exists\n" if -d $new_dir; die "$old_dir not a directory\n" unless -d $old_dir; -my $config = PublicInbox::Config->new; +my $config = eval { PublicInbox::Config->new }; $old_dir = abs_path($old_dir); my $old; -$config->each_inbox(sub { - $old = $_[0] if abs_path($_[0]->{mainrepo}) eq $old_dir; -}); +if ($config) { + $config->each_inbox(sub { + $old = $_[0] if abs_path($_[0]->{mainrepo}) eq $old_dir; + }); +} unless ($old) { warn "W: $old_dir not configured in " . PublicInbox::Config::default_file() . "\n"; diff --git a/t/convert-compact.t b/t/convert-compact.t index ced45415..e9232003 100644 --- a/t/convert-compact.t +++ b/t/convert-compact.t @@ -54,6 +54,7 @@ foreach (@xdir) { } local $ENV{PATH} = "blib/script:$ENV{PATH}"; +local $ENV{PI_CONFIG} = '/dev/null'; open my $err, '>>', "$tmpdir/err.log" or die "open: err.log $!\n"; open my $out, '>>', "$tmpdir/out.log" or die "open: out.log $!\n"; my $rdr = { 1 => fileno($out), 2 => fileno($err) };