NAME

Ixchel::Actions::perl - Handles making sure desired Perl modules are installed as specified by the config.

VERSION

Version 0.4.0

CLI SYNOPSIS

ixchel -a perl [--notest] [--reinstall] [--force]

CODE SYNOPSIS

my $results=$ixchel->action(action=>'perl', opts=>{}'});

if ($results->{ok}) {
    print $results->{status_text};
}else{
    die('Action errored... '.joined("\n", @{$results->{errors}}));
}

DESCRIPTION

The modules to be installed are determined by the config.

- .perl.cpanm :: Always install cpanm even if all modules could
        be installed via packages.
    - Default :: 0

- .perl.modules :: Array of modules to install.
    - Default :: []

- .perl.pkgs_always_try :: If .perl.modules should first try to be installed
      via packages.
    - Default :: 1

- .perl.pkgs_optional :: An array of modules that can optionally be installed via
      via packages. This is only meaningful if .perl.pkgs_always_try is set to 0,
      meaning .perl.modules is only being handled via cpanm.
    - Default :: []

- .perl.pkgs_require :: An array of modules that must be install via packages and
      will not later be tried via cpanm.
    - Default :: []

FLAGS

--notest

When calling cpanm, add --notest to it.

--reinstall

When calling cpanm, add --reinstall to it.

--force

When calling cpanm, add --force to it.

RESULT HASH REF

.errors :: A array of errors encountered.
.status_text :: A string description of what was done and the results.
.ok :: Set to zero if any of the above errored.