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
|
# = Define: kmod::setting
#
# == Example
#
#
define kmod::setting(
$file,
$category,
$option = undef,
$value = undef,
$module = $name,
$ensure = 'present',
) {
include ::kmod
ensure_resource('file', $file, { 'ensure' => 'file'} )
case $ensure {
'present': {
if $option {
$changes = [
"set ${category}[. = '${module}'] ${module}",
"set ${category}[. = '${module}']/${option} ${value}",
]
} else {
$changes = [
"set ${category}[. = '${module}'] ${module}",
]
}
}
'absent': {
$changes = "rm ${category}[. = '${module}']"
}
default: { fail ( "unknown ensure value ${ensure}" ) }
}
augeas { "kmod::setting ${title} ${module}":
incl => $file,
lens => 'Modprobe.lns',
changes => $changes,
require => File[$file],
}
}
|