Cache-Elasticache-Memcache

 view release on metacpan or  search on metacpan

maint/carton_install_with_configuredeps.pl  view on Meta::CPAN

5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
 
my $install_path = '';
my $cpanfile_path = '';
my @without = ();
my $mirror = Carton::Mirror->new($ENV{PERL_CARTON_MIRROR} || $Carton::Mirror::DefaultMirror);
 
my $env = Carton::Environment->build($cpanfile_path, $install_path);
 
my $builder = Carton::Builder->new(
    cascade => 1,
    mirror  => $mirror,
    without => \@without,
    cpanfile => $env->cpanfile,
);
 
$env->cpanfile->load;
 
#install configuredeps
my $reqs = CPAN::Meta::Requirements->new;
$reqs->add_requirements($env->cpanfile->prereqs->requirements_for('configure', 'requires'));
$reqs->clear_requirement('perl');
foreach my $requirement (keys %{$reqs->{requirements}}) {
    print "Installing configure dependency:- $requirement\n";
    $builder->run_cpanm(
        '-L', $env->install_path,
        (map { ("--mirror", $_->url) } $builder->effective_mirrors),
        ( $builder->index ? ("--mirror-index", $builder->index) : () ),
        ( $builder->cascade ? "--cascade-search" : () ),
        ( $builder->custom_mirror ? "--mirror-only" : () ),
        "--save-dists", $env->install_path."/cache",
        $builder->groups,
        $requirement,
    );
}
 
$builder->install($env->install_path);
$env->snapshot->find_installs($env->install_path, $env->cpanfile->requirements);
$env->snapshot->save;



( run in 0.344 second using v1.01-cache-2.11-cpan-87723dcf8b7 )