Skip to content

Commit 7aa1970

Browse files
author
Nemanja
committed
Merge remote-tracking branch 'upstream/master' into nemanjas/mi_change_hw_generation
2 parents 28afa1c + 0fc850b commit 7aa1970

File tree

28 files changed

+3815
-59
lines changed

28 files changed

+3815
-59
lines changed

src/RecoveryServices/RecoveryServices.Backup.Models/AzureFileShareModels/AzureFileShareItem.cs

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

1515
using System;
16+
using System.Runtime.Versioning;
1617
using Microsoft.Azure.Management.RecoveryServices.Backup.Models;
1718

1819
namespace Microsoft.Azure.Commands.RecoveryServices.Backup.Cmdlets.Models
@@ -27,6 +28,16 @@ public class AzureFileShareItem : AzureItem
2728
/// </summary>
2829
public string ParentContainerFabricId { get; set; }
2930

31+
/// <summary>
32+
/// FriendlyName of the file share item
33+
/// </summary>
34+
public string FriendlyName { get; set; }
35+
36+
/// <summary>
37+
/// Resource State of the FileShare
38+
/// </summary>
39+
public string ResourceState { get; set; }
40+
3041
/// <summary>
3142
/// Constructor. Takes the service client object representing the protected item
3243
/// and converts it in to the PS protected item model
@@ -45,6 +56,12 @@ public AzureFileShareItem(ProtectedItemResource protectedItemResource,
4556
ProtectionState =
4657
EnumUtils.GetEnum<ItemProtectionState>(protectedItem.ProtectionState.ToString());
4758
ProtectionStatus = EnumUtils.GetEnum<ItemProtectionStatus>(protectedItem.ProtectionStatus);
59+
FriendlyName = protectedItem.FriendlyName;
60+
ResourceState = "";
61+
if(protectedItem.ExtendedInfo != null && protectedItem.ExtendedInfo.ResourceState != null)
62+
{
63+
ResourceState = protectedItem.ExtendedInfo.ResourceState;
64+
}
4865
}
4966
}
5067

src/RecoveryServices/RecoveryServices.Backup.Models/CmdletParamEnums.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,8 @@ public enum ItemParams
116116
StorageAccountName,
117117
BackupType,
118118
EnableCompression,
119-
DeleteState
119+
DeleteState,
120+
FriendlyName
120121
}
121122

122123
public enum ProtectionCheckParams

src/RecoveryServices/RecoveryServices.Backup.Models/Properties/Resources.Designer.cs

Lines changed: 11 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/RecoveryServices/RecoveryServices.Backup.Models/Properties/Resources.resx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -580,4 +580,7 @@ Please contact Microsoft for further assistance.</value>
580580
<data name="AFSDiscoveryFailure" xml:space="preserve">
581581
<value>Failed to discover FileShare {0} under {1}. Please make sure names are correct and FileShare is not deleted</value>
582582
</data>
583+
<data name="FriendlyNamePassedWarning" xml:space="preserve">
584+
<value>A friendly name might return multiple items since it is not unique. To get a unique item, please use the -name parameter. Pass the value displayed under the name column when displayed as a table or use the name field in the PS object</value>
585+
</data>
583586
</root>

