From 834b88cd9f9f0062f8ff9308531f4f543bf54e38 Mon Sep 17 00:00:00 2001 From: Adam Jahn Date: Fri, 24 Aug 2012 13:25:55 -0400 Subject: share is part of the server family --- manifests/server/share.pp | 66 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 manifests/server/share.pp (limited to 'manifests/server') diff --git a/manifests/server/share.pp b/manifests/server/share.pp new file mode 100644 index 0000000..51341e3 --- /dev/null +++ b/manifests/server/share.pp @@ -0,0 +1,66 @@ +define samba::server::share($ensure = present, + $description = '', + $path = '', + $browsable = '', + $guest_ok = '', + $read_only = '') { + + $context = "/files/etc/samba/smb.conf" + $target = "target[. = '${name}']" + + augeas { "${name}-section": + context => $context, + changes => $ensure ? { + present => "set ${target} ${name}", + default => "rm ${target} ${name}", + }, + require => Class["samba::server::config"] + } + + if $ensure == "present" { + augeas { "${name}-comment": + context => $context, + changes => $description ? { + default => "set ${target}/comment ${description}", + '' => "rm ${target}/comment", + }, + require => Augeas["${name}-section"], + } + + augeas { "${name}-path": + context => $context, + changes => $path ? { + default => "set ${target}/path ${path}", + '' => "rm ${target}/path", + }, + require => Augeas["${name}-section"], + } + + augeas { "${name}-browsable": + context => $context, + changes => $browsable ? { + default => "set ${target}/browsable ${browsable}", + '' => "rm ${target}/browsable", + }, + require => Augeas["${name}-section"], + } + + augeas { "${name}-guest_ok": + context => $context, + changes => $guest_ok ? { + default => "set \"${target}/guest ok\" ${guest_ok}", + '' => "rm \"${target}/guest ok\"", + }, + require => Augeas["${name}-section"], + } + + augeas { "${name}-read_only": + context => $context, + changes => $read_only ? { + default => "set \"${target}/read only\" ${read_only}", + '' => "rm \"${target}/read_only\"", + }, + require => Augeas["${name}-section"], + } + } +} -- cgit v1.2.3