X-Git-Url: http://www.git.stargrave.org/?a=blobdiff_plain;f=script%2Fpublic-inbox-clone;h=54059d036f8675cb89636a93e0440c9b84b87c86;hb=HEAD;hp=3d980c97da779a3ca2d69489d48ebc357fbd9595;hpb=3164ce21aeb7c6ca10638d1c1d14e6f58d5b9180;p=public-inbox.git diff --git a/script/public-inbox-clone b/script/public-inbox-clone index 3d980c97..598979bc 100755 --- a/script/public-inbox-clone +++ b/script/public-inbox-clone @@ -2,8 +2,7 @@ # Copyright (C) all contributors # License: AGPL-3.0+ # Wrapper to git clone remote public-inboxes -use strict; -use v5.10.1; +use v5.12; use Getopt::Long qw(:config gnu_getopt no_ignore_case auto_abbrev); my $opt = {}; my $help = <{help}) { print $help; exit }; require PublicInbox::Admin; # loads Config @@ -37,12 +42,10 @@ defined($dst) or ($dst) = ($url =~ m!/([^/]+)/?\z!); index($dst, "\n") >= 0 and die "`\\n' not allowed in `$dst'"; # n.b. this is still a truckload of code... -require URI; +require File::Spec; require PublicInbox::LEI; require PublicInbox::LeiExternal; require PublicInbox::LeiMirror; -require PublicInbox::LeiCurl; -require PublicInbox::Lock; $url = PublicInbox::LeiExternal::ext_canonicalize($url); my $lei = bless { @@ -54,11 +57,10 @@ open $lei->{3}, '.' or die "open . $!"; my $mrr = bless { lei => $lei, src => $url, - dst => $dst, + dst => File::Spec->canonpath($dst), }, 'PublicInbox::LeiMirror'; $? = 0; -$mrr->{dry_run} = 1 if $lei->{opt}->{'dry-run'}; $mrr->do_mirror; -$mrr->can('_wq_done_wait')->([$mrr, $lei], $$); +$mrr->can('_wq_done_wait')->($$, $mrr, $lei); exit(($lei->{child_error} // 0) >> 8);