12
12
# limitations under the License.
13
13
# ----------------------------------------------------------------------------------
14
14
15
- $ResourceGroupName = " backuprg "
16
- $ResourceName = " backuprn "
15
+ $ResourceGroupName = " scenariorg "
16
+ $ResourceName = " scenariorn "
17
17
$Location = " southeastasia"
18
- $VirtualMachineName = " hydrarecordvm "
19
- $ProtectionPolicyName = " e2epolicy1 "
18
+ $VirtualMachineName = " e2epowershell2 "
19
+ $ProtectionPolicyName = " e2epolicy2 "
20
20
$RestoreStorageAccount = " e2estore"
21
+ $ResultTxtFile = " EndToEndScenarioTest.txt"
22
+ $ResultCsvFile = " EndToEndScenarioTest.csv"
23
+
21
24
22
25
function Test-AzureBackupEndToEnd
23
26
{
27
+ $FailFlag = 0 ;
28
+ $FailedAt = " " ;
29
+
30
+ Try
31
+ {
32
+ $startTime = Get-Date - format G;
33
+ New-AzureResourceGroup - Name $ResourceGroupName - Location $Location - Force;
34
+ $endTime = Get-Date - format G;
35
+ " New-AzureResourceGroup" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
36
+ }
37
+ Catch
38
+ {
39
+ $endTime = Get-Date - format G;
40
+ " New-AzureResourceGroup" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
41
+ $FailFlag = 1 ;
42
+ $FailedAt = $FailedAt + (" New-AzureResourceGroup : " + $_ );
43
+ }
44
+
45
+ Try
46
+ {
47
+ $startTime = Get-Date - format G;
24
48
New-AzureRMBackupVault - ResourceGroupName $ResourceGroupName - Name $ResourceName - Region $Location ;
49
+ $endTime = Get-Date - format G;
50
+ " New-AzureRMBackupVault" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
51
+ }
52
+ Catch
53
+ {
54
+ $endTime = Get-Date - format G;
55
+ " New-AzureRMBackupVault" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
56
+ $FailFlag = 1 ;
57
+ $FailedAt = $FailedAt + (" New-AzureRMBackupVault : " + $_ );
58
+ }
59
+
60
+ Try
61
+ {
62
+ $startTime = Get-Date - format G;
25
63
$vault = Get-AzureRMBackupVault - Name $ResourceName ;
64
+ $endTime = Get-Date - format G;
65
+ " Get-AzureRMBackupVault" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
66
+ }
67
+ Catch
68
+ {
69
+ $endTime = Get-Date - format G;
70
+ " Get-AzureRMBackupVault" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
71
+ $FailFlag = 1 ;
72
+ $FailedAt = $FailedAt + (" Get-AzureRMBackupVault : " + $_ );
73
+ }
74
+
75
+ Try
76
+ {
77
+ $startTime = Get-Date - format G;
26
78
$Job = Register-AzureRMBackupContainer - Vault $vault - Name $VirtualMachineName - ServiceName $VirtualMachineName ;
27
79
Wait-AzureRMBackupJob - Job $Job ;
28
80
$JobDetails = Get-AzureRMBackupJobDetails - Vault $vault - JobId $Job.InstanceId ;
29
81
Assert-AreEqual $JobDetails.Status " Completed" ;
82
+ $endTime = Get-Date - format G;
83
+ " Register-AzureRMBackupContainer" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
84
+ }
85
+ Catch
86
+ {
87
+ $endTime = Get-Date - format G;
88
+ " Register-AzureRMBackupContainer" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
89
+ $FailFlag = 1 ;
90
+ $FailedAt = $FailedAt + (" Register-AzureRMBackupContainer : " + $_ );
91
+ }
30
92
93
+ Try
94
+ {
95
+ $startTime = Get-Date - format G;
31
96
$r1 = New-AzureRMBackupRetentionPolicyObject - DailyRetention - Retention 20 ;
32
97
$r2 = New-AzureRMBackupRetentionPolicyObject - WeeklyRetention - DaysOfWeek " Monday" - Retention 10 ;
33
98
$r3 = New-AzureRMBackupRetentionPolicyObject - MonthlyRetentionInDailyFormat - DaysOfMonth " 10" - Retention 10 ;
@@ -42,7 +107,20 @@ function Test-AzureBackupEndToEnd
42
107
Assert-AreEqual $protectionpolicy.ResourceGroupName $ResourceGroupName ;
43
108
Assert-AreEqual $protectionpolicy.ResourceName $ResourceName ;
44
109
Assert-AreEqual $protectionpolicy.Location $Location ;
45
-
110
+ $endTime = Get-Date - format G;
111
+ " New-AzureRMBackupProtectionPolicy" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
112
+ }
113
+ Catch
114
+ {
115
+ $endTime = Get-Date - format G;
116
+ " New-AzureRMBackupProtectionPolicy" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
117
+ $FailFlag = 1 ;
118
+ $FailedAt = $FailedAt + (" New-AzureRMBackupProtectionPolicy : " + $_ );
119
+ }
120
+
121
+ Try
122
+ {
123
+ $startTime = Get-Date - format G;
46
124
$container = Get-AzureRMBackupContainer - Vault $vault - Name $VirtualMachineName - Type " AzureVM" ;
47
125
Assert-AreEqual $container.ContainerType " AzureVM" ;
48
126
Assert-AreEqual $container.ContainerUniqueName.Contains (" iaasvmcontainer" ) " True" ;
@@ -51,7 +129,20 @@ function Test-AzureBackupEndToEnd
51
129
Assert-AreEqual $container.ResourceGroupName $ResourceGroupName ;
52
130
Assert-AreEqual $container.ResourceName $ResourceName ;
53
131
Assert-AreEqual $container.Location $Location ;
132
+ $endTime = Get-Date - format G;
133
+ " Get-AzureRMBackupContainer" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
134
+ }
135
+ Catch
136
+ {
137
+ $endTime = Get-Date - format G;
138
+ " Get-AzureRMBackupContainer" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
139
+ $FailFlag = 1 ;
140
+ $FailedAt = $FailedAt + (" Get-AzureRMBackupContainer : " + $_ );
141
+ }
54
142
143
+ Try
144
+ {
145
+ $startTime = Get-Date - format G;
55
146
$Job = Enable-AzureRMBackupProtection - Item $container [0 ] - Policy $protectionpolicy [0 ];
56
147
Wait-AzureRMBackupJob - Job $Job ;
57
148
$JobDetails = Get-AzureRMBackupJobDetails - Vault $vault - JobID $Job.InstanceId ;
@@ -63,7 +154,20 @@ function Test-AzureBackupEndToEnd
63
154
Assert-AreEqual $JobDetails.ResourceGroupName $ResourceGroupName ;
64
155
Assert-AreEqual $JobDetails.ResourceName $ResourceName ;
65
156
Assert-AreEqual $JobDetails.Location $Location ;
157
+ $endTime = Get-Date - format G;
158
+ " Enable-AzureRMBackupProtection" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
159
+ }
160
+ Catch
161
+ {
162
+ $endTime = Get-Date - format G;
163
+ " Enable-AzureRMBackupProtection" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
164
+ $FailFlag = 1 ;
165
+ $FailedAt = $FailedAt + (" Enable-AzureRMBackupProtection : " + $_ );
166
+ }
66
167
168
+ Try
169
+ {
170
+ $startTime = Get-Date - format G;
67
171
$item = Get-AzureRMBackupItem - Container $container [0 ];
68
172
Assert-AreEqual $item.ProtectionStatus " Protected" ;
69
173
Assert-AreEqual $item.DataSourceStatus " IRPending" ;
@@ -75,7 +179,20 @@ function Test-AzureBackupEndToEnd
75
179
Assert-AreEqual $item.ResourceGroupName $ResourceGroupName ;
76
180
Assert-AreEqual $item.ResourceName $ResourceName ;
77
181
Assert-AreEqual $item.Location $Location ;
182
+ $endTime = Get-Date - format G;
183
+ " Get-AzureRMBackupItem" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
184
+ }
185
+ Catch
186
+ {
187
+ $endTime = Get-Date - format G;
188
+ " Get-AzureRMBackupItem" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
189
+ $FailFlag = 1 ;
190
+ $FailedAt = $FailedAt + (" Get-AzureRMBackupItem : " + $_ );
191
+ }
78
192
193
+ Try
194
+ {
195
+ $startTime = Get-Date - format G;
79
196
$Job = Backup-AzureRMBackupItem - Item $item [0 ];
80
197
Wait-AzureRMBackupJob - Job $Job ;
81
198
$JobDetails = Get-AzureRMBackupJobDetails - Vault $vault - JobID $Job.InstanceId ;
@@ -87,7 +204,20 @@ function Test-AzureBackupEndToEnd
87
204
Assert-AreEqual $JobDetails.ResourceGroupName $ResourceGroupName ;
88
205
Assert-AreEqual $JobDetails.ResourceName $ResourceName ;
89
206
Assert-AreEqual $JobDetails.Location $Location ;
207
+ $endTime = Get-Date - format G;
208
+ " Backup-AzureRMBackupItem" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
209
+ }
210
+ Catch
211
+ {
212
+ $endTime = Get-Date - format G;
213
+ " Backup-AzureRMBackupItem" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
214
+ $FailFlag = 1 ;
215
+ $FailedAt = $FailedAt + (" Backup-AzureRMBackupItem : " + $_ );
216
+ }
90
217
218
+ Try
219
+ {
220
+ $startTime = Get-Date - format G;
91
221
$item = Get-AzureRMBackupItem - Container $container [0 ];
92
222
Assert-AreEqual $item.ProtectionStatus " Protected" ;
93
223
Assert-AreEqual $item.DataSourceStatus " Protected" ;
@@ -96,15 +226,41 @@ function Test-AzureBackupEndToEnd
96
226
Assert-AreEqual $item.ResourceGroupName $ResourceGroupName ;
97
227
Assert-AreEqual $item.ResourceName $ResourceName ;
98
228
Assert-AreEqual $item.Location $Location ;
229
+ $endTime = Get-Date - format G;
230
+ " Get-AzureRMBackupItemPostBackup" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
231
+ }
232
+ Catch
233
+ {
234
+ $endTime = Get-Date - format G;
235
+ " Get-AzureRMBackupItemPostBackup" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
236
+ $FailFlag = 1 ;
237
+ $FailedAt = $FailedAt + (" Get-AzureRMBackupItemPostBackup : " + $_ );
238
+ }
99
239
240
+ Try
241
+ {
242
+ $startTime = Get-Date - format G;
100
243
$recoveryPoints = Get-AzureRMBackupRecoveryPoint - Item $item [0 ];
101
244
Assert-NotNull $recoveryPoints.RecoveryPointTime ;
102
245
Assert-NotNull $recoveryPoints.RecoveryPointName ;
103
246
# Assert-AreEqual $recoveryPoints.RecoveryPointType "FileSystemConsistent";
104
247
Assert-AreEqual $recoveryPoints.ContainerType " AzureVM" ;
105
248
Assert-AreEqual $recoveryPoints.ItemName.Contains ($VirtualMachineName ) " True" ;
106
249
Assert-AreEqual $recoveryPoints.ItemName.Contains (" iaasvmcontainer" ) " True" ;
250
+ $endTime = Get-Date - format G;
251
+ " Get-AzureRMBackupRecoveryPoint" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
252
+ }
253
+ Catch
254
+ {
255
+ $endTime = Get-Date - format G;
256
+ " Get-AzureRMBackupRecoveryPoint" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
257
+ $FailFlag = 1 ;
258
+ $FailedAt = $FailedAt + (" Get-AzureRMBackupRecoveryPoint : " + $_ );
259
+ }
107
260
261
+ Try
262
+ {
263
+ $startTime = Get-Date - format G;
108
264
$Job = Restore-AzureRMBackupItem - RecoveryPoint $recoveryPoints - StorageAccountName $RestoreStorageAccount ;
109
265
Wait-AzureRMBackupJob - Job $Job ;
110
266
$JobDetails = Get-AzureRMBackupJobDetails - Vault $vault - JobID $Job.InstanceId ;
@@ -117,7 +273,20 @@ function Test-AzureBackupEndToEnd
117
273
Assert-AreEqual $JobDetails.ResourceGroupName $ResourceGroupName ;
118
274
Assert-AreEqual $JobDetails.ResourceName $ResourceName ;
119
275
Assert-AreEqual $JobDetails.Location $Location ;
276
+ $endTime = Get-Date - format G;
277
+ " Restore-AzureRMBackupItem" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
278
+ }
279
+ Catch
280
+ {
281
+ $endTime = Get-Date - format G;
282
+ " Restore-AzureRMBackupItem" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
283
+ $FailFlag = 1 ;
284
+ $FailedAt = $FailedAt + (" Restore-AzureRMBackupItem : " + $_ );
285
+ }
120
286
287
+ Try
288
+ {
289
+ $startTime = Get-Date - format G;
121
290
$Job = Disable-AzureRMBackupProtection - RemoveRecoveryPoints - Item $item [0 ];
122
291
Wait-AzureRMBackupJob - Job $Job ;
123
292
$JobDetails = Get-AzureRMBackupJobDetails - Vault $vault - JobID $Job.InstanceId ;
@@ -129,18 +298,88 @@ function Test-AzureBackupEndToEnd
129
298
Assert-AreEqual $JobDetails.ResourceGroupName $ResourceGroupName ;
130
299
Assert-AreEqual $JobDetails.ResourceName $ResourceName ;
131
300
Assert-AreEqual $JobDetails.Location $Location ;
301
+ $endTime = Get-Date - format G;
302
+ " Disable-AzureRMBackupProtection" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
303
+ }
304
+ Catch
305
+ {
306
+ $endTime = Get-Date - format G;
307
+ " Disable-AzureRMBackupProtection" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
308
+ $FailFlag = 1 ;
309
+ $FailedAt = $FailedAt + (" Disable-AzureRMBackupProtection : " + $_ );
310
+ }
132
311
312
+ Try
313
+ {
314
+ $startTime = Get-Date - format G;
133
315
$Job = Unregister-AzureRMBackupContainer - Container $container [0 ];
134
316
Wait-AzureRMBackupJob - Job $Job ;
135
317
$JobDetails = Get-AzureRMBackupJobDetails - Vault $vault - JobId $Job.InstanceId ;
136
318
Assert-AreEqual $JobDetails.Operation " UnRegister" ;
137
319
Assert-AreEqual $JobDetails.Status " Completed" ;
138
320
Assert-AreEqual $JobDetails.WorkloadName $VirtualMachineName ;
321
+ $endTime = Get-Date - format G;
322
+ " Unregister-AzureRMBackupContaine" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
323
+ }
324
+ Catch
325
+ {
326
+ $endTime = Get-Date - format G;
327
+ " Unregister-AzureRMBackupContaine" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
328
+ $FailFlag = 1 ;
329
+ $FailedAt = $FailedAt + (" Unregister-AzureRMBackupContaine : " + $_ );
330
+ }
139
331
332
+ Try
333
+ {
334
+ $startTime = Get-Date - format G;
140
335
Remove-AzureRMBackupProtectionPolicy - ProtectionPolicy $protectionpolicy ;
336
+ $endTime = Get-Date - format G;
337
+ " Remove-AzureRMBackupProtectionPolicy" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
338
+ }
339
+ Catch
340
+ {
341
+ $endTime = Get-Date - format G;
342
+ " Remove-AzureRMBackupProtectionPolicy" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
343
+ $FailFlag = 1 ;
344
+ $FailedAt = $FailedAt + (" Remove-AzureRMBackupProtectionPolicy : " + $_ );
345
+ }
141
346
347
+ Try
348
+ {
349
+ $startTime = Get-Date - format G;
142
350
Remove-AzureRMBackupVault - Vault $vault ;
143
-
144
351
$deletedVault = Get-AzureRMBackupVault - Name $ResourceName ;
145
352
Assert-Null $deletedVault ;
353
+ $endTime = Get-Date - format G;
354
+ " Remove-AzureRMBackupVault" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
355
+ }
356
+ Catch
357
+ {
358
+ $endTime = Get-Date - format G;
359
+ " Remove-AzureRMBackupVault" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
360
+ $FailFlag = 1 ;
361
+ $FailedAt = $FailedAt + (" Remove-AzureRMBackupVault : " + $_ );
362
+ }
363
+
364
+ Try
365
+ {
366
+ $startTime = Get-Date - format G;
367
+ Remove-AzureResourceGroup - Name $ResourceGroupName - Force;
368
+ $endTime = Get-Date - format G;
369
+ " Remove-AzureResourceGroup" , " Pass" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
370
+ }
371
+ Catch
372
+ {
373
+ $endTime = Get-Date - format G;
374
+ " Remove-AzureResourceGroup" , " Fail" , $startTime , $endTime -join " ," >> $ResultTxtFile ;
375
+ $FailFlag = 1 ;
376
+ $FailedAt = $FailedAt + (" Remove-AzureResourceGroup : " + $_ );
377
+ }
378
+
379
+ import-csv $ResultTxtFile - delimiter " ," | export-csv $ResultCsvFile - NoTypeInformation;
380
+
381
+ if ($FailFlag -eq 1 )
382
+ {
383
+ throw $FailedAt ;
384
+ }
146
385
}
0 commit comments