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
|
# File 'manifests/base.pp', line 31
class sysctl::base (
Boolean $purge = false,
Hash $values = {},
Boolean $hiera_merge_values = false,
Boolean $symlink99 = $sysctl::params::symlink99,
Boolean $sysctl_dir = true,
Stdlib::Absolutepath $sysctl_dir_path = '/etc/sysctl.d',
String[1] $sysctl_dir_owner = 'root',
String[1] $sysctl_dir_group = 'root',
Stdlib::Filemode $sysctl_dir_mode = '0755',
) inherits sysctl::params {
# Hiera support
if $hiera_merge_values == true {
$values_real = lookup('sysctl::base::values', {})
} else {
$values_real = $values
}
create_resources(sysctl,$values_real)
if $sysctl_dir {
file { $sysctl_dir_path:
ensure => 'directory',
owner => $sysctl_dir_owner,
group => $sysctl_dir_group,
mode => $sysctl_dir_mode,
# Magic hidden here
purge => $purge,
recurse => $purge,
}
if $symlink99 and $sysctl_dir_path =~ /^\/etc\/[^\/]+$/ {
file { "${sysctl_dir_path}/99-sysctl.conf":
ensure => link,
owner => $sysctl_dir_owner,
group => $sysctl_dir_group,
target => '../sysctl.conf',
}
}
}
}
|