8a1981f640
There were some bugs in the existing $::operatingsystem based approach.
* amazon was it's own package set when it's properly part of $::osfamily ==
'redhat' as of facter >= 1.7.2
* gentoo was improperly part of the amazon package set; this patch removes
support for gentoo but it was broken anyways
modifications to nginx:📦:redhat were made as well
* it no longer tries to setup the nginx.org yumrepo for fedora as no packages
for fedora are currently provided
* amazon release numbers are inconsistent with EL. Unknown
$::lsbmajdistrelease values are now mapped to 6 so it's no longer nessicary to
test for $::lsbmajdistrelease being undefined. This logic will need to be
reworked after RHEL7.x is released.
* the url to the nginx repo was including $::operatingsystem in it but
nginx.org only has package dirs for 'rhel' & 'centos' which are presently
identical; the usage of the 'rhel' dir has been hardcoded. This fixes broken
yum repo setup for all $::osfamily == 'redhat' platforms other than redhat and
centos.
57 lines
1.6 KiB
Puppet
57 lines
1.6 KiB
Puppet
# 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 {
|
|
anchor { 'nginx::package::begin': }
|
|
anchor { 'nginx::package::end': }
|
|
|
|
case $::osfamily {
|
|
'redhat': {
|
|
class { 'nginx::package::redhat':
|
|
require => Anchor['nginx::package::begin'],
|
|
before => Anchor['nginx::package::end'],
|
|
}
|
|
}
|
|
'debian': {
|
|
class { 'nginx::package::debian':
|
|
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'],
|
|
}
|
|
}
|
|
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}")
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|