Defined Type: samba::server::option
- Defined in:
- manifests/server/option.pp
Overview
== Define samba::server::option
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 |
# File 'manifests/server/option.pp', line 3
define samba::server::option (
$value = false,
) {
# Attempt to parse variable name and value from title if it is in the form X=x
if $title =~ /.+=.*/ {
$split = split($title, '=')
$_name = $split[0]
# in key=value form, split[1] will arive as the string 'false'
if $split[1] == 'false' {
$_value = false
} else {
$_value = $split[1]
}
} else {
$_name = $name
$_value = $value
}
include samba::params
include samba::server
$samba_config_dir = $samba::params::samba_config_dir
$samba_config_file = $samba::params::samba_config_file
$context = $samba::server::context
$target = $samba::server::target
$services = $samba::params::services
$manage_service = $samba::server::manage_service
$changes = $_value ? {
false => "rm ${target}/${_name}",
default => "set '${target}/${_name}' '${_value}'",
}
augeas { "samba-${_name}":
incl => $samba_config_file,
lens => 'Samba.lns',
context => $context,
changes => $changes,
require => Augeas['global-section'],
notify => $samba::server::notify,
}
}
|