src/RecoveryServices/RecoveryServices.Backup.Providers/AzureWorkloadProviderHelper.cs

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -152,18 +152,31 @@ public List<ProtectedItemResource> ListProtectedItemsByContainer(
152152
string itemName,
153153
string vaultName,
154154
string resourceGroupName,
155-
Action<CmdletModel.ItemBase, ProtectedItemResource> extendedInfoProcessor)
155+
Action<CmdletModel.ItemBase, ProtectedItemResource> extendedInfoProcessor, string friendlyName = null)
156156
{
157157
List<ProtectedItemResource> protectedItemGetResponses =
158158
new List<ProtectedItemResource>();
159159

160-
if (!string.IsNullOrEmpty(itemName))
160+
if (!string.IsNullOrEmpty(itemName) || !string.IsNullOrEmpty(friendlyName))
161161
{
162162
protectedItems = protectedItems.Where(protectedItem =>
163163
{
164164
Dictionary<CmdletModel.UriEnums, string> dictionary = HelperUtils.ParseUri(protectedItem.Id);
165+
165166
string protectedItemUri = HelperUtils.GetProtectedItemUri(dictionary, protectedItem.Id);
166-
return protectedItemUri.ToLower().Contains(itemName.ToLower());
167+
168+
bool filteredByUniqueName = itemName != null && (protectedItemUri.ToLower().Contains(itemName.ToLower()) );
169+
bool filteredByFriendlyName = false;
170+
171+
if (protectedItem.Properties.BackupManagementType == "AzureStorage" && protectedItem.Properties.WorkloadType == "AzureFileShare")
172+
{
173+
174+
string protectedItemFriendlyName = (protectedItem.Properties as AzureFileshareProtectedItem).FriendlyName;
175+
filteredByUniqueName = filteredByUniqueName || ( itemName != null && protectedItemFriendlyName.ToLower() == itemName.ToLower() );
176+
filteredByFriendlyName = friendlyName != null && protectedItemFriendlyName.ToLower() == friendlyName.ToLower();
177+
}
178+
179+
return filteredByUniqueName || filteredByFriendlyName;
167180
}).ToList();
168181

169182
ODataQuery<GetProtectedItemQueryObject> getItemQueryParams =
@@ -185,6 +198,7 @@ public List<ProtectedItemResource> ListProtectedItemsByContainer(
185198
}
186199
}
187200

201+
188202
List<CmdletModel.ItemBase> itemModels = ConversionHelpers.GetItemModelList(protectedItems);
189203

190204
if (!string.IsNullOrEmpty(itemName))

src/RecoveryServices/RecoveryServices.Backup.Providers/Providers/AzureFilesPsBackupProvider.cs

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -618,6 +618,12 @@ public List<ItemBase> ListProtectedItems()
618618
CmdletModel.WorkloadType workloadType =
619619
(CmdletModel.WorkloadType)ProviderData[ItemParams.WorkloadType];
620620
PolicyBase policy = (PolicyBase)ProviderData[PolicyParams.ProtectionPolicy];
621+
string friendlyName = (string)ProviderData[ItemParams.FriendlyName];
622+
623+
if( itemName != null && isFriendlyName(itemName) )
624+
{
625+
Logger.Instance.WriteWarning(Resources.FriendlyNamePassedWarning);
626+
}
621627

622628
// 1. Filter by container
623629
List<ProtectedItemResource> protectedItems = AzureWorkloadProviderHelper.ListProtectedItemsByContainer(
@@ -650,7 +656,7 @@ public List<ItemBase> ListProtectedItems()
650656
(int)(serviceClientExtendedInfo.RecoveryPointCount.HasValue ?
651657
serviceClientExtendedInfo.RecoveryPointCount : 0);
652658
((AzureFileShareItem)itemModel).ExtendedInfo = extendedInfo;
653-
});
659+
}, friendlyName);
654660

655661
// 3. Filter by item's Protection Status
656662
if (protectionStatus != 0)
@@ -906,5 +912,12 @@ public List<PointInTimeBase> GetLogChains()
906912
{
907913
throw new NotImplementedException();
908914
}
915+
916+
private bool isFriendlyName(string name)
917+
{
918+
if (name.Contains(";"))
919+
return false;
920+
return true;
921+
}
909922
}
910923
}

src/RecoveryServices/RecoveryServices.Backup/Cmdlets/Item/GetAzureRmRecoveryServicesBackupItem.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,13 @@ public class GetAzureRmRecoveryServicesBackupItem : RSBackupVaultCmdletBase
9898
[ValidateNotNullOrEmpty]
9999
public ItemDeleteState DeleteState { get; set; }
100100

101+
/// <summary>
102+
/// Friendly Name of the item, Applicable only in case of Azure File Share item.
103+
/// </summary>
104+
[Parameter(Mandatory = false, HelpMessage = ParamHelpMsgs.Item.FriendlyName)]
105+
[ValidateNotNullOrEmpty]
106+
public string FriendlyName { get; set; }
107+
101108
public override void ExecuteCmdlet()
102109
{
103110
ExecutionBlock(() =>
@@ -121,6 +128,7 @@ public override void ExecuteCmdlet()
121128
{ ItemParams.ProtectionStatus, ProtectionStatus },
122129
{ ItemParams.ProtectionState, ProtectionState },
123130
{ ItemParams.WorkloadType, WorkloadType },
131+
{ ItemParams.FriendlyName, FriendlyName }
124132
}, ServiceClientAdapter);
125133

126134
IPsBackupProvider psBackupProvider = null;

src/RecoveryServices/RecoveryServices.Backup/ParamHelpMsgs.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ internal static class Job
6969

7070
internal static class Item
7171
{
72-
public const string ItemName = "Name of the item.";
72+
public const string ItemName = "UniqueName of the backed up item.";
7373
public const string AzureVMServiceName = "Cloud Service Name for Azure Classic Compute VM.";
7474
public const string AzureVMResourceGroupName = "Resource Group Name for Azure Compute VM .";
7575
public const string ProtectedItem = "Filter value for status of job.";
@@ -91,6 +91,7 @@ internal static class Item
9191
public const string BackupType = "Specifies the type of backup to be taken for an on-demand backup. Allowed values are “CopyOnlyFull”, “Full”, “Differential”, “Log”.";
9292
public const string EnableCompression = "A switch which will specify that the requested on-demand SQL backup should be compressed.";
9393
public const string ParentID = "Specified the ARM ID of an Instance or AG.";
94+
public const string FriendlyName = "FriendlyName of the backed up item";
9495
}
9596

