[carton] 204/472: Simplify the bundle logic
Lucas Kanashiro
kanashiro-guest at moszumanska.debian.org
Fri Jul 24 00:38:47 UTC 2015
This is an automated email from the git hooks/post-receive script.
kanashiro-guest pushed a commit to branch master
in repository carton.
commit f8eaf77bc4dd4e54a56ec51c89aac561319af065
Author: Tatsuhiko Miyagawa <miyagawa at bulknews.net>
Date: Thu May 30 17:14:11 2013 +0900
Simplify the bundle logic
---
lib/Carton.pm | 18 ++++++++++++------
lib/Carton/CLI.pm | 13 +++++++------
2 files changed, 19 insertions(+), 12 deletions(-)
diff --git a/lib/Carton.pm b/lib/Carton.pm
index e0fd148..e7a4afa 100644
--- a/lib/Carton.pm
+++ b/lib/Carton.pm
@@ -32,9 +32,16 @@ sub configure {
%{$self} = (%$self, %args);
}
-sub lock { $_[0]->{lock} }
+sub use_local_mirror {
+ my $self = shift;
+ $self->{mirror} = $self->local_cache;
+}
+
+sub local_cache {
+ File::Spec->rel2abs("$_[0]->{path}/cache");
+}
-sub local_mirror { File::Spec->rel2abs("$_[0]->{path}/cache") }
+sub lock { $_[0]->{lock} }
sub list_dependencies {
my $self = shift;
@@ -52,9 +59,8 @@ sub list_dependencies {
return map "$_~$hash->{$_}", grep { $_ ne 'perl' } keys %$hash;
}
-
sub download_from_cpanfile {
- my($self, $cpanfile, $local_mirror) = @_;
+ my($self, $cpanfile) = @_;
my @modules = $self->list_dependencies;
@@ -62,7 +68,7 @@ sub download_from_cpanfile {
$self->build_mirror_file($index, $self->{mirror_file});
my $mirror = $self->{mirror} || $DefaultMirror;
-
+ my $local_cache = $self->local_cache; # because $self->{path} is localized
local $self->{path} = File::Temp::tempdir(CLEANUP => 1); # ignore installed
$self->run_cpanm(
@@ -72,7 +78,7 @@ sub download_from_cpanfile {
"--no-skip-satisfied",
( $mirror ne $DefaultMirror ? "--mirror-only" : () ),
"--scandeps",
- "--save-dists", $local_mirror,
+ "--save-dists", $local_cache,
@modules,
);
}
diff --git a/lib/Carton/CLI.pm b/lib/Carton/CLI.pm
index 3950f51..2112f62 100644
--- a/lib/Carton/CLI.pm
+++ b/lib/Carton/CLI.pm
@@ -136,7 +136,6 @@ sub cmd_bundle {
$self->parse_options(\@args, "p|path=s" => sub { $self->carton->{path} = $_[1] });
my $lock = $self->find_lock;
- my $local_mirror = $self->carton->local_mirror;
$self->carton->configure(
lock => $lock,
@@ -147,12 +146,12 @@ sub cmd_bundle {
if ($lock) {
$self->print("Bundling modules using $cpanfile\n");
- $self->carton->download_from_cpanfile($cpanfile, $local_mirror);
+ $self->carton->download_from_cpanfile($cpanfile);
} else {
$self->error("Can't locate carton.lock file. Run carton install first\n");
}
- $self->printf("Complete! Modules were bundled into %s\n", $local_mirror, SUCCESS);
+ $self->printf("Complete! Modules were bundled into %s\n", $self->carton->local_cache, SUCCESS);
}
sub cmd_install {
@@ -166,14 +165,16 @@ sub cmd_install {
);
my $lock = $self->find_lock;
- my $local_mirror = $self->carton->local_mirror;
$self->carton->configure(
lock => $lock,
- mirror_file => $self->mirror_file, # $lock object?
- ( $self->{use_local_mirror} && -d $local_mirror ? (mirror => $local_mirror) : () ),
+ mirror_file => $self->mirror_file,
);
+ if ($self->{use_local_mirror}) {
+ $self->carton->use_local_mirror;
+ }
+
my $cpanfile = $self->find_cpanfile;
if ($self->{deployment}) {
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-perl/packages/carton.git
More information about the Pkg-perl-cvs-commits
mailing list