Skip to content

Commit 4603a70

Browse files
Y-SindomsJinLei
andauthored
Update SignalR module (#15085)
* Update SignalR SDK to 1.1.2-preview * Add "Trace" to networkAcl and allow empty list * Add resource group name and resource name completers * Obsolete PSSignalRResource.HostNamePrefix * Add test * update help files * Update change log * Update ChangeLog.md Co-authored-by: Jin Lei <[email protected]>
1 parent db10eec commit 4603a70

24 files changed

+5224
-3850
lines changed

src/SignalR/SignalR.Test/ScenarioTests/AzureRmSignalRTests.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,15 +40,15 @@ public void TestAzureRmSignalR() =>
4040
public void TestAzureRmSignalRWithDefaultArgs() =>
4141
TestController.NewInstance.RunPowerShellTest(_logger, "Test-AzureRmSignalRWithDefaultArgs");
4242

43-
[Fact(Skip = "After latest network sdk import, test playback is failing. Need to enable test back after owner rerecords the test.")]
43+
[Fact]
4444
[Trait(Category.AcceptanceType, Category.CheckIn)]
4545
public void TestAzureRmSignalRUpdateNetworkAcl() =>
46-
TestController.NewInstance.RunPowerShellTest(_logger, "Test-AzureRmSignalRUpdateNetworkAcl");
46+
TestController.NewInstance.RunPowerShellTest(_logger, "Test-AzureRmSignalRUpdateNetworkAcl");
4747

4848
[Fact]
4949
[Trait(Category.AcceptanceType, Category.CheckIn)]
5050
public void TestAzureRmSignalRSetUpstream() =>
51-
TestController.NewInstance.RunPowerShellTest(_logger, "Test-AzureRmSignalRSetUpstream");
51+
TestController.NewInstance.RunPowerShellTest(_logger, "Test-AzureRmSignalRSetUpstream");
5252

5353
}
5454
}

src/SignalR/SignalR.Test/SessionRecords/Microsoft.Azure.Commands.SignalR.Test.ScenarioTests.AzureRmSignalRTests/TestAzureRmSignalR.json

Lines changed: 880 additions & 559 deletions
Large diffs are not rendered by default.

src/SignalR/SignalR.Test/SessionRecords/Microsoft.Azure.Commands.SignalR.Test.ScenarioTests.AzureRmSignalRTests/TestAzureRmSignalRSetUpstream.json

Lines changed: 829 additions & 622 deletions
Large diffs are not rendered by default.

src/SignalR/SignalR.Test/SessionRecords/Microsoft.Azure.Commands.SignalR.Test.ScenarioTests.AzureRmSignalRTests/TestAzureRmSignalRUpdateNetworkAcl.json

Lines changed: 2818 additions & 1873 deletions
Large diffs are not rendered by default.

src/SignalR/SignalR.Test/SessionRecords/Microsoft.Azure.Commands.SignalR.Test.ScenarioTests.AzureRmSignalRTests/TestAzureRmSignalRWithDefaultArgs.json

Lines changed: 583 additions & 727 deletions
Large diffs are not rendered by default.

src/SignalR/SignalR.Test/SignalR.Test.csproj

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
<ItemGroup>
1414
<PackageReference Include="Microsoft.Azure.Management.Network" Version="20.4.0" />
1515
<PackageReference Include="Microsoft.Azure.Management.PrivateDns" Version="1.0.0" />
16-
<PackageReference Include="Microsoft.Azure.Management.SignalR" Version="1.1.0" />
16+
<PackageReference Include="Microsoft.Azure.Management.SignalR" Version="1.1.2-preview" />
1717
</ItemGroup>
1818

1919
<ItemGroup>
@@ -31,6 +31,4 @@
3131
</EmbeddedResource>
3232
</ItemGroup>
3333

34-
35-
3634
</Project>

