puppetlabs-apt 2.0.0 drops support in apt::source for key_source and required_packages.
* key_source will default to keyserver.ubuntu.com which carries both keys, so it
doesn't need to be explicitly defined
* required_packages can be emulated with the package resource
Since commit 531ef9 of puppetlabs-apt, the gpg key (apt::key) is
checked, and should use the long format.
This value is validated with a regex enforcing it to only contain valid
hexadecimal characters, be precisely 8 or 16 hexadecimal characters long
and optionally prefixed with 0x for key IDs, or 40 hexadecimal
characters long for key fingerprints.
f588f2651a
According to Passenger docs:
"You should install nginx-extras even if you have already installed an Nginx package from the
official Debian/Ubuntu repository. This is because the Nginx binary that our packages supply
is compiled with the Passenger module."
* puppetlabs-apt does an APT update after every apt::source is added, so no
need to do it again in this module.
* Use the 'required_packages' feature of apt::source instead of
ensure_resources
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!
This commit puts the majority of the code provided by this module into
compliance with the published style guide. Also updated Modulefile to
have more sane pre-release values.