diff --git a/src/ResourceManager/SignalR/Commands.SignalR/AzureRM.SignalR.psd1 b/src/ResourceManager/SignalR/Commands.SignalR/AzureRM.SignalR.psd1
index 65c60fd560cb..8c0c2e9b7269 100644
--- a/src/ResourceManager/SignalR/Commands.SignalR/AzureRM.SignalR.psd1
+++ b/src/ResourceManager/SignalR/Commands.SignalR/AzureRM.SignalR.psd1
@@ -12,7 +12,7 @@
# RootModule = ''
# Version number of this module.
-ModuleVersion = '0.0.1'
+ModuleVersion = '0.1.0'
# Supported PSEditions
# CompatiblePSEditions = @()
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/GetAzureRmSignalR.cs b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/GetAzureRmSignalR.cs
index a9dc4d1f2ff2..9f441969aebb 100644
--- a/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/GetAzureRmSignalR.cs
+++ b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/GetAzureRmSignalR.cs
@@ -10,27 +10,24 @@ namespace Microsoft.Azure.Commands.SignalR
{
[Cmdlet(VerbsCommon.Get, SignalRNoun, DefaultParameterSetName = ListSignalRServiceParameterSet)]
[OutputType(typeof(PSSignalRResource))]
- public class GetAzureRmSignalR : SignalRCmdletBase
+ public class GetAzureRmSignalR : SignalRCmdletBase, IWithResourceId
{
[Parameter(Position = 0,
Mandatory = false,
ParameterSetName = ListSignalRServiceParameterSet,
- ValueFromPipelineByPropertyName = true,
- HelpMessage = "Resource group name.")]
+ HelpMessage = "The resource group name.")]
[Parameter(Position = 0,
- Mandatory = true,
+ Mandatory = false,
ParameterSetName = ResourceGroupParameterSet,
- ValueFromPipelineByPropertyName = true,
- HelpMessage = "Resource group name.")]
+ HelpMessage = "The resource group name. The default one will be used if not specified.")]
[ResourceGroupCompleter()]
[ValidateNotNullOrEmpty]
- public string ResourceGroupName { get; set; }
+ public override string ResourceGroupName { get; set; }
[Parameter(Position = 1,
Mandatory = true,
- ValueFromPipelineByPropertyName = true,
ParameterSetName = ResourceGroupParameterSet,
- HelpMessage = "SignalR service name.")]
+ HelpMessage = "The SignalR service name.")]
[ValidateNotNullOrEmpty]
public string Name { get; set; }
@@ -58,15 +55,17 @@ public override void ExecuteCmdlet()
WriteObject(new PSSignalRResource(s));
}
break;
+ case ResourceIdParameterSet:
+ this.LoadFromResourceId();
+ var signalrById = Client.Signalr.Get(ResourceGroupName, Name);
+ WriteObject(new PSSignalRResource(signalrById));
+ break;
case ResourceGroupParameterSet:
+ ResolveResourceGroupName();
var signalr = Client.Signalr.Get(ResourceGroupName, Name);
WriteObject(new PSSignalRResource(signalr));
break;
- case ResourceIdParameterSet:
- var resource = new ResourceIdentifier(ResourceId);
- var idSignalR = Client.Signalr.Get(resource.ResourceGroupName, resource.ResourceName);
- WriteObject(new PSSignalRResource(idSignalR));
- break;
+
default:
throw new ArgumentException(Resources.ParameterSetError);
}
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/GetAzureRmSignalRKey.cs b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/GetAzureRmSignalRKey.cs
index a938e8fca783..a898b4807b52 100644
--- a/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/GetAzureRmSignalRKey.cs
+++ b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/GetAzureRmSignalRKey.cs
@@ -6,24 +6,24 @@
using System;
using System.Management.Automation;
-namespace Microsoft.Azure.Commands.SignalR.Cmdlets
+namespace Microsoft.Azure.Commands.SignalR
{
[Cmdlet(VerbsCommon.Get, SignalRKeyNoun, DefaultParameterSetName = ResourceGroupParameterSet)]
[OutputType(typeof(PSSignalRKeys))]
- public class GetAzureRmSignalRKey : SignalRCmdletBase
+ public class GetAzureRmSignalRKey : SignalRCmdletBase, IWithInputObject, IWithResourceId
{
[Parameter(Position = 0,
- Mandatory = true,
+ Mandatory = false,
ParameterSetName = ResourceGroupParameterSet,
- HelpMessage = "Resource group name.")]
+ HelpMessage = "The resource group name. The default one will be used if not specified.")]
[ResourceGroupCompleter()]
[ValidateNotNullOrEmpty]
- public string ResourceGroupName { get; set; }
+ public override string ResourceGroupName { get; set; }
[Parameter(Position = 1,
Mandatory = true,
ParameterSetName = ResourceGroupParameterSet,
- HelpMessage = "SignalR service name.")]
+ HelpMessage = "The SignalR service name.")]
[ValidateNotNullOrEmpty]
public string Name { get; set; }
@@ -47,25 +47,20 @@ public override void ExecuteCmdlet()
RunCmdlet(() =>
{
- ResourceIdentifier resourceId = null;
switch (ParameterSetName)
{
case ResourceGroupParameterSet:
+ ResolveResourceGroupName();
break;
case ResourceIdParameterSet:
- resourceId = new ResourceIdentifier(ResourceId);
+ this.LoadFromResourceId();
break;
case InputObjectParameterSet:
- resourceId = new ResourceIdentifier(InputObject.Id);
+ this.LoadFromInputObject();
break;
default:
throw new ArgumentException(Resources.ParameterSetError);
}
- if (resourceId != null)
- {
- ResourceGroupName = resourceId.ResourceGroupName;
- Name = resourceId.ResourceName;
- }
var keys = Client.Signalr.ListKeys(ResourceGroupName, Name);
WriteObject(new PSSignalRKeys(Name, keys));
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/IWithInputObject.cs b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/IWithInputObject.cs
new file mode 100644
index 000000000000..0205d74e0515
--- /dev/null
+++ b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/IWithInputObject.cs
@@ -0,0 +1,25 @@
+using Microsoft.Azure.Commands.SignalR.Models;
+using Microsoft.Azure.Management.Internal.Resources.Utilities.Models;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Microsoft.Azure.Commands.SignalR
+{
+ public interface IWithInputObject : IWithResourceGroupAndName
+ {
+ PSSignalRResource InputObject { get; }
+ }
+
+ public static class IWithInputObjectExtensions
+ {
+ public static void LoadFromInputObject(this IWithInputObject cmdlet)
+ {
+ var resourceId = new ResourceIdentifier(cmdlet.InputObject.Id);
+ cmdlet.ResourceGroupName = resourceId.ResourceGroupName;
+ cmdlet.Name = resourceId.ResourceName;
+ }
+ }
+}
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/IWithResourceGroupAndName.cs b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/IWithResourceGroupAndName.cs
new file mode 100644
index 000000000000..bf9d1745b0f6
--- /dev/null
+++ b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/IWithResourceGroupAndName.cs
@@ -0,0 +1,14 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Microsoft.Azure.Commands.SignalR
+{
+ public interface IWithResourceGroupAndName
+ {
+ string ResourceGroupName { get; set; }
+ string Name { get; set; }
+ }
+}
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/IWithResourceId.cs b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/IWithResourceId.cs
new file mode 100644
index 000000000000..6931633dc397
--- /dev/null
+++ b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/IWithResourceId.cs
@@ -0,0 +1,24 @@
+using Microsoft.Azure.Management.Internal.Resources.Utilities.Models;
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Microsoft.Azure.Commands.SignalR
+{
+ public interface IWithResourceId : IWithResourceGroupAndName
+ {
+ string ResourceId { get; }
+ }
+
+ public static class IWithResourceIdExtensions
+ {
+ public static void LoadFromResourceId(this IWithResourceId cmdlet)
+ {
+ var resourceId = new ResourceIdentifier(cmdlet.ResourceId);
+ cmdlet.ResourceGroupName = resourceId.ResourceGroupName;
+ cmdlet.Name = resourceId.ResourceName;
+ }
+ }
+}
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/NewAzureRmSignalR.cs b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/NewAzureRmSignalR.cs
index 5d8b9df769da..e49772c4d8c7 100644
--- a/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/NewAzureRmSignalR.cs
+++ b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/NewAzureRmSignalR.cs
@@ -27,55 +27,48 @@
namespace Microsoft.Azure.Commands.SignalR
{
- [Cmdlet(VerbsCommon.New, "AzureRmSignalR", SupportsShouldProcess = true)]
+ [Cmdlet(VerbsCommon.New, SignalRNoun, SupportsShouldProcess = true)]
[OutputType(typeof(PSSignalRResource))]
- public sealed class NewAzureRmSignalR : AzureRMCmdlet
+ public sealed class NewAzureRmSignalR : SignalRCmdletBase
{
- ///
- /// TODO: smart command with default resource group name
- ///
+ private const string DefaultSku = "Basic_DS2";
+
[Parameter(
Mandatory = false,
- Position = 0)]
+ Position = 0,
+ HelpMessage = "The resource group name. The default one will be used if not specified.")]
[ValidateNotNullOrEmpty()]
- public string ResourceGroupName { get; set; }
+ public override string ResourceGroupName { get; set; }
[Parameter(
Mandatory = true,
- Position = 1)]
+ Position = 1,
+ HelpMessage = "The SignalR service name.")]
[ValidateNotNullOrEmpty()]
public string Name { get; set; }
- ///
- /// TODO: smart command with default location based on ResourceGroupName
- ///
[Parameter(
Mandatory = false,
- Position = 2)]
- [LocationCompleter("Microsoft.SignalR/signalRs")]
+ Position = 2,
+ HelpMessage = "The SignalR service location. The resource group location will be used if not specified.")]
+ [LocationCompleter("Microsoft.SignalR/SignalR")]
[ValidateNotNullOrEmpty()]
public string Location { get; set; }
- ///
- /// TODO:
- /// - Assign default value.
- /// - validation set or tab completion
- ///
- [Parameter(Mandatory = false)]
- public string Sku { get; set; }
-
- ///
- /// TODO:
- /// - Default host name prefix.
- /// - alias `DomainNameLabel`
- ///
- [Parameter(Mandatory = false)]
- public string HostNamePrefix { get; set; }
-
- [Parameter(Mandatory = false)]
+ [Parameter(
+ Mandatory = false,
+ HelpMessage = "The SignalR service SKU.")]
+ [PSArgumentCompleter("Basic_DS2")]
+ public string Sku { get; set; } = DefaultSku;
+
+ [Parameter(
+ Mandatory = false,
+ HelpMessage = "The tags for the SignalR service.")]
public IDictionary Tag { get; set; }
- [Parameter(Mandatory = false)]
+ [Parameter(
+ Mandatory = false,
+ HelpMessage = "Run the cmdlet in background job.")]
public SwitchParameter AsJob { get; set; }
public override void ExecuteCmdlet()
@@ -106,6 +99,7 @@ public Parameters(NewAzureRmSignalR cmdlet)
public async Task> CreateConfigAsync()
{
_cmdlet.ResourceGroupName = _cmdlet.ResourceGroupName ?? _cmdlet.Name;
+ _cmdlet.ResolveResourceGroupName();
var resourceGroup = ResourceGroupStrategy.CreateResourceGroupConfig(
_cmdlet.ResourceGroupName);
@@ -115,8 +109,8 @@ public async Task> CreateConfigAsync()
name: _cmdlet.Name,
createModel: engine => new SignalRResource(
tags: _cmdlet.Tag,
- signalrsku: _cmdlet.Sku == null ? null : new ResourceSku(name: _cmdlet.Sku),
- hostNamePrefix: _cmdlet.HostNamePrefix));
+ signalrsku: new ResourceSku(_cmdlet.Sku, capacity: 1), // we only allow capacity 1 in public preview, this may be a parameter in future.
+ hostNamePrefix: _cmdlet.Name)); // hostNamePrefix is just a placeholder and ignored in the resource provider.
}
}
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/NewAzureRmSignalRKey.cs b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/NewAzureRmSignalRKey.cs
index 247b46b6c7f4..f9e59b6430b8 100644
--- a/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/NewAzureRmSignalRKey.cs
+++ b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/NewAzureRmSignalRKey.cs
@@ -7,24 +7,24 @@
using System;
using System.Management.Automation;
-namespace Microsoft.Azure.Commands.SignalR.Cmdlets
+namespace Microsoft.Azure.Commands.SignalR
{
[Cmdlet(VerbsCommon.New, SignalRKeyNoun, SupportsShouldProcess = true, DefaultParameterSetName = ResourceGroupParameterSet)]
- [OutputType(typeof(PSSignalRKeys))]
- public class NewAzureRmSignalRKey : SignalRCmdletBase
+ [OutputType(typeof(bool))]
+ public class NewAzureRmSignalRKey : SignalRCmdletBase, IWithInputObject, IWithResourceId
{
[Parameter(Position = 0,
- Mandatory = true,
+ Mandatory = false,
ParameterSetName = ResourceGroupParameterSet,
- HelpMessage = "Resource group name.")]
+ HelpMessage = "The resource group name. The default one will be used if not specified.")]
[ResourceGroupCompleter()]
[ValidateNotNullOrEmpty]
- public string ResourceGroupName { get; set; }
+ public override string ResourceGroupName { get; set; }
[Parameter(Position = 1,
Mandatory = true,
ParameterSetName = ResourceGroupParameterSet,
- HelpMessage = "SignalR service name.")]
+ HelpMessage = "The SignalR service name.")]
[ValidateNotNullOrEmpty]
public string Name { get; set; }
@@ -47,36 +47,38 @@ public class NewAzureRmSignalRKey : SignalRCmdletBase
[ValidateSet("Primary", "Secondary", IgnoreCase = true)]
public string KeyType { get; set; }
+ [Parameter(Mandatory = false)]
+ public SwitchParameter PassThru { get; set; }
+
public override void ExecuteCmdlet()
{
base.ExecuteCmdlet();
RunCmdlet(() =>
{
- ResourceIdentifier resourceId = null;
switch (ParameterSetName)
{
case ResourceGroupParameterSet:
+ ResolveResourceGroupName();
break;
case ResourceIdParameterSet:
- resourceId = new ResourceIdentifier(ResourceId);
+ this.LoadFromResourceId();
break;
case InputObjectParameterSet:
- resourceId = new ResourceIdentifier(InputObject.Id);
+ this.LoadFromInputObject();
break;
default:
throw new ArgumentException(Resources.ParameterSetError);
}
- if (resourceId != null)
- {
- ResourceGroupName = resourceId.ResourceGroupName;
- Name = resourceId.ResourceName;
- }
if (ShouldProcess($"{KeyType} key for {ResourceGroupName}/{Name}", "regenerate"))
{
- var keys = Client.Signalr.RegenerateKey(ResourceGroupName, Name, new RegenerateKeyParameters(KeyType));
- WriteObject(new PSSignalRKeys(Name, keys));
+ Client.Signalr.RegenerateKey(ResourceGroupName, Name, new RegenerateKeyParameters(KeyType));
+
+ if (PassThru)
+ {
+ WriteObject(true);
+ }
}
});
}
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/RemoveAzureRmSignalR.cs b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/RemoveAzureRmSignalR.cs
index ddeaae658c58..4509b9192db6 100644
--- a/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/RemoveAzureRmSignalR.cs
+++ b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/RemoveAzureRmSignalR.cs
@@ -9,20 +9,21 @@
namespace Microsoft.Azure.Commands.SignalR
{
[Cmdlet(VerbsCommon.Remove, SignalRNoun, SupportsShouldProcess = true, DefaultParameterSetName = ResourceGroupParameterSet)]
- public class RemoveAzureRmSignalR : SignalRCmdletBase
+ [OutputType(typeof(bool))]
+ public class RemoveAzureRmSignalR : SignalRCmdletBase, IWithInputObject, IWithResourceId
{
[Parameter(Position = 0,
- Mandatory = true,
+ Mandatory = false,
ParameterSetName = ResourceGroupParameterSet,
- HelpMessage = "Resource group name.")]
+ HelpMessage = "The resource group name. The default one will be used if not specified.")]
[ResourceGroupCompleter()]
[ValidateNotNullOrEmpty]
- public string ResourceGroupName { get; set; }
+ public override string ResourceGroupName { get; set; }
[Parameter(Position = 1,
Mandatory = true,
ParameterSetName = ResourceGroupParameterSet,
- HelpMessage = "SignalR service name.")]
+ HelpMessage = "The SignalR service name.")]
[ValidateNotNullOrEmpty]
public string Name { get; set; }
@@ -40,7 +41,7 @@ public class RemoveAzureRmSignalR : SignalRCmdletBase
[ValidateNotNull]
public PSSignalRResource InputObject { get; set; }
- [Parameter(Mandatory = false, HelpMessage = "Run cmdlet in the background")]
+ [Parameter(Mandatory = false, HelpMessage = "Run cmdlet in background.")]
public SwitchParameter AsJob { get; set; }
[Parameter(Mandatory = false)]
@@ -52,34 +53,29 @@ public override void ExecuteCmdlet()
RunCmdlet(() =>
{
- ResourceIdentifier resourceId = null;
switch (ParameterSetName)
{
case ResourceGroupParameterSet:
+ ResolveResourceGroupName();
break;
case ResourceIdParameterSet:
- resourceId = new ResourceIdentifier(ResourceId);
+ this.LoadFromResourceId();
break;
case InputObjectParameterSet:
- resourceId = new ResourceIdentifier(InputObject.Id);
+ this.LoadFromInputObject();
break;
default:
throw new ArgumentException(Resources.ParameterSetError);
}
- if (resourceId != null)
- {
- ResourceGroupName = resourceId.ResourceGroupName;
- Name = resourceId.ResourceName;
- }
if (ShouldProcess($"SignalR service {ResourceGroupName}/{Name}", "remove"))
{
Client.Signalr.Delete(ResourceGroupName, Name);
- }
- if (PassThru)
- {
- WriteObject(true);
+ if (PassThru)
+ {
+ WriteObject(true);
+ }
}
});
}
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/SignalRCmdletBase.cs b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/SignalRCmdletBase.cs
index 3719a3d5c003..27aa99f7f1cc 100644
--- a/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/SignalRCmdletBase.cs
+++ b/src/ResourceManager/SignalR/Commands.SignalR/Cmdlets/SignalRCmdletBase.cs
@@ -1,6 +1,7 @@
using Microsoft.Azure.Commands.Common.Authentication;
using Microsoft.Azure.Commands.Common.Authentication.Abstractions;
using Microsoft.Azure.Commands.ResourceManager.Common;
+using Microsoft.Azure.Commands.SignalR.Properties;
using Microsoft.Azure.Management.SignalR;
using Microsoft.Rest;
using System;
@@ -43,5 +44,35 @@ private T BuildClient(string endpoint = null, Func postBuild = null) wh
DefaultProfile.DefaultContext, endpoint ?? AzureEnvironment.Endpoint.ResourceManager);
return postBuild == null ? instance : postBuild(instance);
}
+
+ public abstract string ResourceGroupName { get; set; }
+
+ ///
+ /// Returns the default resource group set by Set-AzureRmDefault, if present.
+ ///
+ protected string DefaultResourceGroupName
+ {
+ get
+ {
+ IAzureContext context;
+ TryGetDefaultContext(out context);
+ return context?.GetProperty(Resources.DefaultResourceGroupKey);
+ }
+ }
+
+ ///
+ /// Use the DefaultResourceGroupName for ResourceGroupName if not specified, and optionally validate it.
+ ///
+ protected void ResolveResourceGroupName(bool required = true)
+ {
+ if (string.IsNullOrEmpty(ResourceGroupName))
+ {
+ ResourceGroupName = DefaultResourceGroupName;
+ }
+ if (required && string.IsNullOrEmpty(ResourceGroupName))
+ {
+ throw new ArgumentException("ResourceGroupName is not specified and the default value is not present.");
+ }
+ }
}
}
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/Commands.SignalR.csproj b/src/ResourceManager/SignalR/Commands.SignalR/Commands.SignalR.csproj
index 8d224e9c554b..9d1a6132a9f1 100644
--- a/src/ResourceManager/SignalR/Commands.SignalR/Commands.SignalR.csproj
+++ b/src/ResourceManager/SignalR/Commands.SignalR/Commands.SignalR.csproj
@@ -15,6 +15,9 @@
+
+
+
@@ -80,6 +83,12 @@
PreserveNewest
+
+
+
+
+
+
PreserveNewest
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/Microsoft.Azure.Commands.SignalR.format.ps1xml b/src/ResourceManager/SignalR/Commands.SignalR/Microsoft.Azure.Commands.SignalR.format.ps1xml
index 0edf61654409..bec612672a05 100644
--- a/src/ResourceManager/SignalR/Commands.SignalR/Microsoft.Azure.Commands.SignalR.format.ps1xml
+++ b/src/ResourceManager/SignalR/Commands.SignalR/Microsoft.Azure.Commands.SignalR.format.ps1xml
@@ -6,25 +6,16 @@
Microsoft.Azure.Commands.SignalR.Models.PSSignalRResource
-
- $_.Location
-
-
-
- 17
+
+ 50
Left
-
- 10
- Left
-
-
-
- 25
+
+ 14
Left
@@ -47,13 +38,10 @@
- $_.Name
-
-
- $_.Sku
+ $_.HostName
- $_.HostName
+ $_.Location
$_.ServerPort
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/Properties/AssemblyInfo.cs b/src/ResourceManager/SignalR/Commands.SignalR/Properties/AssemblyInfo.cs
index dbdaa7c04f5f..2e61c9431cc4 100644
--- a/src/ResourceManager/SignalR/Commands.SignalR/Properties/AssemblyInfo.cs
+++ b/src/ResourceManager/SignalR/Commands.SignalR/Properties/AssemblyInfo.cs
@@ -46,5 +46,5 @@
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
-[assembly: AssemblyVersion("0.0.1")]
-[assembly: AssemblyFileVersion("0.0.1")]
+[assembly: AssemblyVersion("0.1.0")]
+[assembly: AssemblyFileVersion("0.1.0")]
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/Properties/Resources.Designer.cs b/src/ResourceManager/SignalR/Commands.SignalR/Properties/Resources.Designer.cs
index a45506ffaf3f..7c632d6e722a 100644
--- a/src/ResourceManager/SignalR/Commands.SignalR/Properties/Resources.Designer.cs
+++ b/src/ResourceManager/SignalR/Commands.SignalR/Properties/Resources.Designer.cs
@@ -60,6 +60,15 @@ internal Resources() {
}
}
+ ///
+ /// Looks up a localized string similar to Default Resource Group.
+ ///
+ internal static string DefaultResourceGroupKey {
+ get {
+ return ResourceManager.GetString("DefaultResourceGroupKey", resourceCulture);
+ }
+ }
+
///
/// Looks up a localized string similar to The parameter set could not be determined from the provided parameters. Please check the documentation for appropriate parameters, and report this issue at https://github.com/azure/azure-powershell/issues.
///
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/Properties/Resources.resx b/src/ResourceManager/SignalR/Commands.SignalR/Properties/Resources.resx
index 16fe6716db3b..9c3041abf941 100644
--- a/src/ResourceManager/SignalR/Commands.SignalR/Properties/Resources.resx
+++ b/src/ResourceManager/SignalR/Commands.SignalR/Properties/Resources.resx
@@ -117,6 +117,9 @@
System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
+
+ Default Resource Group
+
The parameter set could not be determined from the provided parameters. Please check the documentation for appropriate parameters, and report this issue at https://github.com/azure/azure-powershell/issues
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/Strategies/SignalRRp/SignalRStrategy.cs b/src/ResourceManager/SignalR/Commands.SignalR/Strategies/SignalRRp/SignalRStrategy.cs
index cb6076b79057..6cb831e22337 100644
--- a/src/ResourceManager/SignalR/Commands.SignalR/Strategies/SignalRRp/SignalRStrategy.cs
+++ b/src/ResourceManager/SignalR/Commands.SignalR/Strategies/SignalRRp/SignalRStrategy.cs
@@ -8,14 +8,14 @@ static class SignalRStrategy
{
public static ResourceStrategy Strategy { get; }
= ResourceStrategy.Create(
- type: new ResourceType("Microsoft.SignalRService", "signalRs"),
+ type: new ResourceType("Microsoft.SignalRService", "SignalR"),
getOperations: (SignalRManagementClient client) => client.Signalr,
getAsync: (o, p) => o.GetAsync(p.ResourceGroupName, p.Name, p.CancellationToken),
createOrUpdateAsync: (o, p) => o.CreateOrUpdateAsync(
p.ResourceGroupName,
p.Name,
new SignalRCreateParameters(
- p.Model.Location,
+ p.Model.Location,
p.Model.Tags,
p.Model.Signalrsku,
new SignalRCreateOrUpdateProperties(p.Model.HostNamePrefix)),
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/help/AzureRM.SignalR.md b/src/ResourceManager/SignalR/Commands.SignalR/help/AzureRM.SignalR.md
new file mode 100644
index 000000000000..7f469a70cbd7
--- /dev/null
+++ b/src/ResourceManager/SignalR/Commands.SignalR/help/AzureRM.SignalR.md
@@ -0,0 +1,28 @@
+---
+Module Name: AzureRM.SignalR
+Module Guid: 7aa1b2c0-72cb-448a-9c12-c45bdf3e088d
+Download Help Link: {{Please enter FwLink manually}}
+Help Version: 0.1.0
+Locale: en-US
+---
+
+# AzureRM.SignalR Module
+## Description
+Cmdlets to interact with the Azure SignalR service.
+
+## AzureRM.SignalR Cmdlets
+### [Get-AzureRmSignalR](Get-AzureRmSignalR.md)
+Get a specific SignalR service or all the SignalR services in a resource group or a subscription.
+
+### [Get-AzureRmSignalRKey](Get-AzureRmSignalRKey.md)
+Get the access keys of a SignalR service.
+
+### [New-AzureRmSignalR](New-AzureRmSignalR.md)
+Create a SignalR service.
+
+### [New-AzureRmSignalRKey](New-AzureRmSignalRKey.md)
+Regenerate an access key for a SignalR service.
+
+### [Remove-AzureRmSignalR](Remove-AzureRmSignalR.md)
+Remove a SignalR service.
+
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/help/Get-AzureRmSignalR.md b/src/ResourceManager/SignalR/Commands.SignalR/help/Get-AzureRmSignalR.md
new file mode 100644
index 000000000000..f0eeb4b02113
--- /dev/null
+++ b/src/ResourceManager/SignalR/Commands.SignalR/help/Get-AzureRmSignalR.md
@@ -0,0 +1,156 @@
+---
+external help file: Microsoft.Azure.Commands.SignalR.dll-Help.xml
+Module Name: AzureRM.SignalR
+online version:
+schema: 2.0.0
+---
+
+# Get-AzureRmSignalR
+
+## SYNOPSIS
+Get a specific SignalR service or all the SignalR services in a resource group or a subscription.
+
+## SYNTAX
+
+### ListSignalRServiceParameterSet (Default)
+```
+Get-AzureRmSignalR [[-ResourceGroupName] ] [-DefaultProfile ]
+ []
+```
+
+### ResourceGroupParameterSet
+```
+Get-AzureRmSignalR [[-ResourceGroupName] ] [-Name] [-DefaultProfile ]
+ []
+```
+
+### ResourceIdParameterSet
+```
+Get-AzureRmSignalR -ResourceId [-DefaultProfile ] []
+```
+
+## DESCRIPTION
+Get a specific SignalR service or all the SignalR services in a resource group or a subscription.
+
+## EXAMPLES
+
+### Get all SignalR services in the subscription
+```powershell
+PS C:\> Get-AzureRmSignalR
+
+HostName Location ServerPort PublicPort ProvisioningState
+-------- -------- ---------- ---------- -----------------
+mysignalr1.servicedev.signalr.net eastus 5002 5001 Succeeded
+mysignalr2.servicedev.signalr.net eastus 5002 5001 Succeeded
+mysignalr3.servicedev.signalr.net eastus 5002 5001 Creating
+```
+
+### Get all SignalR services in a resource group
+
+```powershell
+PS C:\> Get-AzureRmSignalR -ResourceGroupName myResourceGroup
+
+HostName Location ServerPort PublicPort ProvisioningState
+-------- -------- ---------- ---------- -----------------
+mysignalr1.servicedev.signalr.net eastus 5002 5001 Succeeded
+mysignalr2.servicedev.signalr.net eastus 5002 5001 Succeeded
+```
+
+### Get a specific SignalR service
+
+```powershell
+PS C:\> Get-AzureRmSignalR -ResourceGroupName myResourceGroup -Name mysignalr1
+
+HostName Location ServerPort PublicPort ProvisioningState
+-------- -------- ---------- ---------- -----------------
+mysignalr1.servicedev.signalr.net eastus 5002 5001 Succeeded
+```
+
+### Get a specific SignalR service from the default resource group
+
+```powershell
+PS C:\> Get-AzureRmSignalR -Name mysignalr2
+
+HostName Location ServerPort PublicPort ProvisioningState
+-------- -------- ---------- ---------- -----------------
+mysignalr2.servicedev.signalr.net eastus 5002 5001 Succeeded
+```
+
+The default resource group can be set by `Set-AzureRmDefault -ResourceGroupName myResourceGroup`.
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Name
+SignalR service name.
+
+```yaml
+Type: String
+Parameter Sets: ResourceGroupParameterSet
+Aliases:
+
+Required: True
+Position: 1
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Resource group name.
+
+```yaml
+Type: String
+Parameter Sets: ListSignalRServiceParameterSet, ResourceGroupParameterSet
+Aliases:
+
+Required: False
+Position: 0
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceId
+The SignalR service resource ID.
+
+```yaml
+Type: String
+Parameter Sets: ResourceIdParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### System.String
+
+## OUTPUTS
+
+### Microsoft.Azure.Commands.SignalR.Models.PSSignalRResource
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/help/Get-AzureRmSignalRKey.md b/src/ResourceManager/SignalR/Commands.SignalR/help/Get-AzureRmSignalRKey.md
new file mode 100644
index 000000000000..ea7fdd1765fe
--- /dev/null
+++ b/src/ResourceManager/SignalR/Commands.SignalR/help/Get-AzureRmSignalRKey.md
@@ -0,0 +1,147 @@
+---
+external help file: Microsoft.Azure.Commands.SignalR.dll-Help.xml
+Module Name: AzureRM.SignalR
+online version:
+schema: 2.0.0
+---
+
+# Get-AzureRmSignalRKey
+
+## SYNOPSIS
+Get the access keys of a SignalR service.
+
+## SYNTAX
+
+### ResourceGroupParameterSet (Default)
+```
+Get-AzureRmSignalRKey [[-ResourceGroupName] ] [-Name]
+ [-DefaultProfile ] []
+```
+
+### ResourceIdParameterSet
+```
+Get-AzureRmSignalRKey -ResourceId [-DefaultProfile ] []
+```
+
+### InputObjectParameterSet
+```
+Get-AzureRmSignalRKey -InputObject [-DefaultProfile ]
+ []
+```
+
+## DESCRIPTION
+Get the access keys of a SignalR service.
+
+## EXAMPLES
+
+### Get access keys of a specific SignalR service
+```powershell
+PS C:\> Get-AzureRmSignalRKey -ResourceGroupName myResourceGroup -Name mysignalr1
+
+Name PrimaryKey SecondaryKey
+---- ---------- ------------
+mysignalr1 vmYRhoM62PMkNe/CSSPdMSxokn+WZEFmOQNt77PovDs= 2+HkuxAA34xiZFFiDsVM0uDyzCsg6GKsdXSjN4C/YFQ=
+```
+
+### Get access keys from a SignalR service object in pipe
+
+```powershell
+PS C:\> Get-AzureRmSignalR -ResourceGroupName myResourceGroup -Name mysignalr1 | Get-AzureRmSignalRKey
+
+Name PrimaryKey SecondaryKey
+---- ---------- ------------
+mysignalr1 vmYRhoM62PMkNe/CSSPdMSxokn+WZEFmOQNt77PovDs= 2+HkuxAA34xiZFFiDsVM0uDyzCsg6GKsdXSjN4C/YFQ=
+```
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+The SignalR resource object.
+
+```yaml
+Type: PSSignalRResource
+Parameter Sets: InputObjectParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+SignalR service name.
+
+```yaml
+Type: String
+Parameter Sets: ResourceGroupParameterSet
+Aliases:
+
+Required: True
+Position: 1
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Resource group name.
+
+```yaml
+Type: String
+Parameter Sets: ResourceGroupParameterSet
+Aliases:
+
+Required: False
+Position: 0
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceId
+The SignalR service resource ID.
+
+```yaml
+Type: String
+Parameter Sets: ResourceIdParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### System.String
+Microsoft.Azure.Commands.SignalR.Models.PSSignalRResource
+
+## OUTPUTS
+
+### Microsoft.Azure.Commands.SignalR.Models.PSSignalRKeys
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/help/New-AzureRmSignalR.md b/src/ResourceManager/SignalR/Commands.SignalR/help/New-AzureRmSignalR.md
new file mode 100644
index 000000000000..0bc690960361
--- /dev/null
+++ b/src/ResourceManager/SignalR/Commands.SignalR/help/New-AzureRmSignalR.md
@@ -0,0 +1,192 @@
+---
+external help file: Microsoft.Azure.Commands.SignalR.dll-Help.xml
+Module Name: AzureRM.SignalR
+online version:
+schema: 2.0.0
+---
+
+# New-AzureRmSignalR
+
+## SYNOPSIS
+Create a SignalR service.
+
+## SYNTAX
+
+```
+New-AzureRmSignalR [[-ResourceGroupName] ] [-Name] [[-Location] ] [-Sku ]
+ [-Tag ] [-AsJob]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+## DESCRIPTION
+Create a SignalR service.
+
+The following values will be used for the parameters if not specified:
+
+* `ResourceGroupName`: the default resource group set by `Set-AzureRmDefault -ResourceGroupName`.
+* `Location`: the location of the resource group
+* `Sku`: Basic_DS2
+
+## EXAMPLES
+
+### Create a SignalR serivce
+```powershell
+PS C:\> New-AzureRmSignalR -ResourceGroupName myResourceGroup1 -Name mysignalr1 -Location eastus -Sku Basic_DS2
+
+HostName Location ServerPort PublicPort ProvisioningState
+-------- -------- ---------- ---------- -----------------
+mysignalr1.servicedev.signalr.net eastus 5002 5001 Succeeded
+```
+
+## PARAMETERS
+
+### -AsJob
+Run the cmdlet in background job.
+
+```yaml
+Type: SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Location
+The SignalR service location. The resource group location will be used if not specified.
+
+```yaml
+Type: String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: 2
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Name
+The SignalR service name.
+
+```yaml
+Type: String
+Parameter Sets: (All)
+Aliases:
+
+Required: True
+Position: 1
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+The resource group name. The default one will be used if not specified.
+
+```yaml
+Type: String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: 0
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Sku
+The SignalR service SKU.
+
+```yaml
+Type: String
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: Basic_DS2
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Tag
+The tags for the SignalR service.
+
+```yaml
+Type: System.Collections.Generic.IDictionary`2[System.String,System.String]
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs.
+The cmdlet is not run.
+
+```yaml
+Type: SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### None
+
+## OUTPUTS
+
+### Microsoft.Azure.Commands.SignalR.Models.PSSignalRResource
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/help/New-AzureRmSignalRKey.md b/src/ResourceManager/SignalR/Commands.SignalR/help/New-AzureRmSignalRKey.md
new file mode 100644
index 000000000000..5b822ea192a2
--- /dev/null
+++ b/src/ResourceManager/SignalR/Commands.SignalR/help/New-AzureRmSignalRKey.md
@@ -0,0 +1,198 @@
+---
+external help file: Microsoft.Azure.Commands.SignalR.dll-Help.xml
+Module Name: AzureRM.SignalR
+online version:
+schema: 2.0.0
+---
+
+# New-AzureRmSignalRKey
+
+## SYNOPSIS
+Regenerate an access key for a SignalR service.
+
+## SYNTAX
+
+### ResourceGroupParameterSet (Default)
+```
+New-AzureRmSignalRKey [[-ResourceGroupName] ] [-Name] -KeyType [-PassThru]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+### ResourceIdParameterSet
+```
+New-AzureRmSignalRKey -ResourceId -KeyType [-PassThru]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+### InputObjectParameterSet
+```
+New-AzureRmSignalRKey -InputObject -KeyType [-PassThru]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+## DESCRIPTION
+Regenerate an access key for a SignalR service.
+
+## EXAMPLES
+
+### Regenerate the primary key
+```powershell
+PS C:\> New-AzureRmSignalRKey -ResourceGroupName myResourceGroup -Name mysignalr1 -KeyType Primary -PassThru
+
+True
+```
+
+## PARAMETERS
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+The SignalR resource object.
+
+```yaml
+Type: PSSignalRResource
+Parameter Sets: InputObjectParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -KeyType
+The key type, either Primary or Secondary.
+
+```yaml
+Type: String
+Parameter Sets: (All)
+Aliases:
+Accepted values: Primary, Secondary
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -Name
+SignalR service name.
+
+```yaml
+Type: String
+Parameter Sets: ResourceGroupParameterSet
+Aliases:
+
+Required: True
+Position: 1
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns true if the regeneration was completed successfully.
+
+```yaml
+Type: SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Resource group name.
+
+```yaml
+Type: String
+Parameter Sets: ResourceGroupParameterSet
+Aliases:
+
+Required: False
+Position: 0
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceId
+The SignalR service resource ID.
+
+```yaml
+Type: String
+Parameter Sets: ResourceIdParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs.
+The cmdlet is not run.
+
+```yaml
+Type: SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### System.String
+Microsoft.Azure.Commands.SignalR.Models.PSSignalRResource
+
+## OUTPUTS
+
+### Microsoft.Azure.Commands.SignalR.Models.PSSignalRKeys
+
+## NOTES
+
+## RELATED LINKS
diff --git a/src/ResourceManager/SignalR/Commands.SignalR/help/Remove-AzureRmSignalR.md b/src/ResourceManager/SignalR/Commands.SignalR/help/Remove-AzureRmSignalR.md
new file mode 100644
index 000000000000..ad012589b757
--- /dev/null
+++ b/src/ResourceManager/SignalR/Commands.SignalR/help/Remove-AzureRmSignalR.md
@@ -0,0 +1,202 @@
+---
+external help file: Microsoft.Azure.Commands.SignalR.dll-Help.xml
+Module Name: AzureRM.SignalR
+online version:
+schema: 2.0.0
+---
+
+# Remove-AzureRmSignalR
+
+## SYNOPSIS
+Remove a SignalR service.
+
+## SYNTAX
+
+### ResourceGroupParameterSet (Default)
+```
+Remove-AzureRmSignalR [[-ResourceGroupName] ] [-Name] [-AsJob] [-PassThru]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+### ResourceIdParameterSet
+```
+Remove-AzureRmSignalR -ResourceId [-AsJob] [-PassThru] [-DefaultProfile ]
+ [-WhatIf] [-Confirm] []
+```
+
+### InputObjectParameterSet
+```
+Remove-AzureRmSignalR -InputObject [-AsJob] [-PassThru]
+ [-DefaultProfile ] [-WhatIf] [-Confirm] []
+```
+
+## DESCRIPTION
+Remove a SignalR service.
+
+## EXAMPLES
+
+### Remove a SignalR service
+```powershell
+PS C:\> Remove-AzureRmSignalR -ResourceGroupName myResourceGroup -Name mysignalr1 -PassThru
+
+True
+```
+
+### Remove all SignalR service from pipe
+```powershell
+PS C:\> Get-AzureRmSignalR -ResourceGroupName myResourceGroup | Remove-AzureRmSignalR
+```
+
+## PARAMETERS
+
+### -AsJob
+Run cmdlet in the background
+
+```yaml
+Type: SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -DefaultProfile
+The credentials, account, tenant, and subscription used for communication with Azure.
+
+```yaml
+Type: IAzureContextContainer
+Parameter Sets: (All)
+Aliases: AzureRmContext, AzureCredential
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -InputObject
+The SignalR resource object.
+
+```yaml
+Type: PSSignalRResource
+Parameter Sets: InputObjectParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Name
+SignalR service name.
+
+```yaml
+Type: String
+Parameter Sets: ResourceGroupParameterSet
+Aliases:
+
+Required: True
+Position: 1
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -PassThru
+Returns true if the removal was completed successfully.
+
+```yaml
+Type: SwitchParameter
+Parameter Sets: (All)
+Aliases:
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceGroupName
+Resource group name.
+
+```yaml
+Type: String
+Parameter Sets: ResourceGroupParameterSet
+Aliases:
+
+Required: False
+Position: 0
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -ResourceId
+The SignalR service resource ID.
+
+```yaml
+Type: String
+Parameter Sets: ResourceIdParameterSet
+Aliases:
+
+Required: True
+Position: Named
+Default value: None
+Accept pipeline input: True (ByValue)
+Accept wildcard characters: False
+```
+
+### -Confirm
+Prompts you for confirmation before running the cmdlet.
+
+```yaml
+Type: SwitchParameter
+Parameter Sets: (All)
+Aliases: cf
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### -WhatIf
+Shows what would happen if the cmdlet runs.
+The cmdlet is not run.
+
+```yaml
+Type: SwitchParameter
+Parameter Sets: (All)
+Aliases: wi
+
+Required: False
+Position: Named
+Default value: None
+Accept pipeline input: False
+Accept wildcard characters: False
+```
+
+### CommonParameters
+This cmdlet supports the common parameters: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutVariable, -OutBuffer, -PipelineVariable, -Verbose, -WarningAction, and -WarningVariable. For more information, see about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216).
+
+## INPUTS
+
+### System.String
+Microsoft.Azure.Commands.SignalR.Models.PSSignalRResource
+
+## OUTPUTS
+
+### System.Object
+
+## NOTES
+
+## RELATED LINKS