Skip to content

Commit 6a9f75b

Browse files
authored
Merge pull request Azure#9183 from lwajswaj/enhancement/issue_9004
Added ability to set 'Description' field when calling New-AzADGroup (Issue Azure#9004)
2 parents b2dc7c1 + 8a5ad43 commit 6a9f75b

File tree

5 files changed

+36
-5
lines changed

5 files changed

+36
-5
lines changed

src/Resources/Resources/ActiveDirectory/Cmdlets/NewAzureADGroupCommand.cs

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,13 +31,22 @@ public class NewAzureADGroupCommand : ActiveDirectoryBaseCmdlet
3131
[ValidateNotNullOrEmpty]
3232
public string MailNickname { get; set; }
3333

34+
[Parameter(Mandatory = false, ValueFromPipelineByPropertyName = true, HelpMessage = "The description for the group.")]
35+
public string Description { get; set; }
36+
3437
public override void ExecuteCmdlet()
3538
{
3639
var groupCreateParams = new GroupCreateParameters()
3740
{
3841
DisplayName = DisplayName,
39-
MailNickname = MailNickname
42+
MailNickname = MailNickname,
43+
AdditionalProperties = new System.Collections.Generic.Dictionary<string, object>()
4044
};
45+
46+
if (!string.IsNullOrEmpty(Description))
47+
{
48+
groupCreateParams.AdditionalProperties.Add("description", Description);
49+
}
4150

4251
ExecutionBlock(() =>
4352
{

src/Resources/Resources/ActiveDirectory/Models/ActiveDirectoryClientExtensions.cs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// ----------------------------------------------------------------------------------
1+
// ----------------------------------------------------------------------------------
22
//
33
// Copyright Microsoft Corporation
44
// Licensed under the Apache License, Version 2.0 (the "License");
@@ -60,7 +60,8 @@ public static PSADObject ToPSADObject(this AADObject obj)
6060
Id = obj.ObjectId,
6161
Type = obj.ObjectType,
6262
SecurityEnabled = obj.SecurityEnabled,
63-
MailNickname = obj.Mail
63+
MailNickname = !string.IsNullOrEmpty(obj.Mail) ? obj.Mail : obj.AdditionalProperties.ContainsKey("mailNickname") ? obj.AdditionalProperties["mailNickname"]?.ToString() : null,
64+
Description = obj.AdditionalProperties.ContainsKey("description") ? obj.AdditionalProperties["description"]?.ToString() : null
6465
};
6566
}
6667
else if (obj.ObjectType == typeof(ServicePrincipal).Name)
@@ -110,7 +111,8 @@ public static PSADGroup ToPSADGroup(this ADGroup group)
110111
DisplayName = group.DisplayName,
111112
Id = group.ObjectId,
112113
SecurityEnabled = group.SecurityEnabled,
113-
MailNickname = group.Mail
114+
MailNickname = !string.IsNullOrEmpty(group.Mail) ? group.Mail : group.AdditionalProperties.ContainsKey("mailNickname") ? group.AdditionalProperties["mailNickname"]?.ToString() : null,
115+
Description = group.AdditionalProperties.ContainsKey("description") ? group.AdditionalProperties["description"]?.ToString() : null
114116
};
115117
}
116118

src/Resources/Resources/ActiveDirectory/Models/PSADGroup.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,5 +21,7 @@ public class PSADGroup : PSADObject
2121
public string MailNickname { get; set; }
2222

2323
public string ObjectType => "Group";
24+
25+
public string Description { get; set; }
2426
}
2527
}

src/Resources/Resources/ChangeLog.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,9 @@
2121

2222
## Version 1.4.0
2323
* Add new cmdlet Get-AzureRmDenyAssignment for retrieving deny assignments
24+
* Added 'Description' parameter when working with Azure AD Groups:
25+
- Added a parameter to New-AzAdGroup
26+
- Added as output on Get-AzAdGroup
2427

2528
## Version 1.3.1
2629
* Fix documentation for wildcards

src/Resources/Resources/help/New-AzADGroup.md

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ Creates a new active directory group.
1313
## SYNTAX
1414

1515
```
16-
New-AzADGroup -DisplayName <String> -MailNickname <String> [-DefaultProfile <IAzureContextContainer>] [-WhatIf]
16+
New-AzADGroup -DisplayName <String> -MailNickname <String> [-Description <string>] [-DefaultProfile <IAzureContextContainer>] [-WhatIf]
1717
[-Confirm] [<CommonParameters>]
1818
```
1919

@@ -47,6 +47,21 @@ Accept pipeline input: False
4747
Accept wildcard characters: False
4848
```
4949
50+
### -Description
51+
The description for the group.
52+
53+
```yaml
54+
Type: System.String
55+
Parameter Sets: (All)
56+
Aliases:
57+
58+
Required: False
59+
Position: Named
60+
Default value: None
61+
Accept pipeline input: True (ByPropertyName)
62+
Accept wildcard characters: False
63+
```
64+
5065
### -DisplayName
5166
The display name for the group.
5267

0 commit comments

Comments
 (0)