@@ -1407,3 +1407,180 @@ function Test-EdgeZoneConfigurations
1407
1407
Clean - ResourceGroup $rgname
1408
1408
}
1409
1409
}
1410
+
1411
+ <#
1412
+ . SYNOPSIS
1413
+ Test the New-AzDiskPurchasePlanConfig and New-AzDisk with PurchasePlan param
1414
+ Also Test New-AzSnapshotConfig and New-AzDiskUpdateConfig
1415
+ #>
1416
+ function Test-DiskPurchasePlan
1417
+ {
1418
+ $rgname = Get-ComputeTestResourceName ;
1419
+ $loc = " eastus2" ;
1420
+
1421
+ try {
1422
+
1423
+ New-AzResourceGroup - Name $rgname - Location $loc - Force;
1424
+ $diskPurchasePlan = New-AzDiskPurchasePlanConfig - Name " planName" - Publisher " planPublisher" - Product " planPorduct" - PromotionCode " planPromotionCode" ;
1425
+ $diskconfig = New-AzDiskConfig - Location $loc - DiskSizeGB 1 - AccountType " Premium_LRS" - OsType " Windows" - CreateOption " Empty" - HyperVGeneration " V1" - PurchasePlan $diskPurchasePlan ;
1426
+ $diskname = " disk" + $rgname ;
1427
+ $disk = New-AzDisk - ResourceGroupName $rgname - DiskName $diskname - Disk $diskconfig ;
1428
+ Assert-AreEqual $disk.PurchasePlan.Product " planPorduct" ;
1429
+ Assert-AreEqual $disk.PurchasePlan.PromotionCode " planPromotionCode" ;
1430
+ Assert-AreEqual $disk.PurchasePlan.Publisher " planPublisher" ;
1431
+ Assert-AreEqual $disk.PurchasePlan.Name " planName" ;
1432
+
1433
+ $diskPurchasePlanUpdate = New-AzDiskPurchasePlanConfig - Name " planNameupdate" - Publisher " planPublisherupdate" - Product " planPorductupdate" - PromotionCode " planPromotionCodeupdate" ;
1434
+ $updateconfig = New-AzDiskUpdateConfig - PurchasePlan $diskPurchasePlanUpdate ;
1435
+ $disk = Update-AzDisk - ResourceGroupName $rgname - DiskName $diskname - DiskUpdate $updateconfig ;
1436
+ Assert-AreEqual $disk.PurchasePlan.Product " planPorductupdate" ;
1437
+ Assert-AreEqual $disk.PurchasePlan.PromotionCode " planPromotionCodeupdate" ;
1438
+ Assert-AreEqual $disk.PurchasePlan.Publisher " planPublisherupdate" ;
1439
+ Assert-AreEqual $disk.PurchasePlan.Name " planNameupdate" ;
1440
+ $snapshotConfig = New-AzSnapshotConfig - Location ' Central US' - DiskSizeGB 5 - AccountType Standard_LRS - OsType Windows - CreateOption Empty - PurchasePlan $diskPurchasePlan ;
1441
+ New-AzSnapshot - ResourceGroupName $rgname - SnapshotName ' Snapshot02' - Snapshot $snapshotConfig ;
1442
+ $snapshot = Get-AzSnapshot - ResourceGroupName $rgname - SnapshotName ' Snapshot02' ;
1443
+ Assert-AreEqual $snapshot.PurchasePlan.Product " planPorduct" ;
1444
+ Assert-AreEqual $snapshot.PurchasePlan.PromotionCode " planPromotionCode" ;
1445
+ Assert-AreEqual $snapshot.PurchasePlan.Publisher " planPublisher" ;
1446
+ Assert-AreEqual $snapshot.PurchasePlan.Name " planName" ;
1447
+ }
1448
+
1449
+ finally {
1450
+ # Cleanup
1451
+ Clean - ResourceGroup $rgname
1452
+ }
1453
+ }
1454
+
1455
+ <#
1456
+ . SYNOPSIS
1457
+ Test Disk Sku Premium_ZRS and StandardSSD_ZRS
1458
+ #>
1459
+ function Test-DiskSkuPremiumZRSStandardSSDZRS
1460
+ {
1461
+ $rgname = Get-ComputeTestResourceName ;
1462
+ $loc = " eastus2euap" ;
1463
+
1464
+ try
1465
+ {
1466
+ New-AzResourceGroup - Name $rgname - Location $loc - Force;
1467
+ $diskConfig = New-AzDiskConfig - Location $loc - SkuName ' Premium_ZRS' - CreateOption ' Empty' - DiskSizeGB 2 ;
1468
+ $diskname = " disk" + $rgname ;
1469
+ $diskPr = New-AzDisk - ResourceGroupName $rgname - DiskName $diskname - Disk $diskConfig ;
1470
+ $disk = Get-AzDisk - ResourceGroupName $rgname - DiskName $diskname ;
1471
+ Assert-AreEqual $disk.Sku.Name " Premium_ZRS" ;
1472
+ $diskupdateconfig = New-AzDiskUpdateConfig - SkuName ' StandardSSD_ZRS' ;
1473
+ Update-AzDisk - ResourceGroupName $rgname - DiskName $diskname - DiskUpdate $diskupdateconfig ;
1474
+ $updatedDisk = Get-AzDisk - ResourceGroupName $rgname - DiskName $diskname ;
1475
+ Assert-AreEqual $updatedDisk.Sku.Name " StandardSSD_ZRS" ;
1476
+ }
1477
+ finally
1478
+ {
1479
+ # Cleanup
1480
+ Clean - ResourceGroup $rgname
1481
+ }
1482
+ }
1483
+
1484
+ <#
1485
+ . SYNOPSIS
1486
+ Test Set-AzDiskSecurityProfile
1487
+ #>
1488
+ function Test-SecurityProfile
1489
+ {
1490
+ $rgname = Get-ComputeTestResourceName ;
1491
+ $loc = " eastus2" ;
1492
+
1493
+ try
1494
+ {
1495
+ New-AzResourceGroup - Name $rgname - Location $loc - Force;
1496
+
1497
+ $diskconfig = New-AzDiskConfig - Location $loc - DiskSizeGB 1 - AccountType " Premium_LRS" - OsType " Windows" - CreateOption " Empty" - HyperVGeneration " V1" ;
1498
+ $diskname = " disk" + $rgname ;
1499
+ $diskconfig = Set-AzDiskSecurityProfile - Disk $diskconfig - SecurityType " TrustedLaunch" ;
1500
+ $diskPr = New-AzDisk - ResourceGroupName $rgname - DiskName $diskname - Disk $diskconfig ;
1501
+ $diskconfig = New-AzDiskConfig - Location $loc - DiskSizeGB 1 - AccountType " Premium_LRS" - OsType " Windows" - CreateOption " Empty" - HyperVGeneration " V1" ;
1502
+ $diskname = " disk" + $rgname ;
1503
+ $diskSt = New-AzDisk - ResourceGroupName $rgname - DiskName $diskname - Disk $diskconfig ;
1504
+ $snapshotconfig = New-AzSnapshotConfig - Location $loc - EdgeZone $edge - DiskSizeGB 5 - SkuName Premium_LRS - OsType Windows - CreateOption Empty;
1505
+ $snapshotname = " snapshot" + $rgname ;
1506
+ $snapshot = New-AzSnapshot - ResourceGroupName $rgname - SnapshotName $snapshotname - Snapshot $snapshotconfig ;
1507
+ Assert-AreEqual $snapshot.Location $loc ;
1508
+ Assert-AreEqual $snapshot.ExtendedLocation.Name $edge ;
1509
+ $imageConfig = New-AzImageConfig - Location $loc - EdgeZone $edge - HyperVGeneration " V1" ;
1510
+ Assert-AreEqual $imageConfig.ExtendedLocation.Name $edge ;
1511
+ }
1512
+ finally
1513
+ {
1514
+ # Cleanup
1515
+ Clean - ResourceGroup $rgname
1516
+ }
1517
+ }
1518
+
1519
+ <#
1520
+ . SYNOPSIS
1521
+ Test SupportsHibernation Parameter
1522
+ #>
1523
+ function Test-SupportsHibernation
1524
+ {
1525
+ $rgname = Get-ComputeTestResourceName ;
1526
+ $loc = " eastus2euap" ;
1527
+
1528
+ try {
1529
+ New-AzResourceGroup - Name $rgname - Location $loc - Force;
1530
+ $diskConfig = New-AzDiskConfig - Location ' eastus2euap' - AccountType ' Premium_LRS' - CreateOption ' Empty' - DiskSizeGB 2 - SupportsHibernation $true ;
1531
+ $diskname = " disk" + $rgname ;
1532
+ New-AzDisk - ResourceGroupName $rgname - DiskName $diskname - Disk $diskConfig ;
1533
+ $disk = Get-AzDisk - ResourceGroupName $rgname - DiskName $diskname ;
1534
+ Assert-AreEqual $disk.SupportsHibernation $true ;
1535
+
1536
+ $updateconfig = New-AzDiskUpdateConfig - SupportsHibernation $false ;
1537
+ $disk = Update-AzDisk - ResourceGroupName $rgname - DiskName $diskname - DiskUpdate $updateconfig ;
1538
+ Assert-AreEqual $disk.SupportsHibernation $false ;
1539
+
1540
+ $snapshotConfig = New-AzSnapshotConfig - Location $loc - DiskSizeGB 5 - AccountType Standard_LRS - OsType Windows - CreateOption Empty - SupportsHibernation $true ;
1541
+ $snapshotname = " snapshot" + $rgname ;
1542
+ New-AzSnapshot - ResourceGroupName $rgname - SnapshotName $snapshotname - Snapshot $snapshotConfig ;
1543
+ $snapshot = Get-AzSnapshot - ResourceGroupName $rgname - SnapshotName $snapshotname ;
1544
+ Assert-AreEqual $snapshot.SupportsHibernation $true ;
1545
+
1546
+ $snapshot = Get-AzSnapshot - ResourceGroupName $rgname - SnapshotName $snapshotname ;
1547
+ $snapshotUpdateConfig = New-AzSnapshotUpdateConfig - SupportsHibernation $false ;
1548
+ Update-AzSnapshot - ResourceGroupName $rgname - SnapshotName $snapshotname - SnapshotUpdate $snapshotUpdateConfig ;
1549
+ $newSnapshot = Get-AzSnapshot - ResourceGroupName $rgname - SnapshotName $snapshotname ;
1550
+ Assert-AreEqual $newSnapshot.SupportsHibernation $false ;
1551
+ }
1552
+ finally
1553
+ {
1554
+ # Cleanup
1555
+ Clean - ResourceGroup $rgname
1556
+ }
1557
+ }
1558
+
1559
+ <#
1560
+ . SYNOPSIS
1561
+ Test AutomaticKeyRotation parameter
1562
+ #>
1563
+ function Test-AutomaticKeyRotation
1564
+ {
1565
+ $rgname = Get-ComputeTestResourceName ;
1566
+ $loc = " eastus2euap" ;
1567
+
1568
+ try
1569
+ {
1570
+ New-AzResourceGroup - Name $rgname - Location $loc - Force;
1571
+ $config = New-AzDiskEncryptionSetConfig - Location ' eastus2' - KeyUrl " https://diskrptest.vault.azure.net/keys/test2/f8d94ab139cf4596a947a27f1de7bef8" - SourceVaultId ' /subscriptions/e37510d7-33b6-4676-886f-ee75bcc01871/resourceGroups/haagha_pwshelltest/providers/Microsoft.KeyVault/vaults/diskrptest' - IdentityType ' SystemAssigned' - RotationToLatestKeyVersionEnabled $true ;
1572
+ New-AzDiskEncryptionSet - ResourceGroupName $rgname - Name ' encd1' - DiskEncryptionSet $config ;
1573
+ $des = Get-AzDiskEncryptionSet - ResourceGroupName $rgname - Name ' encd1' ;
1574
+ Assert-AreEqual $des.RotationToLatestKeyVersionEnabled $true ;
1575
+
1576
+ Update-AzDiskEncryptionSet - ResourceGroupName $rgname - Name ' encd1' - RotationToLatestKeyVersionEnabled $false ;
1577
+ $desUpdated = Get-AzDiskEncryptionSet - ResourceGroupName $rgname - Name ' encd1' ;
1578
+ Assert-AreEqual $desUpdated.RotationToLatestKeyVersionEnabled $false ;
1579
+
1580
+ }
1581
+ finally
1582
+ {
1583
+ # Cleanup
1584
+ Clean - ResourceGroup $rgname
1585
+ }
1586
+ }
0 commit comments