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>
CentOS 7 has offically deprecated mod_python in favor of mod_wsgi and
the package is not available anymore. This change add a note on the
module about the offically supported way to run python applications on
CentOS 7.
Change-Id: I9bf2e0dde6575f50db6ce12abf896b5890b42419
Co-Authored-By: Danilo Ramalho <dramalho@thoughtworks.com>
Add acceptance tests for puppet-httpd module so that once the module is
applied we check if files were created, packages were installed and
services were started.
Change-Id: I3e1430f2937bd2bc5ea789c626784af7d5d85959
Co-Authored-By: Bruno Tavares <btavare@thoughtworks.com>
Co-Authored-By: Danilo Ramalho <dramalho@thoughtworks.com>
Replace usage of httpd_mod with the httpd::mod wrapper to allow classes
to be applied as well on RedHat systems and have the httpd service
ordering fixed.
Change-Id: If790efd7b465e77c2eca7710f79e563d69ee3783
Co-Authored-By: Danilo Ramalho <dramalho@thoughtworks.com>
While writing acceptance tests for puppet-httpd we noticed that the
manifest of httpd::python is not working on Ubuntu Trusty.
The httpd::python manifest was using a non-declared
$apache::params::mod_python_package instead of
$httpd::params::mod_python_package
Change-Id: I4db9298aba7da90a017527b2fb29dcd17af28efc
Co-Authored-By: Danilo Ramalho <dramalho@thoughtworks.com>
While writing acceptance tests for puppet-httpd we noticed that the
manifest of httpd::dev was not working on Ubuntu Trusty.
That is because httpd::dev was trying to install multiple package using
the wrong syntax. Also, the one of the modules for Ubuntu was wrong and
we updated to keep applying.
Co-Authored-By: Bruno Tavares <btavare@thoughtworks.com>
Co-Authored-By: Danilo Ramalho <dramalho@thoughtworks.com>
Change-Id: Ibe1e107417b4670902f74b8c2fedc0d9d927ce9b
This allows for before => Service['httpd'] on every resource without
being explicit.
Co-Authored-By: Bruno Tavares <btavare@thoughtworks.com>
Co-Authored-By: Glauco Oliveira <gvinici@thoughtworks.com>
Change-Id: I0e991a7a63317e608cc6ef35b58dc79b518ba863
Use same target directory for zuul-cloner and
the regular git command.
Change-Id: Ia93972eb910cbff202820151a0407d36b3317dc4
Co-Authored-By: Fabien Boucher <fabien.boucher@enovance.com>
Adding this subclass to httpd configuration, to allow
modules using this manifest to setup log rotation for
apache on demand.
Please note that apache is installing a logrotate file by
default here, but naming that on same way will overwrite it,
and allow our desired log rotation.
Depends-On: I7451ecc550b50b85c55784ef598f6b45412117fc
Change-Id: I3ef60fd9386795007e5b55264cc6e91fa0b67c68
$configure_firewall defaults to true, however the related firewall
dependency is missing from the module metadata. The lower bound
used here reflects that of puppetlabs-apache v0.0.4, the upper bound is
the current release.
Change-Id: Ic628fcacf11a65786241047f58839544e3d1fc52
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
The http://ci.openstack.org/ documentation site has been deprecated,
replaced by redirects to corresponding paths within
http://docs.openstack.org/infra/ where other Project Infrastructure
documentation already resides.
Change-Id: I98d5d0f062520f423f041605de7572c8e3d73511
We want to drive version from git tag. That means the git repo doesn't hold
version number. So we'll set version to 0.0.0 in git and anyone using the repo
from git will know they are doing something funky and will have to ask git
what version they are running.
Change-Id: Iea80c34d4b87a2a4f89ee5429aa1714cee481c11
These tests don't work and we don't run them. We can return to
testing using rspec-puppet at a future time.
Change-Id: I0cdd922e329358c1921335d92c5261f001019713
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
The content of this project is Apache 2 licensed, but we should
include a standard LICENSE file just to be clear about that.
Change-Id: Iee6320b9d7e35fbe8d3b0a9794f3e485c18ef2c8
Add the rake "lint" target, and fix resulting minor errors, which were:
---
manifests/mod/python.pp - WARNING: class not documented on line 1
manifests/mod/wsgi.pp - WARNING: class not documented on line 1
manifests/vhost.pp - WARNING: variable not enclosed in {} on line 80
manifests/vhost.pp - WARNING: variable not enclosed in {} on line 82
manifests/vhost/redirect.pp - WARNING: variable not enclosed in {} on line 43
manifests/vhost/redirect.pp - WARNING: variable not enclosed in {} on line 45
---
Change-Id: I2213f314d4bf92b4ddf58dbb19a80783380a55ce
A number of tests were broken by the last few style commits when '755'
became '0755' and the tests didn't get updated. This commit fixes the
tests so that they work again.
The tests for apache::ssl were broken because the 'operatingsystem' fact
was not being set in the tests. Don't know how long that's been busted,
but in any case this commit fixes that problem as well by adding
appropriate let(:facts).