When running on CentOS, two problems appeared:
- when using proxy, apache was failing with an error 500,
fixed by enabling httpd_can_network_connect
- when trying to access files under a vhost, apache was
failing with Access denied because search permissions
are missing. So running chcon on the docroot for each vhost
Change-Id: I87c4c0e51f05eab8f5c8e094c2c54504e60b97af
Order and intendation of those parameters are changed
to follow Puppet Style Guide recommendation [0].
Moreover, it will allow to an user to find much faster
a variable in a list of variables.
[0]. https://docs.puppetlabs.com/guides/style_guide.html
Change-Id: If2443cbc57671784cfcb31bbe0ada0c09f78c996
We recently introduced on bf7ce40e2f the
use of mod_version. The module is enabled and installed by default on
Ubuntu Trusty 14.04, CentOS 6 and CentOS 7.
On Ubuntu Precise 12.04 the module comes installed, but not enabled by
default. This is needed to maintain compatibility with downstream pool
of servers.
Change-Id: I01a8a12b959e3cbecd0355562db0393404ae54bf
Co-Authored-By: Danilo Ramalho <dramalho@thoughtworks.com>
While working on puppet-lodgeit acceptance tests we found that the
configuration file that `httpd::mod::proxy` creates was not being picked
up by Apache because it was missing the prefix `.conf`. This transition
is required to configure httpd modules correctly on Apache >= 2.4
To prevent Apache from loading two the same configuration twice, we
remove the file without extension, so this change does not affect
running systems.
This change has fixes for `httpd::mod::proxy` and `httpd::mod::redirect`
as they have the same issue. We added tests as well to increase the
confidence on the fix.
The acceptance will be fixed on the follow-up patch, as the redirect
grants are broken for 2.4 as well.
Change-Id: I82241038d687316f91f18209fe8323c12422e2f8
Co-Authored-By: Danilo Ramalho <dramalho@thoughtworks.com>
If any locations are being excluded from reverse-proxying, we need
to be able to specify a DocumentRoot to serve up un-proxied files.
Change-Id: I1c5fe6f73b5983886578975e89c5e4148b506795
A user of httpd::vhost::proxy may wish to exclude certain URLs from
being proxied. This change allows the template to be populated with
such exclusions.
Change-Id: I55a86d3c703a667daf55cb75cf559eb23a556219
In anticipation of puppet 4, start trying to deal with puppet 4 things
that can be helpfully predicted by puppet lint plugins. Also fix errors
caught by the puppet-lint-unquoted_string-check and
puppet-lint-absolute_classname-check gems.
Change-Id: I9d74d25d2f2c95ec52a6db3bf070903240e1b933
The $httpd::vhost::proxy::servername parameter was not being used, and
the local variable $srvname was defaulting to the name of the defined
type. This patch copies the logic from httpd::vhost to conditionally
set $srvname to the $servername parameter if it is set, and default to
the old behavior if not.
Change-Id: I4936be856db1a1af279b7c3824606e2c0375e9a6
This renames the classes and defined types from apache to httpd.
With the 'httpd' module available, we can migrate usage of 'apache'
to 'httpd.' Eventually this will free the 'apache' namespace.
A native ruby type and provider is contained in this class. It is
not namespaced to the class name so it has been renamed from a2mod
to httpd_mod.
Change-Id: I056eb28a13e7ccc95f1496019bedc332c17dd458