9697
internal static class ProtectableItem

src/RecoveryServices/RecoveryServices.Backup/RecoveryServices.Backup.format.ps1xml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -566,6 +566,10 @@
566566
<Label>Name</Label>
567567
<Width>40</Width>
568568
</TableColumnHeader>
569+
<TableColumnHeader>
570+
<Label>FriendlyName</Label>
571+
<Width>20</Width>
572+
</TableColumnHeader>
569573
<TableColumnHeader>
570574
<Label>ContainerType</Label>
571575
<Width>20</Width>
@@ -582,13 +586,24 @@
582586
<Label>ProtectionStatus</Label>
583587
<Width>20</Width>
584588
</TableColumnHeader>
589+
<TableColumnHeader>
590+
<Label>LastBackupStatus</Label>
591+
<Width>20</Width>
592+
</TableColumnHeader>
593+
<TableColumnHeader>
594+
<Label>ResourceState</Label>
595+
<Width>20</Width>
596+
</TableColumnHeader>
585597
</TableHeaders>
586598
<TableRowEntries>
587599
<TableRowEntry>
588600
<TableColumnItems>
589601
<TableColumnItem>
590602
<PropertyName>Name</PropertyName>
591603
</TableColumnItem>
604+
<TableColumnItem>
605+
<PropertyName>FriendlyName</PropertyName>
606+
</TableColumnItem>
592607
<TableColumnItem>
593608
<PropertyName>ContainerType</PropertyName>
594609
</TableColumnItem>
@@ -601,6 +616,12 @@
601616
<TableColumnItem>
602617
<PropertyName>ProtectionStatus</PropertyName>
603618
</TableColumnItem>
619+
<TableColumnItem>
620+
<PropertyName>LastBackupStatus</PropertyName>
621+
</TableColumnItem>
622+
<TableColumnItem>
623+
<PropertyName>ResourceState</PropertyName>
624+
</TableColumnItem>
604625
</TableColumnItems>
605626
</TableRowEntry>
606627
</TableRowEntries>

src/RecoveryServices/RecoveryServices.SiteRecovery.Test/ScenarioTests/B2A/AsrB2ATests.cs

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,5 +119,22 @@ public void TestPlannedFailover()
119119
this.VaultSettingsFilePath +
120120
"\"");
121121
}
122+
123+
[Fact]
124+
[Trait(
125+
Category.AcceptanceType,
126+
Category.CheckIn)]
127+
public void TestUpdateRPIWithDES()
128+
{
129+
this.VaultSettingsFilePath = System.IO.Path.Combine(
130+
System.AppDomain.CurrentDomain.BaseDirectory,
131+
"ScenarioTests", "B2A", "CMKInput", "B2A.VaultCredentials");
132+
this.RunPowerShellTest(
133+
_logger,
134+
Constants.NewModel,
135+
"Test-UpdateRPIWithDiskEncryptionSetMap -vaultSettingsFilePath \"" +
136+
this.VaultSettingsFilePath +
137+
"\"");
138+
}
122139
}
123140
}

