aboutsummaryrefslogtreecommitdiff
path: root/manifests
diff options
context:
space:
mode:
Diffstat (limited to 'manifests')
-rw-r--r--manifests/server.pp22
1 files changed, 15 insertions, 7 deletions
diff --git a/manifests/server.pp b/manifests/server.pp
index ce6f10c..6addab8 100644
--- a/manifests/server.pp
+++ b/manifests/server.pp
@@ -1,16 +1,24 @@
-class samba::server($workgroup = PCCH) {
+class samba::server($workgroup = '') {
include samba::server::install
include samba::server::config
include samba::server::service
+ $context = "/files/etc/samba/smb.conf"
$target = "target[. = 'global']"
- augeas { global:
- context => "/files/etc/samba/smb.conf",
- changes => [
- "set ${target} global",
- "set ${target}/workgroup $workgroup"
- ],
+ augeas { 'global-section':
+ context => $context,
+ changes => "set ${target} global",
require => Class["samba::server::config"]
}
+
+ augeas { 'global-workgroup':
+ context => $context,
+ changes => $workgroup ? {
+ default => "set ${target}/workgroup $workgroup",
+ '' => "rm ${target}/workgroup",
+ },
+ require => Augeas['global-section'],
+ }
+
}