Skip to content

Commit 6a6f99b

Browse files
committed
RestoreChanges.
1 parent 27b5cf9 commit 6a6f99b

File tree

5 files changed

+27
-22
lines changed

5 files changed

+27
-22
lines changed

src/ResourceManager/RecoveryServices.Backup/Cmdlets/Restore/RestoreAzureRMRecoveryServicesBackupItem.cs

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@
1414

1515
using Microsoft.Azure.Commands.RecoveryServices.Backup.Cmdlets.Models;
1616
using Microsoft.Azure.Commands.RecoveryServices.Backup.Cmdlets.ProviderModel;
17-
using Microsoft.Azure.Common.Authentication;
18-
using Microsoft.Azure.Common.Authentication.Models;
17+
using Microsoft.Azure.Commands.Common.Authentication;
18+
using Microsoft.Azure.Commands.Common.Authentication.Models;
1919
using System;
2020
using System.Collections.Generic;
2121
using System.Linq;
@@ -71,7 +71,22 @@ public override void ExecuteCmdlet()
7171
}, HydraAdapter);
7272

7373
IPsBackupProvider psBackupProvider = providerManager.GetProviderInstance(RecoveryPoint.WorkloadType, RecoveryPoint.BackupManagementType);
74-
psBackupProvider.TriggerRestore();
74+
var jobResponse = psBackupProvider.TriggerRestore();
75+
76+
var response = HydraAdapter.GetProtectedItemOperationStatusByURL(jobResponse.AzureAsyncOperation);
77+
while (response.OperationStatus.Status == "InProgress")
78+
{
79+
response = HydraAdapter.GetProtectedItemOperationStatusByURL(jobResponse.AzureAsyncOperation);
80+
System.Threading.Thread.Sleep(TimeSpan.FromSeconds(5));
81+
}
82+
83+
if (response.OperationStatus.Status == "Completed")
84+
{
85+
// TBD -- Hydra change to add jobId in OperationStatusExtendedInfo
86+
string jobId = ""; //response.OperationStatus.Properties.jobId;
87+
var job = HydraAdapter.GetJob(jobId);
88+
//WriteObject(ConversionHelpers.GetJobModel(job));
89+
}
7590
});
7691
}
7792
}

src/ResourceManager/RecoveryServices.Backup/Commands.RecoveryServices.Backup.Cmdlets.csproj

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,6 @@
4747
<Reference Include="Microsoft.Azure.ResourceManager">
4848
<HintPath>..\..\packages\Microsoft.Azure.Management.Resources.2.18.7-preview\lib\portable-net45+wp8+wpa81+win\Microsoft.Azure.ResourceManager.dll</HintPath>
4949
</Reference>
50-
<Reference Include="Microsoft.Rest.ClientRuntime, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
5150
<Reference Include="Microsoft.Rest.ClientRuntime, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
5251
<SpecificVersion>False</SpecificVersion>
5352
<HintPath>..\..\packages\Microsoft.Rest.ClientRuntime.2.1.0\lib\net45\Microsoft.Rest.ClientRuntime.dll</HintPath>
@@ -153,12 +152,6 @@
153152
</ItemGroup>
154153
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
155154
<Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />
156-
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
157-
<PropertyGroup>
158-
<ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
159-
</PropertyGroup>
160-
<Error Condition="!Exists('$(SolutionDir)\.nuget\NuGet.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\.nuget\NuGet.targets'))" />
161-
</Target>
162155
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
163156
Other similar extension points exist, see Microsoft.Common.targets.
164157
<Target Name="BeforeBuild">

