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