Skip to content

Commit 3d76b0a

Browse files
authored
Merge pull request Azure#6121 from ArieShout/menxiao/signalr-ps-rg
Updates and fixes according to the SignalR RP changes
2 parents 386cc03 + c7d2c76 commit 3d76b0a

10 files changed

+55
-38
lines changed

src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/GetAzureRmSignalR.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,15 +29,15 @@ public class GetAzureRmSignalR : SignalRCmdletBase, IWithResourceId
2929
Mandatory = false,
3030
ParameterSetName = ListSignalRServiceParameterSet,
3131
HelpMessage = "The resource group name.")]
32-
[Parameter(Position = 0,
32+
[Parameter(
3333
Mandatory = false,
3434
ParameterSetName = ResourceGroupParameterSet,
3535
HelpMessage = "The resource group name. The default one will be used if not specified.")]
3636
[ResourceGroupCompleter()]
3737
[ValidateNotNullOrEmpty]
3838
public override string ResourceGroupName { get; set; }
3939

40-
[Parameter(Position = 1,
40+
[Parameter(Position = 0,
4141
Mandatory = true,
4242
ParameterSetName = ResourceGroupParameterSet,
4343
HelpMessage = "The SignalR service name.")]

src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/GetAzureRmSignalRKey.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ public class GetAzureRmSignalRKey : SignalRCmdletBase, IWithInputObject, IWithRe
3333
[ValidateNotNullOrEmpty]
3434
public override string ResourceGroupName { get; set; }
3535

36-
[Parameter(Position = 1,
36+
[Parameter(Position = 0,
3737
Mandatory = true,
3838
ParameterSetName = ResourceGroupParameterSet,
3939
HelpMessage = "The SignalR service name.")]

src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/NewAzureRmSignalR.cs

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -39,14 +39,13 @@ public sealed class NewAzureRmSignalR : SignalRCmdletBase
3939

4040
[Parameter(
4141
Mandatory = true,
42-
Position = 1,
42+
Position = 0,
4343
HelpMessage = "The SignalR service name.")]
4444
[ValidateNotNullOrEmpty()]
4545
public string Name { get; set; }
4646

4747
[Parameter(
4848
Mandatory = false,
49-
Position = 2,
5049
HelpMessage = "The SignalR service location. The resource group location will be used if not specified.")]
5150
[LocationCompleter("Microsoft.SignalR/SignalR")]
5251
[ValidateNotNullOrEmpty()]
@@ -55,9 +54,16 @@ public sealed class NewAzureRmSignalR : SignalRCmdletBase
5554
[Parameter(
5655
Mandatory = false,
5756
HelpMessage = "The SignalR service SKU.")]
58-
[PSArgumentCompleter("Basic_DS2")]
57+
[PSArgumentCompleter("Free_DS2", "Basic_DS2")]
5958
public string Sku { get; set; } = DefaultSku;
6059

60+
[Parameter(
61+
Mandatory = false,
62+
HelpMessage = "The SignalR service unit count, from 1 to 10. Default to 1.")]
63+
[PSArgumentCompleter("1", "2", "3", "4", "5", "6", "7", "8", "9", "10")]
64+
[ValidateRange(1, 10)]
65+
public int UnitCount { get; set; } = 1;
66+
6167
[Parameter(
6268
Mandatory = false,
6369
HelpMessage = "The tags for the SignalR service.")]
@@ -97,22 +103,18 @@ public Parameters(NewAzureRmSignalR cmdlet)
97103

98104
public Task<ResourceConfig<SignalRResource>> CreateConfigAsync()
99105
{
106+
_cmdlet.ResolveResourceGroupName(required: false);
100107
_cmdlet.ResourceGroupName = _cmdlet.ResourceGroupName ?? _cmdlet.Name;
101-
_cmdlet.ResolveResourceGroupName();
102108

103109
var resourceGroup = ResourceGroupStrategy.CreateResourceGroupConfig(
104110
_cmdlet.ResourceGroupName);
105111

106112
var result = SignalRStrategy.Strategy.CreateResourceConfig(
107113
resourceGroup: resourceGroup,
108-
// The SignalR service accepts only lower case characters. It's a known bug.
109-
// TODO: remove ".ToLower()" as soon as the problem is fixed in SignalR server.
110-
// See also
111-
// https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/resource-api-reference.md#put-resource
112-
name: _cmdlet.Name.ToLower(),
114+
name: _cmdlet.Name,
113115
createModel: engine => new SignalRResource(
114116
tags: _cmdlet.Tag,
115-
sku: new ResourceSku(_cmdlet.Sku, capacity: 1), // we only allow capacity 1 in public preview, this may be a parameter in future.
117+
sku: new ResourceSku(_cmdlet.Sku, capacity: _cmdlet.UnitCount),
116118
hostNamePrefix: null /* _cmdlet.Name*/)); // hostNamePrefix is just a placeholder and ignored in the resource provider.
117119

118120
return Task.FromResult(result);

src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/NewAzureRmSignalRKey.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ public class NewAzureRmSignalRKey : SignalRCmdletBase, IWithInputObject, IWithRe
3434
[ValidateNotNullOrEmpty]
3535
public override string ResourceGroupName { get; set; }
3636

37-
[Parameter(Position = 1,
37+
[Parameter(Position = 0,
3838
Mandatory = true,
3939
ParameterSetName = ResourceGroupParameterSet,
4040
HelpMessage = "The SignalR service name.")]
@@ -55,7 +55,7 @@ public class NewAzureRmSignalRKey : SignalRCmdletBase, IWithInputObject, IWithRe
5555
[ValidateNotNull]
5656
public PSSignalRResource InputObject { get; set; }
5757

58-
[Parameter(Mandatory = true, HelpMessage = "The key type, either Primary or Secondary.")]
58+
[Parameter(Mandatory = true, Position = 1, HelpMessage = "The key type, either Primary or Secondary.")]
5959
[PSArgumentCompleter("Primary", "Secondary")]
6060
[ValidateSet("Primary", "Secondary", IgnoreCase = true)]
6161
public string KeyType { get; set; }

src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/RemoveAzureRmSignalR.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ public class RemoveAzureRmSignalR : SignalRCmdletBase, IWithInputObject, IWithRe
3333
[ValidateNotNullOrEmpty]
3434
public override string ResourceGroupName { get; set; }
3535

36-
[Parameter(Position = 1,
36+
[Parameter(Position = 0,
3737
Mandatory = true,
3838
ParameterSetName = ResourceGroupParameterSet,
3939
HelpMessage = "The SignalR service name.")]

src/ResourceManager/SignalR/Commands.SignalR/help/Get-AzureRmSignalR.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,13 @@ Get a specific SignalR service or all the SignalR services in a resource group o
1414

1515
### ListSignalRServiceParameterSet (Default)
1616
```
17-
Get-AzureRmSignalR [[-ResourceGroupName] <String>] [-DefaultProfile <IAzureContextContainer>]
17+
Get-AzureRmSignalR [-ResourceGroupName <String>] [-DefaultProfile <IAzureContextContainer>]
1818
[<CommonParameters>]
1919
```
2020

2121
### ResourceGroupParameterSet
2222
```
23-
Get-AzureRmSignalR [[-ResourceGroupName] <String>] [-Name] <String> [-DefaultProfile <IAzureContextContainer>]
23+
Get-AzureRmSignalR [-ResourceGroupName <String>] [-Name] <String> [-DefaultProfile <IAzureContextContainer>]
2424
[<CommonParameters>]
2525
```
2626

@@ -104,7 +104,7 @@ Parameter Sets: ResourceGroupParameterSet
104104
Aliases:
105105

106106
Required: True
107-
Position: 1
107+
Position: 0
108108
Default value: None
109109
Accept pipeline input: False
110110
Accept wildcard characters: False
@@ -119,7 +119,7 @@ Parameter Sets: ListSignalRServiceParameterSet, ResourceGroupParameterSet
119119
Aliases:
120120

121121
Required: False
122-
Position: 0
122+
Position: Named
123123
Default value: None
124124
Accept pipeline input: False
125125
Accept wildcard characters: False

src/ResourceManager/SignalR/Commands.SignalR/help/Get-AzureRmSignalRKey.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@ Get the access keys of a SignalR service.
1414

1515
### ResourceGroupParameterSet (Default)
1616
```
17-
Get-AzureRmSignalRKey [[-ResourceGroupName] <String>] [-Name] <String>
18-
[-DefaultProfile <IAzureContextContainer>] [<CommonParameters>]
17+
Get-AzureRmSignalRKey [-ResourceGroupName <String>] [-Name] <String> [-DefaultProfile <IAzureContextContainer>]
18+
[<CommonParameters>]
1919
```
2020

2121
### ResourceIdParameterSet
@@ -94,7 +94,7 @@ Parameter Sets: ResourceGroupParameterSet
9494
Aliases:
9595

9696
Required: True
97-
Position: 1
97+
Position: 0
9898
Default value: None
9999
Accept pipeline input: False
100100
Accept wildcard characters: False
@@ -109,7 +109,7 @@ Parameter Sets: ResourceGroupParameterSet
109109
Aliases:
110110

111111
Required: False
112-
Position: 0
112+
Position: Named
113113
Default value: None
114114
Accept pipeline input: False
115115
Accept wildcard characters: False

src/ResourceManager/SignalR/Commands.SignalR/help/New-AzureRmSignalR.md

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ Create a SignalR service.
1313
## SYNTAX
1414

1515
```
16-
New-AzureRmSignalR [[-ResourceGroupName] <String>] [-Name] <String> [[-Location] <String>] [-Sku <String>]
17-
[-Tag <System.Collections.Generic.IDictionary`2[System.String,System.String]>] [-AsJob]
16+
New-AzureRmSignalR [-ResourceGroupName <String>] [-Name] <String> [-Location <String>] [-Sku <String>]
17+
[-UnitCount <Int32>] [-Tag <System.Collections.Generic.IDictionary`2[System.String,System.String]>] [-AsJob]
1818
[-DefaultProfile <IAzureContextContainer>] [-WhatIf] [-Confirm] [<CommonParameters>]
1919
```
2020

@@ -79,7 +79,7 @@ Parameter Sets: (All)
7979
Aliases:
8080

8181
Required: False
82-
Position: 2
82+
Position: Named
8383
Default value: None
8484
Accept pipeline input: False
8585
Accept wildcard characters: False
@@ -94,7 +94,7 @@ Parameter Sets: (All)
9494
Aliases:
9595

9696
Required: True
97-
Position: 1
97+
Position: 0
9898
Default value: None
9999
Accept pipeline input: False
100100
Accept wildcard characters: False
@@ -109,7 +109,7 @@ Parameter Sets: (All)
109109
Aliases:
110110

111111
Required: False
112-
Position: 0
112+
Position: Named
113113
Default value: None
114114
Accept pipeline input: False
115115
Accept wildcard characters: False
@@ -145,6 +145,21 @@ Accept pipeline input: False
145145
Accept wildcard characters: False
146146
```
147147
148+
### -UnitCount
149+
The SignalR service unit count, from 1 to 10. Default to 1.
150+
151+
```yaml
152+
Type: Int32
153+
Parameter Sets: (All)
154+
Aliases:
155+
156+
Required: False
157+
Position: Named
158+
Default value: 1
159+
Accept pipeline input: False
160+
Accept wildcard characters: False
161+
```
162+
148163
### -Confirm
149164
Prompts you for confirmation before running the cmdlet.
150165

src/ResourceManager/SignalR/Commands.SignalR/help/New-AzureRmSignalRKey.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -14,19 +14,19 @@ Regenerate an access key for a SignalR service.
1414

1515
### ResourceGroupParameterSet (Default)
1616
```
17-
New-AzureRmSignalRKey [[-ResourceGroupName] <String>] [-Name] <String> -KeyType <String> [-PassThru]
17+
New-AzureRmSignalRKey [-ResourceGroupName <String>] [-Name] <String> [-KeyType] <String> [-PassThru]
1818
[-DefaultProfile <IAzureContextContainer>] [-WhatIf] [-Confirm] [<CommonParameters>]
1919
```
2020

2121
### ResourceIdParameterSet
2222
```
23-
New-AzureRmSignalRKey -ResourceId <String> -KeyType <String> [-PassThru]
23+
New-AzureRmSignalRKey -ResourceId <String> [-KeyType] <String> [-PassThru]
2424
[-DefaultProfile <IAzureContextContainer>] [-WhatIf] [-Confirm] [<CommonParameters>]
2525
```
2626

2727
### InputObjectParameterSet
2828
```
29-
New-AzureRmSignalRKey -InputObject <PSSignalRResource> -KeyType <String> [-PassThru]
29+
New-AzureRmSignalRKey -InputObject <PSSignalRResource> [-KeyType] <String> [-PassThru]
3030
[-DefaultProfile <IAzureContextContainer>] [-WhatIf] [-Confirm] [<CommonParameters>]
3131
```
3232

@@ -84,7 +84,7 @@ Aliases:
8484
Accepted values: Primary, Secondary
8585

8686
Required: True
87-
Position: Named
87+
Position: 1
8888
Default value: None
8989
Accept pipeline input: False
9090
Accept wildcard characters: False
@@ -99,7 +99,7 @@ Parameter Sets: ResourceGroupParameterSet
9999
Aliases:
100100

101101
Required: True
102-
Position: 1
102+
Position: 0
103103
Default value: None
104104
Accept pipeline input: False
105105
Accept wildcard characters: False
@@ -129,7 +129,7 @@ Parameter Sets: ResourceGroupParameterSet
129129
Aliases:
130130

131131
Required: False
132-
Position: 0
132+
Position: Named
133133
Default value: None
134134
Accept pipeline input: False
135135
Accept wildcard characters: False

src/ResourceManager/SignalR/Commands.SignalR/help/Remove-AzureRmSignalR.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Remove a SignalR service.
1414

1515
### ResourceGroupParameterSet (Default)
1616
```
17-
Remove-AzureRmSignalR [[-ResourceGroupName] <String>] [-Name] <String> [-AsJob] [-PassThru]
17+
Remove-AzureRmSignalR [-ResourceGroupName <String>] [-Name] <String> [-AsJob] [-PassThru]
1818
[-DefaultProfile <IAzureContextContainer>] [-WhatIf] [-Confirm] [<CommonParameters>]
1919
```
2020

@@ -103,7 +103,7 @@ Parameter Sets: ResourceGroupParameterSet
103103
Aliases:
104104

105105
Required: True
106-
Position: 1
106+
Position: 0
107107
Default value: None
108108
Accept pipeline input: False
109109
Accept wildcard characters: False
@@ -133,7 +133,7 @@ Parameter Sets: ResourceGroupParameterSet
133133
Aliases:
134134

135135
Required: False
136-
Position: 0
136+
Position: Named
137137
Default value: None
138138
Accept pipeline input: False
139139
Accept wildcard characters: False

0 commit comments

Comments
 (0)