28
|
1 |
class apache::mod::peruser ( |
|
2 |
$minspareprocessors = '2', |
|
3 |
$minprocessors = '2', |
|
4 |
$maxprocessors = '10', |
|
5 |
$maxclients = '150', |
|
6 |
$maxrequestsperchild = '1000', |
|
7 |
$idletimeout = '120', |
|
8 |
$expiretimeout = '120', |
|
9 |
$keepalive = 'Off', |
|
10 |
) { |
|
11 |
|
|
12 |
case $::osfamily { |
|
13 |
'freebsd' : { |
|
14 |
fail("Unsupported osfamily ${::osfamily}") |
|
15 |
} |
|
16 |
default: { |
|
17 |
if $::osfamily == 'gentoo' { |
|
18 |
::portage::makeconf { 'apache2_mpms': |
|
19 |
content => 'peruser', |
|
20 |
} |
|
21 |
} |
|
22 |
|
|
23 |
if defined(Class['apache::mod::event']) { |
|
24 |
fail('May not include both apache::mod::peruser and apache::mod::event on the same node') |
|
25 |
} |
|
26 |
if defined(Class['apache::mod::itk']) { |
|
27 |
fail('May not include both apache::mod::peruser and apache::mod::itk on the same node') |
|
28 |
} |
|
29 |
if defined(Class['apache::mod::prefork']) { |
|
30 |
fail('May not include both apache::mod::peruser and apache::mod::prefork on the same node') |
|
31 |
} |
|
32 |
if defined(Class['apache::mod::worker']) { |
|
33 |
fail('May not include both apache::mod::peruser and apache::mod::worker on the same node') |
|
34 |
} |
|
35 |
File { |
|
36 |
owner => 'root', |
|
37 |
group => $::apache::params::root_group, |
|
38 |
mode => '0644', |
|
39 |
} |
|
40 |
|
|
41 |
$mod_dir = $::apache::mod_dir |
|
42 |
|
|
43 |
# Template uses: |
|
44 |
# - $minspareprocessors |
|
45 |
# - $minprocessors |
|
46 |
# - $maxprocessors |
|
47 |
# - $maxclients |
|
48 |
# - $maxrequestsperchild |
|
49 |
# - $idletimeout |
|
50 |
# - $expiretimeout |
|
51 |
# - $keepalive |
|
52 |
# - $mod_dir |
|
53 |
file { "${::apache::mod_dir}/peruser.conf": |
|
54 |
ensure => file, |
|
55 |
content => template('apache/mod/peruser.conf.erb'), |
|
56 |
require => Exec["mkdir ${::apache::mod_dir}"], |
|
57 |
before => File[$::apache::mod_dir], |
|
58 |
notify => Class['apache::service'], |
|
59 |
} |
|
60 |
file { "${::apache::mod_dir}/peruser": |
|
61 |
ensure => directory, |
|
62 |
require => File[$::apache::mod_dir], |
|
63 |
} |
|
64 |
file { "${::apache::mod_dir}/peruser/multiplexers": |
|
65 |
ensure => directory, |
|
66 |
require => File["${::apache::mod_dir}/peruser"], |
|
67 |
} |
|
68 |
file { "${::apache::mod_dir}/peruser/processors": |
|
69 |
ensure => directory, |
|
70 |
require => File["${::apache::mod_dir}/peruser"], |
|
71 |
} |
|
72 |
|
|
73 |
::apache::peruser::multiplexer { '01-default': } |
|
74 |
} |
|
75 |
} |
|
76 |
} |