cpanm – Manages Perl library dependencies — Ansible Documentation

- AnsibleFest
- Products
- Community
- Webinars & Training
- Blog

Documentation

# cpanm – Manages Perl library dependencies

- Synopsis
- Parameters
- Notes
- Examples
- Status

## Synopsis

- Manage Perl library dependencies.

## Parameters

Parameter | Choices/Defaults | Comments
--- | --- | ---
executable path added in 2.1 |  | Override the path to the cpanm executable
from_path - |  | The local directory from where to install
installdeps boolean added in 2.0 | Choices: no ← yes | Only install dependencies
locallib path |  | Specify the install base to install modules
mirror string |  | Specifies the base URL for the CPAN mirror to use
mirror_only boolean | Choices: no ← yes | Use the mirror's index file instead of the CPAN Meta DB
name - |  | The name of the Perl library to install. You may use the "full distribution path", e.g. MIYAGAWA/Plack-0.99_05.tar.gz aliases: pkg
notest boolean | Choices: no ← yes | Do not run unit tests
system_lib boolean added in 2.0 | Choices: no ← yes | 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 '--sudo', which has nothing to do with ansible privilege escalation. aliases: use_sudo
version string added in 2.1 |  | minimum version of perl module to consider acceptable

## Notes

Note

- Please note that http://search.cpan.org/dist/App-cpanminus/bin/cpanm, cpanm must be installed on the remote host.

## Examples

    # install Dancer perl package
    - cpanm:
        name: Dancer

    # install version 0.99_05 of the Plack perl package
    - cpanm:
        name: MIYAGAWA/Plack-0.99_05.tar.gz

    # install Dancer into the specified locallib
    - cpanm:
        name: Dancer
        locallib: /srv/webapps/my_app/extlib

    # install perl dependencies from local directory
    - cpanm:
        from_path: /srv/webapps/my_app/src/

    # install Dancer perl package without running the unit tests in indicated locallib
    - cpanm:
        name: Dancer
        notest: True
        locallib: /srv/webapps/my_app/extlib

    # install Dancer perl package from a specific mirror
    - cpanm:
        name: Dancer
        mirror: 'http://cpan.cpantesters.org/'

    # install Dancer perl package into the system root path
    - cpanm:
        name: Dancer
        system_lib: yes

    # install Dancer if it's not already installed
    # OR the installed version is older than version 1.0
    - cpanm:
        name: Dancer
        version: '1.0'

## Status

- This module is not guaranteed to have a backwards compatible interface. [preview]
- This module is maintained by the Ansible Community. [community]

### Authors

- Franck Cuny (@fcuny)

Hint

If you notice any issues in this documentation you can edit this document to improve it.