12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- # Class: nginx::package
- #
- # This module manages NGINX package installation
- #
- # Parameters:
- #
- # There are no default parameters for this class.
- #
- # Actions:
- #
- # Requires:
- #
- # Sample Usage:
- #
- # This class file is not called directly
- class nginx::package(
- $package_name = 'nginx',
- $package_source = 'nginx',
- $package_ensure = 'present',
- $manage_repo = true,
- ) {
- anchor { 'nginx::package::begin': }
- anchor { 'nginx::package::end': }
- case $::osfamily {
- 'redhat': {
- class { 'nginx::package::redhat':
- manage_repo => $manage_repo,
- package_ensure => $package_ensure,
- package_name => $package_name,
- require => Anchor['nginx::package::begin'],
- before => Anchor['nginx::package::end'],
- }
- }
- 'debian': {
- class { 'nginx::package::debian':
- package_name => $package_name,
- package_source => $package_source,
- package_ensure => $package_ensure,
- manage_repo => $manage_repo,
- require => Anchor['nginx::package::begin'],
- before => Anchor['nginx::package::end'],
- }
- }
- 'suse': {
- class { 'nginx::package::suse':
- require => Anchor['nginx::package::begin'],
- before => Anchor['nginx::package::end'],
- }
- }
- 'archlinux': {
- class { 'nginx::package::archlinux':
- require => Anchor['nginx::package::begin'],
- before => Anchor['nginx::package::end'],
- }
- }
- 'Solaris': {
- class { 'nginx::package::solaris':
- package_name => $package_name,
- package_source => $package_source,
- package_ensure => $package_ensure,
- require => Anchor['nginx::package::begin'],
- before => Anchor['nginx::package::end'],
- }
- }
- default: {
- case $::operatingsystem {
- 'amazon': {
- # Amazon was added to osfamily RedHat in 1.7.2
- # https://github.com/puppetlabs/facter/commit/c12d3b6c557df695a7b2b009da099f6a93c7bd31#lib/facter/osfamily.rb
- warning("Module ${module_name} support for ${::operatingsystem} with facter < 1.7.2 is deprecated")
- warning("Please upgrade from facter ${::facterversion} to >= 1.7.2")
- class { 'nginx::package::redhat':
- require => Anchor['nginx::package::begin'],
- before => Anchor['nginx::package::end'],
- }
- }
- default: {
- fail("Module ${module_name} is not supported on ${::operatingsystem}")
- }
- }
- }
- }
- }
|