src/ResourceManager/RecoveryServices.Backup/Commands.RecoveryServices.Backup.HydraAdapter/BMSAPIs/RestoreDiskAPIs.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ public partial class HydraAdapter
1919
/// <param name="protectedItemName"></param>
2020
/// <param name="recoveryPointId"></param>
2121
/// <returns></returns>
22-
public RecoveryPointResponse RestoreDisk(AzureRmRecoveryServicesIaasVmRecoveryPoint rp, string storageAccountId)
22+
public BaseRecoveryServicesJobResponse RestoreDisk(AzureRmRecoveryServicesIaasVmRecoveryPoint rp, string storageAccountId)
2323
{
2424
string resourceGroupName = BmsAdapter.GetResourceGroupName();
2525
string resourceName = BmsAdapter.GetResourceName();
@@ -46,7 +46,7 @@ public RecoveryPointResponse RestoreDisk(AzureRmRecoveryServicesIaasVmRecoveryPo
4646
triggerRestoreRequest.Item.Properties = restoreRequest;
4747

4848
var response = BmsAdapter.Client.Restore.TriggerRestoreAsync(resourceGroupName, resourceName, BmsAdapter.GetCustomRequestHeaders(),
49-
AzureFabricName, containerName, protectedItemName, recoveryPointId, triggerRestoreRequest, BmsAdapter.CmdletCancellationToken);
49+
AzureFabricName, containerName, protectedItemName, recoveryPointId, triggerRestoreRequest, BmsAdapter.CmdletCancellationToken).Result;
5050

5151
return response;
5252
}

src/ResourceManager/RecoveryServices.Backup/Commands.RecoveryServices.Backup.Providers/Commands.RecoveryServices.Backup.Providers.csproj

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -94,12 +94,6 @@
9494
</ItemGroup>
9595
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
9696
<Import Project="$(SolutionDir)\.nuget\NuGet.targets" Condition="Exists('$(SolutionDir)\.nuget\NuGet.targets')" />
97-
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
98-
<PropertyGroup>
99-
<ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
100-
</PropertyGroup>
101-
<Error Condition="!Exists('$(SolutionDir)\.nuget\NuGet.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\.nuget\NuGet.targets'))" />
102-
</Target>
10397
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
10498
Other similar extension points exist, see Microsoft.Common.targets.
10599
<Target Name="BeforeBuild">

src/ResourceManager/RecoveryServices.Backup/Commands.RecoveryServices.Backup.Providers/Providers/IaasVmPsBackupProvider.cs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -137,6 +137,9 @@ public BaseRecoveryServicesJobResponse TriggerRestore()
137137
{
138138
throw new InvalidCastException("Cant convert input to AzureRmRecoveryServicesIaasVmRecoveryPoint");
139139
}
140+
141+
var response = HydraAdapter.RestoreDisk(rp, storageId);
142+
return response;
140143
}
141144

142145
public ProtectedItemResponse GetProtectedItem()
@@ -146,8 +149,8 @@ public ProtectedItemResponse GetProtectedItem()
146149

147150
public AzureRmRecoveryServicesRecoveryPointBase GetRecoveryPointDetails()
148151
{
149-
AzureRmRecoveryServicesItemBase item = ProviderData.ProviderParameters[GetRecoveryPointParams.Item]
150-
as AzureRmRecoveryServicesItemBase;
152+
AzureRmRecoveryServicesIaasVmItem item = ProviderData.ProviderParameters[GetRecoveryPointParams.Item]
153+
as AzureRmRecoveryServicesIaasVmItem;
151154

152155
string recoveryPointId = ProviderData.ProviderParameters[GetRecoveryPointParams.RecoveryPointId].ToString();
153156

@@ -167,8 +170,8 @@ public List<AzureRmRecoveryServicesRecoveryPointBase> ListRecoveryPoints()
167170
{
168171
DateTime startDate = (DateTime)(ProviderData.ProviderParameters[GetRecoveryPointParams.StartDate]);
169172
DateTime endDate = (DateTime)(ProviderData.ProviderParameters[GetRecoveryPointParams.EndDate]);
170-
AzureRmRecoveryServicesItemBase item = ProviderData.ProviderParameters[GetRecoveryPointParams.Item]
171-
as AzureRmRecoveryServicesItemBase;
173+
AzureRmRecoveryServicesIaasVmItem item = ProviderData.ProviderParameters[GetRecoveryPointParams.Item]
174+
as AzureRmRecoveryServicesIaasVmItem;
172175

173176
if (item == null)
174177
{

0 commit comments

Comments
 (0)