
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
91 lines
2.3 KiB
Puppet
91 lines
2.3 KiB
Puppet
# Definition: apache::vhost
|
|
#
|
|
# This class installs Apache Virtual Hosts
|
|
#
|
|
# Parameters:
|
|
# - The $port to configure the host on
|
|
# - The $docroot provides the DocumentationRoot variable
|
|
# - The $ssl option is set true or false to enable SSL for this Virtual Host
|
|
# - The $configure_firewall option is set to true or false to specify if
|
|
# a firewall should be configured.
|
|
# - The $template option specifies whether to use the default template or
|
|
# override
|
|
# - The $priority of the site
|
|
# - The $serveraliases of the site
|
|
# - The $options for the given vhost
|
|
# - The $vhost_name for name based virtualhosting, defaulting to *
|
|
#
|
|
# Actions:
|
|
# - Install Apache Virtual Hosts
|
|
#
|
|
# Requires:
|
|
# - The apache class
|
|
#
|
|
# Sample Usage:
|
|
# apache::vhost { 'site.name.fqdn':
|
|
# priority => '20',
|
|
# port => '80',
|
|
# docroot => '/path/to/docroot',
|
|
# }
|
|
#
|
|
define apache::vhost(
|
|
$port,
|
|
$docroot,
|
|
$configure_firewall = true,
|
|
$ssl = $apache::params::ssl,
|
|
$template = $apache::params::template,
|
|
$priority = $apache::params::priority,
|
|
$servername = $apache::params::servername,
|
|
$serveraliases = $apache::params::serveraliases,
|
|
$auth = $apache::params::auth,
|
|
$redirect_ssl = $apache::params::redirect_ssl,
|
|
$options = $apache::params::options,
|
|
$apache_name = $apache::params::apache_name,
|
|
$vhost_name = $apache::params::vhost_name
|
|
) {
|
|
|
|
include apache
|
|
|
|
if $servername == '' {
|
|
$srvname = $name
|
|
} else {
|
|
$srvname = $servername
|
|
}
|
|
|
|
if $ssl == true {
|
|
include apache::ssl
|
|
}
|
|
|
|
# Since the template will use auth, redirect to https requires mod_rewrite
|
|
if $redirect_ssl == true {
|
|
case $::operatingsystem {
|
|
'debian','ubuntu': {
|
|
A2mod <| title == 'rewrite' |>
|
|
}
|
|
default: { }
|
|
}
|
|
}
|
|
|
|
file { "${priority}-${name}.conf":
|
|
path => "${apache::params::vdir}/${priority}-${name}.conf",
|
|
content => template($template),
|
|
owner => 'root',
|
|
group => 'root',
|
|
mode => '0755',
|
|
require => Package['httpd'],
|
|
notify => Service['httpd'],
|
|
}
|
|
|
|
if $configure_firewall {
|
|
if ! defined(Firewall["0100-INPUT ACCEPT ${port}"]) {
|
|
@firewall {
|
|
"0100-INPUT ACCEPT ${port}":
|
|
action => 'accept',
|
|
dport => '$port',
|
|
proto => 'tcp'
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|