X-Git-Url: https://git.donarmstrong.com/?p=dsa-puppet.git;a=blobdiff_plain;f=3rdparty%2Fmodules%2Fapache%2Fmanifests%2Fmod%2Fstatus.pp;fp=3rdparty%2Fmodules%2Fapache%2Fmanifests%2Fmod%2Fstatus.pp;h=4c3f8d9e25d2363486d3cd6d49edad424cf99a55;hp=0000000000000000000000000000000000000000;hb=29c25a2dd54b818d590063af535221f98af7d6c8;hpb=943dd63ceab3c595cfdff25de2631d5b74f19dc9 diff --git a/3rdparty/modules/apache/manifests/mod/status.pp b/3rdparty/modules/apache/manifests/mod/status.pp new file mode 100644 index 00000000..4c3f8d9e --- /dev/null +++ b/3rdparty/modules/apache/manifests/mod/status.pp @@ -0,0 +1,46 @@ +# Class: apache::mod::status +# +# This class enables and configures Apache mod_status +# See: http://httpd.apache.org/docs/current/mod/mod_status.html +# +# Parameters: +# - $allow_from is an array of hosts, ip addresses, partial network numbers +# or networks in CIDR notation specifying what hosts can view the special +# /server-status URL. Defaults to ['127.0.0.1', '::1']. +# - $extended_status track and display extended status information. Valid +# values are 'On' or 'Off'. Defaults to 'On'. +# - $status_path is the path assigned to the Location directive which +# defines the URL to access the server status. Defaults to '/server-status'. +# +# Actions: +# - Enable and configure Apache mod_status +# +# Requires: +# - The apache class +# +# Sample Usage: +# +# # Simple usage allowing access from localhost and a private subnet +# class { 'apache::mod::status': +# $allow_from => ['127.0.0.1', '10.10.10.10/24'], +# } +# +class apache::mod::status ( + $allow_from = ['127.0.0.1','::1'], + $extended_status = 'On', + $apache_version = $::apache::apache_version, + $status_path = '/server-status', +){ + validate_array($allow_from) + validate_re(downcase($extended_status), '^(on|off)$', "${extended_status} is not supported for extended_status. Allowed values are 'On' and 'Off'.") + ::apache::mod { 'status': } + # Template uses $allow_from, $extended_status, $apache_version, $status_path + file { 'status.conf': + ensure => file, + path => "${::apache::mod_dir}/status.conf", + content => template('apache/mod/status.conf.erb'), + require => Exec["mkdir ${::apache::mod_dir}"], + before => File[$::apache::mod_dir], + notify => Class['apache::service'], + } +}