On Wednesday, April 30, 2014 10:06:18 AM UTC-5, Sans wrote:
>
> Hi all,
>
> I have users module, which I don't control but include in my manifest to 
> setup user(s) on my system. This is something I have in one of the .pp 
> files:
>
> class users::productupport {
>>     @group { 'productsupport':
>>         gid => '1553',
>>     }
>>     @produser { 'jake_s':
>>         user    => 'jake_s',
>>         uid     => '5001',
>>         group   => 'productsupport',
>>         comment => 'Jake Sully',
>>         .....
>>     }
>>     @produser { 'nina_g':
>>     ....
>> }
>>
>
>

For that to be much use, there needs somewhere to be a class that declares 
that one and all its siblings.  Maybe it's class 'users':

modules/users/manifests/init.pp:
----
class users {
  include 'users::idreport'
  include 'users::mondev'
  include 'users::productsupport'
  ...
}

 

> and in my manifest, I realize that information like this: 
>
> sudoers::snippet {
>>     'productsupport':
>>     group   => 'productsupport',
>>     rights  => ['ALL'];
>>  }
>> Users::Produser <| group == productsupport |>
>>
>
>
> I have four environments and not all  user-group are required on all the 
> environment. How can I do the from hiera? I'm planing to have this in my 
> hiera files:
>
> *test.yaml:*
>> user_group:
>>   - productsupport
>>   - mondev
>>
>> *stage.yaml:*
>> user_group:
>>   - productsupport
>>   - idreport
>>
>>
>
> but then I cannot figure out how I can use user_group to create the group 
> of users. Any help/pointer?
> Just one thing to note: changing anything in the users module not really 
> an option for me but I'm open to any suggestion(s) if it makes thing even 
> better. 
>
>

Put your snippet into a defined type, maybe "mymodule::group", and use the 
array of group names from hiera to declare the appropriate instances of 
that type.


somewhere.pp:
----
$my_groups = hiera('user_group')
mymodule::group { $my_groups: }


modules/mymodule/manifests/group.pp:
----
define mymodule::group {
  include 'users'
  sudoers::snippet { $title:
    group => $title,
    rights => ['ALL']
  }
  Users::Produser<| group == $title |>
}


John

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/a0528009-e0e4-4e7d-8cc8-b6b64e24033f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to