src/SignalR/SignalR.sln

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
21
Microsoft Visual Studio Solution File, Format Version 12.00
32
# Visual Studio Version 16
43
VisualStudioVersion = 16.0.30320.27
@@ -46,6 +45,10 @@ Global
4645
{142D7B0B-388A-4CEB-A228-7F6D423C5C2E}.Debug|Any CPU.Build.0 = Debug|Any CPU
4746
{142D7B0B-388A-4CEB-A228-7F6D423C5C2E}.Release|Any CPU.ActiveCfg = Release|Any CPU
4847
{142D7B0B-388A-4CEB-A228-7F6D423C5C2E}.Release|Any CPU.Build.0 = Release|Any CPU
48+
{6BD6B80A-06AF-4B5B-9230-69CCFC6C8D64}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
49+
{6BD6B80A-06AF-4B5B-9230-69CCFC6C8D64}.Debug|Any CPU.Build.0 = Debug|Any CPU
50+
{6BD6B80A-06AF-4B5B-9230-69CCFC6C8D64}.Release|Any CPU.ActiveCfg = Release|Any CPU
51+
{6BD6B80A-06AF-4B5B-9230-69CCFC6C8D64}.Release|Any CPU.Build.0 = Release|Any CPU
4952
{FF81DC73-B8EC-4082-8841-4FBF2B16E7CE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
5053
{FF81DC73-B8EC-4082-8841-4FBF2B16E7CE}.Debug|Any CPU.Build.0 = Debug|Any CPU
5154
{FF81DC73-B8EC-4082-8841-4FBF2B16E7CE}.Release|Any CPU.ActiveCfg = Release|Any CPU

src/SignalR/SignalR/ChangeLog.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,14 @@
1818
- Additional information about change #1
1919
-->
2020
## Upcoming Release
21+
* Changes to `Allow` and `Deny` parameters of `Update-AzSignalRNetworkAcl` cmdlet:
22+
- Accepted `Trace` as a valid value.
23+
- Accepted `@()` as empty collection to clear the list.
24+
* Supported `ResourceGroupCompleter` and `ResourceNameCompleter` in the applicable cmdlets.
25+
* Deprecated the `HostNamePrefix` property of output type `PSSignalRResource` of following cmdlets:
26+
- `Get-AzSignalR`
27+
- `New-AzSignalR`
28+
- `Update-AzSignalR`
2129

2230
## Version 1.2.0
2331
* Fixed `Restart-AzSignalR` and `Update-AzSignalR` help files errors

src/SignalR/SignalR/Cmdlets/GetAzureRmSignalR.cs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,17 +12,19 @@
1212
// limitations under the License.
1313
// ----------------------------------------------------------------------------------
1414

15+
using System;
16+
using System.Management.Automation;
1517
using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
1618
using Microsoft.Azure.Commands.SignalR.Models;
1719
using Microsoft.Azure.Commands.SignalR.Properties;
1820
using Microsoft.Azure.Management.SignalR;
19-
using System;
20-
using System.Management.Automation;
21+
using Microsoft.WindowsAzure.Commands.Common.CustomAttributes;
2122

2223
namespace Microsoft.Azure.Commands.SignalR.Cmdlets
2324
{
2425
[Cmdlet("Get", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "SignalR", DefaultParameterSetName = ListSignalRServiceParameterSet)]
2526
[OutputType(typeof(PSSignalRResource))]
27+
[CmdletOutputBreakingChange(typeof(PSSignalRResource), DeprecatedOutputProperties = new String[] { nameof(PSSignalRResource.HostNamePrefix) })]
2628
public class GetAzureRmSignalR : SignalRCmdletBase, IWithResourceId
2729
{
2830
[Parameter(
@@ -33,15 +35,16 @@ public class GetAzureRmSignalR : SignalRCmdletBase, IWithResourceId
3335
Mandatory = false,
3436
ParameterSetName = ResourceGroupParameterSet,
3537
HelpMessage = "The resource group name. The default one will be used if not specified.")]
36-
[ResourceGroupCompleter()]
3738
[ValidateNotNullOrEmpty]
39+
[ResourceGroupCompleter]
3840
public override string ResourceGroupName { get; set; }
3941

4042
[Parameter(Position = 0,
4143
Mandatory = true,
4244
ParameterSetName = ResourceGroupParameterSet,
4345
HelpMessage = "The SignalR service name.")]
4446
[ValidateNotNullOrEmpty]
47+
[ResourceNameCompleter(Constants.SignalRResourceType, nameof(ResourceGroupName))]
4548
public string Name { get; set; }
4649

4750
[Parameter(Mandatory = true,
@@ -85,4 +88,4 @@ public override void ExecuteCmdlet()
8588
});
8689
}
8790
}
88-
}
91+
}

