Module for provisioning Samba This is a re-write of Adam Jahn's module to remove augeas dependency.
Requires puppetlabs/stdlib
This module puts share definitions in an included directory and assumes that most samba configuration options are defaults.
To set specific options to non-default values put them in the $config_options hash. $share_options for shares.
Shares must be defined as 'samba::share_file' resources and listed as 'include_files' in the base samba class, with '.share' appended to the share name. (Samba doesn't support wildcard includes.) See examples below.
$share_defaults = { read_only => 'no', create_mask => '0660', directory_mask => '2770', force_create_mode => '0660', force_directory_mode => '2770', }
class { '::samba':
workgroup =>
$my_home_share_options = { valid_users => 'me', }
samba::share_file { 'My_Home': path => '/home/me', share_options => $my_home_share_options }
$guest_share_options = { guest_ok => 'yes', force_user => 'nobody', }
samba::share_file { 'Guest': path => '/tmp/guest', share_options => $guest_share_options }
Currently does not automatically join the domain when security = domain/ads
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Added some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request
This module is released under the MIT license: