Forge Home

perl

Puppet module for perl

66,229 downloads

19,169 latest version

4.1 quality score

We run a couple of automated
scans to help you access a
module's quality. Each module is
given a score based on how well
the author has formatted their
code and documentation and
modules are also checked for
malware using VirusTotal.

Please note, the information below
is for guidance only and neither of
these methods should be considered
an endorsement by Puppet.

Version information

  • 2.0.28 (latest)
  • 2.0.27
  • 2.0.25
  • 2.0.24
  • 2.0.23
  • 2.0.22
  • 2.0.21
  • 2.0.20
  • 2.0.19
  • 2.0.18
  • 2.0.17
  • 2.0.16
  • 2.0.15
  • 2.0.14
  • 2.0.13
  • 2.0.12
released May 14th 2018
This module has been deprecated by its author since Oct 29th 2019.

The reason given was: No longer maintained

The author has suggested example42-tp as its replacement.

Start using this module

Tags: perl, example42

Documentation

example42/perl — version 2.0.28 May 14th 2018

Deprecation notice

This module was designed for Puppet versions 2 and 3. It should work also on Puppet 4 but doesn't use any of its features.

The current Puppet 3 compatible codebase is no longer actively maintained by example42.

Still, Pull Requests that fix bugs or introduce backwards compatible features will be accepted.

Puppet module: perl

This is a Puppet module to manage perl and perl modules on CPAN.

Based on Example42 layouts by Alessandro Franceschi / Lab42

Official site: http://www.example42.com

Official git repository: http://github.com/example42/puppet-perl

Module development sponsored by JobRapido

Released under the terms of Apache 2 License.

This module requires the presence of Example42 Puppi module in your modulepath.

USAGE - Modules installation

  • Install a module via CPAN Minus

      include ::perl # You need the perl main class to be already evaluated         perl::module { 'Path::Class': }
    
  • Install a module via CPAN command

      include ::perl
      perl::cpan::module { 'Path::Class': }
    
  • Remove a module previously installed via CPAN Minus

      perl::module { 'Path::Class':
        ensure => absent,
      }
    
  • Install a module using the OS packages

      perl::module { 'YAML::Perl':
        use_package => true,
      }
    

Note that the prefix name of the package (perl-) is automatically added and the :: are converted to -. The actual package installed in this case is therefore: perl-YAML-Perl

  • Install a module from the given url

      perl::module { 'My::Module':
        url => 'http://repo.example42.com/perl/my-module.tgz',
      }
    
  • Install a module (via cpan) setting environment variables

      perl::module { 'Path::Class':
        exec_environment => [ "http_proxy=http://proxy.example42.com:8080" , "https_proxy=https://proxy.example42.com:8080" ],
      }
    

USAGE - Basic management

  • Install perl with default settings

      class { 'perl': }
    
  • Install a specific version of perl package

      class { 'perl':
        version => '1.0.1',
      }
    
  • Remove perl resources

      class { 'perl':
        absent => true
      }
    
  • Automatically include a custom subclass

      class { 'perl':
        my_class => 'example42::my_perl',
      }