src/SignalR/SignalR/Cmdlets/GetAzureRmSignalRKey.cs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@
1212
// limitations under the License.
1313
// ----------------------------------------------------------------------------------
1414

15+
using System;
16+
using System.Management.Automation;
1517
using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
1618
using Microsoft.Azure.Commands.SignalR.Models;
1719
using Microsoft.Azure.Commands.SignalR.Properties;
1820
using Microsoft.Azure.Management.SignalR;
19-
using System;
20-
using System.Management.Automation;
2121

2222
namespace Microsoft.Azure.Commands.SignalR.Cmdlets
2323
{
@@ -38,6 +38,7 @@ public class GetAzureRmSignalRKey : SignalRCmdletBase, IWithInputObject, IWithRe
3838
ParameterSetName = ResourceGroupParameterSet,
3939
HelpMessage = "The SignalR service name.")]
4040
[ValidateNotNullOrEmpty]
41+
[ResourceNameCompleter(Constants.SignalRResourceType, nameof(ResourceGroupName))]
4142
public string Name { get; set; }
4243

4344
[Parameter(Mandatory = true,
@@ -80,4 +81,4 @@ public override void ExecuteCmdlet()
8081
});
8182
}
8283
}
83-
}
84+
}

src/SignalR/SignalR/Cmdlets/NewAzureRmSignalR.cs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
// limitations under the License.
1313
// ----------------------------------------------------------------------------------
1414

15+
using System;
1516
using System.Collections.Generic;
1617
using System.Management.Automation;
1718
using Microsoft.Azure.Commands.Common.Strategies;
@@ -20,12 +21,14 @@
2021
using Microsoft.Azure.Management.Internal.Resources;
2122
using Microsoft.Azure.Management.SignalR;
2223
using Microsoft.Azure.Management.SignalR.Models;
24+
using Microsoft.WindowsAzure.Commands.Common.CustomAttributes;
2325
using Newtonsoft.Json;
2426

2527
namespace Microsoft.Azure.Commands.SignalR.Cmdlets
2628
{
2729
[Cmdlet("New", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "SignalR", SupportsShouldProcess = true)]
2830
[OutputType(typeof(PSSignalRResource))]
31+
[CmdletOutputBreakingChange(typeof(PSSignalRResource), DeprecatedOutputProperties = new String[] { nameof(PSSignalRResource.HostNamePrefix) })]
2932
public sealed class NewAzureRmSignalR : SignalRCmdletBase
3033
{
3134
private const string DefaultSku = "Standard_S1";
@@ -35,6 +38,7 @@ public sealed class NewAzureRmSignalR : SignalRCmdletBase
3538
Mandatory = false,
3639
HelpMessage = "The resource group name. The default one will be used if not specified.")]
3740
[ValidateNotNullOrEmpty()]
41+
[ResourceGroupCompleter]
3842
public override string ResourceGroupName { get; set; }
3943

4044
[Parameter(
@@ -128,12 +132,12 @@ public override void ExecuteCmdlet()
128132
features: features,
129133
cors: cors);
130134

131-
Client.SignalR.CreateOrUpdate(ResourceGroupName, Name, parameters);
135+
Client.SignalR.CreateOrUpdate(parameters, ResourceGroupName, Name);
132136

133137
var signalr = Client.SignalR.Get(ResourceGroupName, Name);
134138
WriteObject(new PSSignalRResource(signalr));
135139
}
136140
});
137141
}
138142
}
139-
}
143+
}

src/SignalR/SignalR/Cmdlets/NewAzureRmSignalRKey.cs

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@
1212
// limitations under the License.
1313
// ----------------------------------------------------------------------------------
1414

15+
using System;
16+
using System.Management.Automation;
1517
using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
1618
using Microsoft.Azure.Commands.SignalR.Models;
1719
using Microsoft.Azure.Commands.SignalR.Properties;
1820
using Microsoft.Azure.Management.SignalR;
1921
using Microsoft.Azure.Management.SignalR.Models;
20-
using System;
21-
using System.Management.Automation;
2222