src/RecoveryServices/RecoveryServices.SiteRecovery.Test/ScenarioTests/B2A/AsrB2ATests.ps1

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -773,3 +773,28 @@ function Test-SiteRecoveryNewModelE2ETest
773773
$Policy = Get-AzRecoveryServicesAsrPolicy | Where-Object {$_.Name -eq $PolicyName}
774774
Assert-Null($Policy)
775775
}
776+
777+
<#
778+
.SYNOPSIS
779+
Site Recovery Update RPI with DiskIdToDiskEncryptionSetMap
780+
#>
781+
function Test-UpdateRPIWithDiskEncryptionSetMap
782+
{
783+
param([string] $vaultSettingsFilePath)
784+
785+
# Import Azure RecoveryServices Vault Settings File
786+
Import-AzRecoveryServicesAsrVaultSettingsFile -Path $vaultSettingsFilePath
787+
$PrimaryFabricName = "HyperVSite"
788+
$fabric = Get-AsrFabric -FriendlyName $PrimaryFabricName
789+
$pc = Get-ASRProtectionContainer -Fabric $fabric
790+
$policyName ="b2apolicy"
791+
$policy = Get-AzRecoveryServicesAsrPolicy -Name $policyName
792+
$VMFriendlyName ="b2a-vm1"
793+
$rpi = Get-AsrReplicationProtectedItem -ProtectionContainer $pc -FriendlyName $VMFriendlyName
794+
$diskId="/subscriptions/7c943c1b-5122-4097-90c8-861411bdd574/resourceGroups/cmkrgccy/providers/Microsoft.Compute/diskEncryptionSets/cmkdesccy"
795+
$diskEncryptionSetMap = New-Object "System.Collections.Generic.Dictionary``2[System.String,System.String]"
796+
$diskEncryptionSetMap.Add($rpi.ProviderSpecificDetails.AzureVMDiskDetails[0].DiskId, $diskId)
797+
Set-AsrReplicationProtectedItem -InputObject $rpi -DiskIdToDiskEncryptionSetMap $diskEncryptionSetMap
798+
$rpi = Get-AsrReplicationProtectedItem -ProtectionContainer $pc -FriendlyName $VMFriendlyName
799+
Assert-NotNull($rpi.ProviderSpecificDetails.AzureVMDiskDetails[0].DiskEncryptionSetId)
800+
}
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
<?xml version="1.0" encoding="utf-8"?>
2+
<RSVaultAsrCreds xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Microsoft.Azure.Portal.RecoveryServices.Models.Common">
3+
<VaultDetails>
4+
<SubscriptionId>7c943c1b-5122-4097-90c8-861411bdd574</SubscriptionId>
5+
<ResourceGroup>cmkrgccy</ResourceGroup>
6+
<ResourceName>cmkvaultccy</ResourceName>
7+
<ResourceId>4224405549625230097</ResourceId>
8+
<Location>centraluseuap</Location>
9+
<ResourceType>Vaults</ResourceType>
10+
<ProviderNamespace>Microsoft.RecoveryServices</ProviderNamespace>
11+
</VaultDetails>
12+
<ManagementCert>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</ManagementCert>
13+
<Version>2.0</Version>
14+
<AadDetails>
15+
<AadAuthority>https://login.windows.net</AadAuthority>
16+
<AadTenantId>31f0bb8c-c1fe-4044-96d2-8a5a1994ee83</AadTenantId>
17+
<ServicePrincipalClientId>b18dea1c-faba-4d7f-8c8a-5b68b6b6ddb5</ServicePrincipalClientId>
18+
<AadVaultAudience>https://RecoveryServiceVault/centraluseuap/cmkvaultccy/4224405549625230097</AadVaultAudience>
19+
<ArmManagementEndpoint>https://pod01-id1.ccy.backup.windowsazure.com/restapi/</ArmManagementEndpoint>
20+
</AadDetails>
21+
<ChannelIntegrityKey>GSe+di3dTVOC/Mh0EFf8+Q==</ChannelIntegrityKey>
22+
<SiteId></SiteId>
23+
<SiteName></SiteName>
24+
</RSVaultAsrCreds>

src/RecoveryServices/RecoveryServices.SiteRecovery.Test/ScenarioTests/V2A/AsrV2ATests.cs

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -242,5 +242,39 @@ public void SetRPI()
242242
this.VaultSettingsFilePath +
243243
"\"");
244244
}
245+
246+
[Fact]
247+
[Trait(
248+
Category.AcceptanceType,
249+
Category.CheckIn)]
250+
public void V2ACreateRPIWithDES()
251+
{
252+
this.VaultSettingsFilePath = Path.Combine(
253+
AppDomain.CurrentDomain.BaseDirectory,
254+
"ScenarioTests", "V2A", "CMKInput","V2A.VaultCredentials");
255+
this.RunPowerShellTest(
256+
_logger,
257+
Constants.NewModel,
258+
"V2ACreateRPIWithDES -vaultSettingsFilePath \"" +
259+
this.VaultSettingsFilePath +
260+
"\"");
261+
}
262+
263+
[Fact]
264+
[Trait(
265+
Category.AcceptanceType,
266+
Category.CheckIn)]
267+
public void V2ACreateRPIWithDESEnabledDiskInput()
268+
{
269+
this.VaultSettingsFilePath = Path.Combine(
270+
AppDomain.CurrentDomain.BaseDirectory,
271+
"ScenarioTests", "V2A", "CMKInput", "V2A.VaultCredentials");
272+
this.RunPowerShellTest(
273+
_logger,
274+
Constants.NewModel,
275+
"V2ACreateRPIWithDESEnabledDiskInput -vaultSettingsFilePath \"" +
276+
this.VaultSettingsFilePath +
277+
"\"");
278+
}
245279
}
246280
}

0 commit comments

Comments
 (0)