community.general.cpanm (3.8.10) — module

Manages Perl library dependencies.

Authors: Franck Cuny (@fcuny), Alexei Znamensky (@russoz)

Install collection

Install with ansible-galaxy collection install community.general:==3.8.10


Add to requirements.yml

  collections:
    - name: community.general
      version: 3.8.10

Description

Manage Perl library dependencies using cpanminus.

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Install Dancer perl package
  community.general.cpanm:
    name: Dancer
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Install version 0.99_05 of the Plack perl package
  community.general.cpanm:
    name: MIYAGAWA/Plack-0.99_05.tar.gz
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Install Dancer into the specified locallib
  community.general.cpanm:
    name: Dancer
    locallib: /srv/webapps/my_app/extlib
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Install perl dependencies from local directory
  community.general.cpanm:
    from_path: /srv/webapps/my_app/src/
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Install Dancer perl package without running the unit tests in indicated locallib
  community.general.cpanm:
    name: Dancer
    notest: True
    locallib: /srv/webapps/my_app/extlib
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Install Dancer perl package from a specific mirror
  community.general.cpanm:
    name: Dancer
    mirror: 'http://cpan.cpantesters.org/'
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Install Dancer perl package into the system root path
  become: yes
  community.general.cpanm:
    name: Dancer
  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- name: Install Dancer if it is not already installed OR the installed version is older than version 1.0
  community.general.cpanm:
    name: Dancer
    version: '1.0'

Inputs

    
mode:
    choices:
    - compatibility
    - new
    default: compatibility
    description:
    - Controls the module behavior. See notes below for more details.
    type: str
    version_added: 3.0.0
    version_added_collection: community.general

name:
    aliases:
    - pkg
    description:
    - The Perl library to install. Valid values change according to the I(mode), see notes
      for more details.
    - Note that for installing from a local path the parameter I(from_path) should be
      used.
    type: str

mirror:
    description:
    - Specifies the base URL for the CPAN mirror to use.
    type: str

notest:
    default: false
    description:
    - Do not run unit tests.
    type: bool

version:
    description:
    - Version specification for the perl module. When I(mode) is C(new), C(cpanm) version
      operators are accepted.
    type: str

locallib:
    description:
    - Specify the install base to install modules.
    type: path

from_path:
    description:
    - The local directory or C(tar.gz) file to install from.
    type: path

executable:
    description:
    - Override the path to the cpanm executable.
    type: path

name_check:
    description:
    - When in C(new) mode, this parameter can be used to check if there is a module I(name)
      installed (at I(version), when specified).
    type: str
    version_added: 3.0.0
    version_added_collection: community.general

system_lib:
    aliases:
    - use_sudo
    default: false
    description:
    - Use this if you want to install modules to the system perl include path. You must
      be root or have "passwordless" sudo for this to work.
    - This uses the cpanm commandline option C(--sudo), which has nothing to do with ansible
      privilege escalation.
    - 'This option is not recommended for use and it will be deprecated in the future.
      If you need to escalate privileges please consider using any of the multiple mechanisms
      available in Ansible.

      '
    type: bool

installdeps:
    default: false
    description:
    - Only install dependencies.
    type: bool

mirror_only:
    default: false
    description:
    - Use the mirror's index file instead of the CPAN Meta DB.
    type: bool