2323
namespace Microsoft.Azure.Commands.SignalR.Cmdlets
2424
{
@@ -30,15 +30,16 @@ public class NewAzureRmSignalRKey : SignalRCmdletBase, IWithInputObject, IWithRe
3030
Mandatory = false,
3131
ParameterSetName = ResourceGroupParameterSet,
3232
HelpMessage = "The resource group name. The default one will be used if not specified.")]
33-
[ResourceGroupCompleter()]
3433
[ValidateNotNullOrEmpty]
34+
[ResourceGroupCompleter]
3535
public override string ResourceGroupName { get; set; }
3636

3737
[Parameter(Position = 0,
3838
Mandatory = true,
3939
ParameterSetName = ResourceGroupParameterSet,
4040
HelpMessage = "The SignalR service name.")]
4141
[ValidateNotNullOrEmpty]
42+
[ResourceNameCompleter(Constants.SignalRResourceType, nameof(ResourceGroupName))]
4243
public string Name { get; set; }
4344

4445
[Parameter(Mandatory = true,
@@ -86,7 +87,7 @@ public override void ExecuteCmdlet()
8687

8788
if (ShouldProcess($"{KeyType} key for {ResourceGroupName}/{Name}", "regenerate"))
8889
{
89-
Client.SignalR.RegenerateKey(ResourceGroupName, Name, new RegenerateKeyParameters(KeyType));
90+
Client.SignalR.RegenerateKey(new RegenerateKeyParameters(KeyType), ResourceGroupName, Name);
9091

9192
if (PassThru)
9293
{
@@ -96,4 +97,4 @@ public override void ExecuteCmdlet()
9697
});
9798
}
9899
}
99-
}
100+
}

src/SignalR/SignalR/Cmdlets/RemoveAzureRmSignalR.cs

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,12 @@
1212
// limitations under the License.
1313
// ----------------------------------------------------------------------------------
1414

15+
using System;
16+
using System.Management.Automation;
1517
using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
1618
using Microsoft.Azure.Commands.SignalR.Models;
1719
using Microsoft.Azure.Commands.SignalR.Properties;
1820
using Microsoft.Azure.Management.SignalR;
19-
using System;
20-
using System.Management.Automation;
2121

2222
namespace Microsoft.Azure.Commands.SignalR.Cmdlets
2323
{
@@ -29,15 +29,16 @@ public class RemoveAzureRmSignalR : SignalRCmdletBase, IWithInputObject, IWithRe
2929
Mandatory = false,
3030
ParameterSetName = ResourceGroupParameterSet,
3131
HelpMessage = "The resource group name. The default one will be used if not specified.")]
32-
[ResourceGroupCompleter()]
3332
[ValidateNotNullOrEmpty]
33+
[ResourceGroupCompleter]
3434
public override string ResourceGroupName { get; set; }
3535

3636
[Parameter(Position = 0,
3737
Mandatory = true,
3838
ParameterSetName = ResourceGroupParameterSet,
3939
HelpMessage = "The SignalR service name.")]
4040
[ValidateNotNullOrEmpty]
41+
[ResourceNameCompleter(Constants.SignalRResourceType, nameof(ResourceGroupName))]
4142
public string Name { get; set; }
4243

4344
[Parameter(Mandatory = true,
@@ -93,4 +94,4 @@ public override void ExecuteCmdlet()
9394
});
9495
}
9596
}
96-
}
97+
}

src/SignalR/SignalR/Cmdlets/RestartAzureRmSignalR.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,8 +29,8 @@ public class RestartAzureRmSignalR : SignalRCmdletBase, IWithInputObject, IWithR
2929
Mandatory = false,
3030
ParameterSetName = ResourceGroupParameterSet,
3131
HelpMessage = "The resource group name. The default one will be used if not specified.")]
32-
[ResourceGroupCompleter()]
3332
[ValidateNotNullOrEmpty()]
33+
[ResourceGroupCompleter]
3434
public override string ResourceGroupName { get; set; }
3535

3636
[Parameter(
@@ -39,6 +39,7 @@ public class RestartAzureRmSignalR : SignalRCmdletBase, IWithInputObject, IWithR
3939
ParameterSetName = ResourceGroupParameterSet,
4040
HelpMessage = "The SignalR service name.")]
4141
[ValidateNotNullOrEmpty()]
42+
[ResourceNameCompleter(Constants.SignalRResourceType, nameof(ResourceGroupName))]
4243
public string Name { get; set; }
4344

