Skip to content

Commit dc8753e

Browse files
authored
Merge pull request #11200 from hjhhh3000vitae/tenantLevelResourceId
Properly generate tenant-level resource id from tenant parameter set
2 parents b09d44c + b26e6bc commit dc8753e

File tree

4 files changed

+20
-16
lines changed

4 files changed

+20
-16
lines changed

ChangeLog.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,10 @@
44
* Az.IotHub added cmdlets to support to manage devices.
55
* Az.SqlVirtualMachine added cmdlets for Availability Group Listener.
66

7+
#### Az.Resource
8+
* Fixed bug preventing correct tenant-level resource id generation.
9+
* Fixed typo.
10+
711
#### Az.Accounts
812
* Added SubscriptionId, TenantId, and execution time into data of client side telemetry
913

src/Advisor/Advisor/Cmdlets/Utilities/RecommendationHelper.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ public static PsAzureAdvisorResourceRecommendationBase RecommendationFilterByRec
115115
/// Filter recommendations by given resourceId.
116116
/// </summary>
117117
/// <param name="recListTobeFiltered">List to be filtered</param>
118-
/// <param name="resourceId">ResoruceId of the recommendation.</param>
118+
/// <param name="resourceId">ResourceId of the recommendation.</param>
119119
/// <returns>Recommendation of PsAzureAdvisorResourceRecommendationBase type</returns>
120120
public static List<PsAzureAdvisorResourceRecommendationBase> RecommendationFilterByResourceId(IEnumerable<PsAzureAdvisorResourceRecommendationBase> recListTobeFiltered, string resourceId)
121121
{

src/Resources/ResourceManager/Implementation/CmdletBase/ResourceManipulationCmdletBase.cs

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,12 @@ public abstract class ResourceManipulationCmdletBase : ResourceManagerCmdletBase
2828
/// <summary>
2929
/// The subscription level parameter set.
3030
/// </summary>
31-
internal const string SubscriptionLevelResoruceParameterSet = "BySubscriptionLevel";
31+
internal const string SubscriptionLevelResourceParameterSet = "BySubscriptionLevel";
3232

3333
/// <summary>
3434
/// The tenant level parameter set.
3535
/// </summary>
36-
internal const string TenantLevelResoruceParameterSet = "ByTenantLevel";
36+
internal const string TenantLevelResourceParameterSet = "ByTenantLevel";
3737

3838
/// <summary>
3939
/// The tenant level parameter set.
@@ -52,32 +52,32 @@ public abstract class ResourceManipulationCmdletBase : ResourceManagerCmdletBase
5252
/// Gets or sets the extension resource name parameter.
5353
/// </summary>
5454
[Alias("Name")]
55-
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.SubscriptionLevelResoruceParameterSet, Mandatory = true, ValueFromPipelineByPropertyName = true, HelpMessage = "The resource name. e.g. to specify a database MyServer/MyDatabase.")]
56-
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.TenantLevelResoruceParameterSet, Mandatory = true, ValueFromPipelineByPropertyName = true, HelpMessage = "The resource name. e.g. to specify a database MyServer/MyDatabase.")]
55+
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.SubscriptionLevelResourceParameterSet, Mandatory = true, ValueFromPipelineByPropertyName = true, HelpMessage = "The resource name. e.g. to specify a database MyServer/MyDatabase.")]
56+
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.TenantLevelResourceParameterSet, Mandatory = true, ValueFromPipelineByPropertyName = true, HelpMessage = "The resource name. e.g. to specify a database MyServer/MyDatabase.")]
5757
[ValidateNotNullOrEmpty]
5858
public string ResourceName { get; set; }
5959

6060
/// <summary>
6161
/// Gets or sets the resource type parameter.
6262
/// </summary>
63-
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.SubscriptionLevelResoruceParameterSet, Mandatory = true, ValueFromPipelineByPropertyName = true, HelpMessage = "The resource type. e.g. Microsoft.Sql/Servers/Databases.")]
64-
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.TenantLevelResoruceParameterSet, Mandatory = true, ValueFromPipelineByPropertyName = true, HelpMessage = "The resource type. e.g. Microsoft.Sql/Servers/Databases.")]
63+
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.SubscriptionLevelResourceParameterSet, Mandatory = true, ValueFromPipelineByPropertyName = true, HelpMessage = "The resource type. e.g. Microsoft.Sql/Servers/Databases.")]
64+
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.TenantLevelResourceParameterSet, Mandatory = true, ValueFromPipelineByPropertyName = true, HelpMessage = "The resource type. e.g. Microsoft.Sql/Servers/Databases.")]
6565
[ValidateNotNullOrEmpty]
6666
public string ResourceType { get; set; }
6767

