DSC for Linux nxGroup Resource
The nxGroup resource in PowerShell Desired State Configuration (DSC) provides a mechanism to manage local groups on a Linux node.
Syntax
nxGroup <string> #ResourceName
{
GroupName = <string>
[ Members = <string[]> ]
[ MembersToInclude = <string[]> ]
[ MembersToExclude = <string[]> ]
[ PreferredGroupID = <string> ]
[ DependsOn = <string[]> ]
[ Ensure = <string> { Absent | Present } ]
}
Properties
Property | Description |
---|---|
GroupName | Specifies the name of the group for which you want to ensure a specific state. |
Members | Specifies the members that form the group. |
MembersToInclude | Specifies the users who you want to ensure are members of the group. |
MembersToExclude | Specifies the users who you want to ensure are not members of the group. |
PreferredGroupID | Sets the group id to the provided value if possible. If the group id is currently in use, the next available group id is used. |
Common properties
Property | Description |
---|---|
DependsOn | Indicates that the configuration of another resource must run before this resource is configured. For example, if the ID of the resource configuration script block that you want to run first is ResourceName and its type is ResourceType, the syntax for using this property is DependsOn = "[ResourceType]ResourceName" . |
Ensure | Determines whether to check if the group exists. Set this property to Present to ensure the group exists. Set it to Absent to ensure the group does not exist. The default value is Present. |
Example
The following example ensures that the user 'monuser' exists and is a member of the group 'DBusers'.
Import-DSCResource -ModuleName nx
Node $node
{
nxUser UserExample {
UserName = 'monuser'
Description = 'Monitoring user'
Password = '$6$fZAne/Qc$MZejMrOxDK0ogv9SLiBP5J5qZFBvXLnDu8HY1Oy7ycX.Y3C7mGPUfeQy3A82ev3zIabhDQnj2ayeuGn02CqE/0'
Ensure = 'Present'
HomeDirectory = '/home/monuser'
}
nxGroup GroupExample {
GroupName = 'DBusers'
Ensure = 'Present'
MembersToInclude = 'monuser'
DependsOn = '[nxUser]UserExample'
}
}
Collaborate with us on GitHub
The source for this content can be found on GitHub, where you can also create and review issues and pull requests. For more information, see our contributor guide.