init: pass parameters when declaring nginx::service
location: fix ensure
Merge pull request #516 from 3flex/pass-parameters-to-service-class

init: pass parameters when declaring nginx::service
Merge pull request #517 from radford/fix-location-ensure

location: fix ensure
metadata: use SPDX identifier for license info

New requirement for the Puppet Forge
metadata: bound dependencies

New requirement for the Puppet Forge.

These ranges ensure dependencies will stay on backwards compatible versions for the foreseeable future.
spec: cleanup

* Removed some tests that no longer apply and/or are redundant
* Only set OS facts when testing OS-specific behaviors. This simplifies the
  facts that must be set in the specs and saves running the same tests
  several times when the results wouldn't differ by OS anyway.
package: don't install upstream package on Amazon Linux

Upstream doesn't provide a build of Nginx for Amazon Linux.
package: install "nginx" package when OS isn't recognized

This will provide broader OS compatibility without having to manually add
support for specific OSes.
package: removed a warning for Fedora 18 and below

Those versions no longer supported by the Fedora Project.
package: Differentiate between upstream's RedHat and CentOS packages

Even if they're currently identical they may diverge in future.
package: package resource is titled "nginx"
package/debian: fail when `$package_source` is invalid
package: only set `manage_repo => true` when appropriate

i.e. upstream provides a package for it
package: refactor
package: fail on Solaris when `$package_source` not set

The comments say this must be set on that OS so the failure makes that
explicit.
package/debian: use more puppetlabs-apt features

* 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
package/debian: can install nginx mainline package
package/redhat: can install nginx mainline package
package/redhat: don't ensure the yum repo file

The file wouldn't necessarily be at that location. According to Puppet it's installed in the first matching location:
* Custom directory specified by the ‘/etc/yum.conf’ reposdir property
* ‘/etc/yum/repos.d’
* ‘/etc/yum.repos.d’
* If none of these locations match, section will be created in ‘/etc/yum.conf’