@@ -16,6 +16,7 @@ $containerName = "pstestwlvm1bca8"
16
16
$resourceGroupName = " pstestwlRG1bca8"
17
17
$vaultName = " pstestwlRSV1bca8"
18
18
$resourceId = " /subscriptions/da364f0f-307b-41c9-9d47-b7413ec45535/resourceGroups/pstestwlRG1bca8/providers/Microsoft.Compute/virtualMachines/pstestwlvm1bca8"
19
+ $resourceIdForFileDB = " /subscriptions/f879818f-5b29-4a43-8961-34169783144f/resourceGroups/psbvtrg/providers/Microsoft.Compute/virtualMachines/psbvtsqlvm"
19
20
$policyName = " HourlyLogBackup"
20
21
$instanceName = " sqlinstance;mssqlserver"
21
22
@@ -531,4 +532,74 @@ function Test-AzureVmWorkloadFullRestore
531
532
{
532
533
Cleanup- Vault $vault $item $container
533
534
}
535
+ }
536
+
537
+ function Test-AzureVmWorkloadFullRestoreWithFiles
538
+ {
539
+ try
540
+ {
541
+ $vault = Get-AzRecoveryServicesVault - ResourceGroupName " psbvtrg" - Name " pssqlbvtvault"
542
+ $container = Register-AzRecoveryServicesBackupContainer `
543
+ - ResourceId $resourceIdForFileDB `
544
+ - BackupManagementType AzureWorkload `
545
+ - WorkloadType MSSQL `
546
+ - VaultId $vault.ID `
547
+ - Force
548
+
549
+ $policy = Get-AzRecoveryServicesBackupProtectionPolicy `
550
+ - VaultId $vault.ID `
551
+ - Name $policyName
552
+
553
+ $protectableItems = Get-AzRecoveryServicesBackupProtectableItem `
554
+ - VaultId $vault.ID `
555
+ - Container $container `
556
+ - WorkloadType " MSSQL" `
557
+ - ItemType " SQLDataBase" ;
558
+
559
+ $protectableInstances = Get-AzRecoveryServicesBackupProtectableItem `
560
+ - VaultId $vault.ID `
561
+ - Container $container `
562
+ - WorkloadType " MSSQL" `
563
+ - ItemType " SQLInstance" ;
564
+
565
+ Enable-AzRecoveryServicesBackupProtection `
566
+ - VaultId $vault.ID `
567
+ - Policy $policy `
568
+ - ProtectableItem $protectableItems [4 ];
569
+
570
+ $item = Get-AzRecoveryServicesBackupItem `
571
+ - VaultId $vault.ID `
572
+ - Container $container `
573
+ - WorkloadType MSSQL;
574
+
575
+ $backupJob = Backup-AzRecoveryServicesBackupItem `
576
+ - VaultId $vault.ID `
577
+ - Item $item [0 ] `
578
+ - BackupType " Full" | Wait-AzRecoveryServicesBackupJob - VaultId $vault.ID
579
+
580
+ $backupStartTime = $backupJob.StartTime.AddMinutes (-1 );
581
+ $backupEndTime = $backupJob.EndTime.AddMinutes (1 );
582
+
583
+ $recoveryPoint = Get-AzRecoveryServicesBackupRecoveryPoint `
584
+ - VaultId $vault.ID `
585
+ - StartDate $backupStartTime `
586
+ - EndDate $backupEndTime `
587
+ - Item $item ;
588
+
589
+ $restoreJob1 = Get-AzRecoveryServicesBackupRecoveryPoint `
590
+ - VaultId $vault.ID `
591
+ - StartDate $backupStartTime `
592
+ - EndDate $backupEndTime `
593
+ - Item $item | Get-AzRecoveryServicesBackupWorkloadRecoveryConfig `
594
+ - VaultId $vault.ID `
595
+ - TargetItem $protectableInstances [0 ] `
596
+ –AlternateWorkloadRestore | Restore-AzRecoveryServicesBackupItem `
597
+ - VaultId $vault.ID | Wait-AzureRmRecoveryServicesBackupJob - VaultId $vault.ID
598
+
599
+ Assert-True { $restoreJob1.Status -eq " Completed" }
600
+ }
601
+ finally
602
+ {
603
+ Cleanup- Vault $vault $item $container
604
+ }
534
605
}
0 commit comments