6868
/// <summary>
6969
/// Gets or sets the extension resource name parameter.
7070
/// </summary>
71-
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.SubscriptionLevelResoruceParameterSet, Mandatory = false, ValueFromPipelineByPropertyName = true, HelpMessage = "The extension resource name. e.g. to specify a database MyServer/MyDatabase.")]
72-
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.TenantLevelResoruceParameterSet, Mandatory = false, ValueFromPipelineByPropertyName = true, HelpMessage = "The extension resource name. e.g. to specify a database MyServer/MyDatabase.")]
71+
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.SubscriptionLevelResourceParameterSet, Mandatory = false, ValueFromPipelineByPropertyName = true, HelpMessage = "The extension resource name. e.g. to specify a database MyServer/MyDatabase.")]
72+
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.TenantLevelResourceParameterSet, Mandatory = false, ValueFromPipelineByPropertyName = true, HelpMessage = "The extension resource name. e.g. to specify a database MyServer/MyDatabase.")]
7373
[ValidateNotNullOrEmpty]
7474
public string ExtensionResourceName { get; set; }
7575

7676
/// <summary>
7777
/// Gets or sets the extension resource type parameter.
7878
/// </summary>
79-
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.SubscriptionLevelResoruceParameterSet, Mandatory = false, ValueFromPipelineByPropertyName = true, HelpMessage = "The extension resource type. e.g. Microsoft.Sql/Servers/Databases.")]
80-
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.TenantLevelResoruceParameterSet, Mandatory = false, ValueFromPipelineByPropertyName = true, HelpMessage = "The extension resource type. e.g. Microsoft.Sql/Servers/Databases.")]
79+
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.SubscriptionLevelResourceParameterSet, Mandatory = false, ValueFromPipelineByPropertyName = true, HelpMessage = "The extension resource type. e.g. Microsoft.Sql/Servers/Databases.")]
80+
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.TenantLevelResourceParameterSet, Mandatory = false, ValueFromPipelineByPropertyName = true, HelpMessage = "The extension resource type. e.g. Microsoft.Sql/Servers/Databases.")]
8181
[ValidateNotNullOrEmpty]
8282
public string ExtensionResourceType { get; set; }
8383

@@ -91,15 +91,15 @@ public abstract class ResourceManipulationCmdletBase : ResourceManagerCmdletBase
9191
/// <summary>
9292
/// Gets or sets the resource group name parameter.
9393
/// </summary>
94-
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.SubscriptionLevelResoruceParameterSet, Mandatory = false, ValueFromPipelineByPropertyName = true, HelpMessage = "The resource group name.")]
94+
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.SubscriptionLevelResourceParameterSet, Mandatory = false, ValueFromPipelineByPropertyName = true, HelpMessage = "The resource group name.")]
9595
[ResourceGroupCompleter]
9696
[ValidateNotNullOrEmpty]
9797
public string ResourceGroupName { get; set; }
9898

9999
/// <summary>
100100
/// Gets or sets the tenant level parameter.
101101
/// </summary>
102-
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.TenantLevelResoruceParameterSet, Mandatory = true, HelpMessage = "Indicates that this is a tenant level operation.")]
102+
[Parameter(ParameterSetName = ResourceManipulationCmdletBase.TenantLevelResourceParameterSet, Mandatory = true, HelpMessage = "Indicates that this is a tenant level operation.")]
103103
public SwitchParameter TenantLevel { get; set; }
104104

105105
/// <summary>
@@ -146,8 +146,8 @@ protected string GetResourceId()
146146
private string GetResourceIdWithoutParentResource()
147147
{
148148
return ResourceIdUtility.GetResourceId(
149-
subscriptionId: this.SubscriptionId,
150-
resourceGroupName: this.ResourceGroupName,
149+
subscriptionId: TenantLevel.IsPresent ? null : (Guid?)this.SubscriptionId,
150+
resourceGroupName: TenantLevel.IsPresent ? null : this.ResourceGroupName,
151151
resourceType: this.ResourceType,
152152
resourceName: this.ResourceName,
153153
extensionResourceType: this.ExtensionResourceType,

src/Storage/Storage.Management.Test/ScenarioTests/StorageAccountTests.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -536,7 +536,7 @@ function Test-RevokeAzStorageAccountUserDelegationKeys
536536
New-AzResourceGroup -Name $rgname -Location $loc
537537
New-AzStorageAccount -ResourceGroupName $rgname -Name $stoname -Location $loc -Type $stotype
538538

539-
# revoke with storage account name and resoruce group name
539+
# revoke with storage account name and resource group name
540540
Revoke-AzStorageAccountUserDelegationKeys -ResourceGroupName $rgname -Name $stoname
541541

542542
# revoke with pipeline

0 commit comments

Comments
 (0)