Name: puppet-perl
Owner: Example42
Description: Puppet module to manage Perl and CPAN modules
Created: 2013-03-13 14:39:30.0
Updated: 2016-01-31 10:48:32.0
Pushed: 2017-03-29 20:41:58.0
Homepage: null
Size: 52
Language: Puppet
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
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.
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.
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" ],
}
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',
}