Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have configured a module to set up a new group using the following documentation: http://docs.puppetlabs.com/references/latest/type.html#group.

[root@puppetmaster ~]# cat /etc/puppet/modules/change-groups/manifests/init.pp 
class change-groups {

    group { "newgroup":
        gid => 3651,
        members => "user1,user2",
    }

}

Unfortunately I do get an error message. What could be the reason?

info: /Group[newgroup]: Provider groupadd does not support features manages_members; not managing attribute members
share|improve this question

3 Answers 3

up vote 3 down vote accepted

Based on the documentation:

Manage groups. On most platforms this can only create groups. Group membership must be managed on individual users.

On some platforms such as OS X, group membership is managed as an attribute of the group, not the user record. Providers must have the feature ‘manages_members’ to manage the ‘members’ property of a group record

This is notoriously not working on Linux platforms that use groupadd/groupmod/groupdel to edit groups - see upstream issue #1298.

There is an alternative group provider by the Portland State University that can edit the group file.

Another option is to use Augeas to manage the group file.

share|improve this answer
    
Red Hat Enterprise Linux 6.4 –  ujjain May 23 '13 at 7:01
2  
Clearly the log says that "Provider groupadd does not support features manages_members" so under EL what you want to do do not seem possible. –  Spredzy May 23 '13 at 7:03

Default group providers in Puppet distribution don't include one able to manage group memberships. However, someone at Portland State University has required the same functionality and coded some custom provider(s). What you need from this is the file ggroupadd.pp which you'd like to put in /etc/puppet/modules/custom/lib/puppet/provider/group (adjust appropriately to reflect the location of your custom modules directory).

The new ggroupadd provider will manage groups so that whatever you put in member attribute will get into the file /etc/group as well.

share|improve this answer

Looks like the puppet maintainers never provided support for it. I'm looking at the groupadd functionality in the Ruby libraries, and it seems to be a combination of sloppy code and/or incomplete code.

share|improve this answer

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.