The first issue was that Exec[apt_get_update_for_nginx] resource is only
needed if $manage_repo == true, so it was put inside the corresponding
if block.
But even inside the if-block, Exec[apt_get_update_for_nginx] could fail
when $package_source has an invalid value and no Apt::Source[nginx] is
defined, so the respective Apt::Source[nginx], if defined, will now notify
Exec[apt_get_update_for_nginx] and Exec[apt_get_update_for_nginx] will
no longer subscribe to Apt::Source[nginx].
It would probably make sense to add a call to fail() in the default case
of $package_source.
This is just the first step of fixing up the repo stuff and allowing
the module to take in a package_name, but this helps replace the
execs{} with puppetlabs-apt.
Tested on: Debian 7, Ubuntu 12.04.
trickle through to the package classes. I've avoided making them
into paramaterized classes and we just refer directly back to the main
nginx namespace to get the variable. Makes for a cleaner looking
module!
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.
It is bad practice to use 644 on a private key so we
have migrated the key mode to 0400. The cert is already
avaliable publicly through nginx so we have allowed it
0444.
Nothing should need to write either the cert of the key
after puppet has run, so we have denied any writing.
I get the above error message. It is easily fixed by removing the `ensure` inside `ensure_resource`, since `ensure_resource` should already be setting `$ensure` to `file`.
* Options location_cfg_append and location_cfg_prepend added to fastcgi template
* Option www_root is optional now
* Options logging fixed in http template
* Auth_basic fixed in SSL vhost header
If $ipv6_enable is true ypu sshould warn the user only if the machine _doesn't have_ an ip address.
At the moment the warning is raised when ipv6 is configured properly