4445
[Parameter(
@@ -101,4 +102,4 @@ public override void ExecuteCmdlet()
101102
});
102103
}
103104
}
104-
}
105+
}

src/SignalR/SignalR/Cmdlets/SetAzureRmSignalRUpstream.cs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -13,27 +13,26 @@
1313
// ----------------------------------------------------------------------------------
1414

1515
using System;
16+
using System.Linq;
1617
using System.Management.Automation;
1718
using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
1819
using Microsoft.Azure.Commands.SignalR.Models;
1920
using Microsoft.Azure.Commands.SignalR.Properties;
2021
using Microsoft.Azure.Management.SignalR;
21-
using System.Linq;
22-
using Microsoft.WindowsAzure.Commands.Utilities.Common;
2322
using Newtonsoft.Json;
2423

2524
namespace Microsoft.Azure.Commands.SignalR.Cmdlets
2625
{
2726
[Cmdlet("Set", ResourceManager.Common.AzureRMConstants.AzureRMPrefix + "SignalR" + "Upstream", SupportsShouldProcess = true, DefaultParameterSetName = ResourceGroupParameterSet)]
2827
[OutputType(typeof(PSServerlessUpstreamSettings))]
29-
public class SetAzureRmSignalRUpstream : SignalRCmdletBase , IWithResourceId, IWithInputObject
28+
public class SetAzureRmSignalRUpstream : SignalRCmdletBase, IWithResourceId, IWithInputObject
3029
{
3130
[Parameter(
3231
Mandatory = false,
3332
ParameterSetName = ResourceGroupParameterSet,
3433
HelpMessage = "The resource group name. The default one will be used if not specified.")]
35-
[ResourceGroupCompleter()]
3634
[ValidateNotNullOrEmpty()]
35+
[ResourceGroupCompleter]
3736
public override string ResourceGroupName { get; set; }
3837

3938
[Parameter(
@@ -42,6 +41,7 @@ public class SetAzureRmSignalRUpstream : SignalRCmdletBase , IWithResourceId, I
4241
ParameterSetName = ResourceGroupParameterSet,
4342
HelpMessage = "The SignalR service name.")]
4443
[ValidateNotNullOrEmpty()]
44+
[ResourceNameCompleter(Constants.SignalRResourceType, nameof(ResourceGroupName))]
4545
public string Name { get; set; }
4646

4747
[Parameter(
@@ -111,10 +111,10 @@ public override void ExecuteCmdlet()
111111

112112
var signalr = Client.SignalR.Get(ResourceGroupName, Name);
113113
signalr.Upstream.Templates = Template.Select(t => t.toSDKTemplate()).ToList();
114-
signalr = Client.SignalR.Update(ResourceGroupName, Name, signalr);
114+
signalr = Client.SignalR.Update(signalr, ResourceGroupName, Name);
115115
WriteObject(new PSSignalRResource(signalr).Upstream);
116116
}
117117
});
118118
}
119119
}
120-
}
120+
}

src/SignalR/SignalR/Cmdlets/TestAzureRmSignalRName.cs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414

1515
using System.Management.Automation;
1616
using Microsoft.Azure.Commands.ResourceManager.Common.ArgumentCompleters;
17-
using Microsoft.Azure.Commands.SignalR.Models;
1817
using Microsoft.Azure.Management.SignalR;
1918
using Microsoft.Azure.Management.SignalR.Models;
2019

@@ -25,8 +24,6 @@ namespace Microsoft.Azure.Commands.SignalR.Cmdlets
2524
[OutputType(typeof(bool))]
2625
public class TestAzureRmSignalRName : SignalRCmdletBottom
2726
{
28-
private const string NameAvailabilityType = "Microsoft.SignalRService/SignalR";
29-
3027
[Parameter(
3128
Mandatory = true,
3229
Position = 0,
@@ -49,7 +46,7 @@ public override void ExecuteCmdlet()
4946
RunCmdlet(() =>
5047
{
5148
var parameters = new NameAvailabilityParameters(
52-
type: NameAvailabilityType,
49+
type: Constants.SignalRResourceType,
5350
name: Name);
5451

5552
var availability = Client.SignalR.CheckNameAvailability(Location, parameters);
@@ -58,4 +55,4 @@ public override void ExecuteCmdlet()
5855
});
5956
}
6057
}
61-
}
58+
}

0 commit comments

Comments
 (0)