Skip to content

Commit ccc6508

Browse files
authored
Merge branch 'release-2019-09-24' into enrich
2 parents e9f1fce + 696edfc commit ccc6508

File tree

36 files changed

+18579
-5410
lines changed

36 files changed

+18579
-5410
lines changed

src/Compute/Compute.Test/Compute.Test.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
<ItemGroup>
1414
<PackageReference Include="Microsoft.Azure.Graph.RBAC" Version="3.4.0-preview" />
15-
<PackageReference Include="Microsoft.Azure.Management.Compute" Version="29.0.0" />
15+
<PackageReference Include="Microsoft.Azure.Management.Compute" Version="29.1.0" />
1616
<PackageReference Include="Microsoft.Azure.Management.KeyVault" Version="2.4.2" />
1717
<PackageReference Include="Microsoft.Azure.Management.Network" Version="19.15.0-preview" />
1818
</ItemGroup>

src/Compute/Compute.Test/ScenarioTests/AvailabilitySetTests.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,5 +30,12 @@ public void TestAvailabilitySet()
3030
{
3131
TestRunner.RunTestScript("Test-AvailabilitySet");
3232
}
33+
34+
[Fact]
35+
[Trait(Category.AcceptanceType, Category.CheckIn)]
36+
public void TestAvailabilitySetVM()
37+
{
38+
TestRunner.RunTestScript("Test-AvailabilitySetVM");
39+
}
3340
}
3441
}

src/Compute/Compute.Test/ScenarioTests/AvailabilitySetTests.ps1

Lines changed: 113 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -51,27 +51,27 @@ function Test-AvailabilitySet
5151
$asets = Get-AzAvailabilitySet -ResourceGroupName $rgname;
5252
Assert-NotNull $asets;
5353
Assert-AreEqual $asetName $asets[0].Name;
54-
54+
5555
$asets = Get-AzAvailabilitySet -ResourceGroupName $wildcardRgQuery;
5656
Assert-NotNull $asets;
5757
Assert-AreEqual $asetName $asets[0].Name;
58-
58+
5959
$asets = Get-AzAvailabilitySet -Name $wildcardNameQuery;
6060
Assert-NotNull $asets;
6161
Assert-AreEqual $asetName $asets[0].Name;
62-
62+
6363
$asets = Get-AzAvailabilitySet -Name $asetName;
6464
Assert-NotNull $asets;
6565
Assert-AreEqual $asetName $asets[0].Name;
66-
66+
6767
$asets = Get-AzAvailabilitySet -ResourceGroupName $wildcardRgQuery -Name $asetName;
6868
Assert-NotNull $asets;
6969
Assert-AreEqual $asetName $asets[0].Name;
70-
70+
7171
$asets = Get-AzAvailabilitySet -ResourceGroupName $wildcardRgQuery -Name $wildcardNameQuery;
7272
Assert-NotNull $asets;
7373
Assert-AreEqual $asetName $asets[0].Name;
74-
74+
7575
$asets = Get-AzAvailabilitySet -ResourceGroupName $rgname -Name $wildcardNameQuery;
7676
Assert-NotNull $asets;
7777
Assert-AreEqual $asetName $asets[0].Name;
@@ -113,7 +113,7 @@ function Test-AvailabilitySet
113113
Assert-AreEqual "OK" $st.StatusCode;
114114
Assert-AreEqual "OK" $st.ReasonPhrase;
115115
Assert-True { $st.IsSuccessStatusCode };
116-
116+
117117
$asets = Get-AzAvailabilitySet -ResourceGroupName $rgname;
118118
$avset = $asets | ? {$_.Name -eq $asetName};
119119
Assert-Null $avset;
@@ -124,3 +124,109 @@ function Test-AvailabilitySet
124124
Clean-ResourceGroup $rgname
125125
}
126126
}
127+
128+
<#
129+
.SYNOPSIS
130+
Test Virtual Machine Size and Usage
131+
#>
132+
function Test-AvailabilitySetVM
133+
{
134+
# Setup
135+
$rgname = Get-ComputeTestResourceName
136+
$passed = $false;
137+
138+
try
139+
{
140+
# Common
141+
$loc = Get-ComputeVMLocation;
142+
New-AzResourceGroup -Name $rgname -Location $loc -Force;
143+
144+
# Availability Set
145+
$asetName = 'aset' + $rgname;
146+
New-AzAvailabilitySet -ResourceGroupName $rgname -Name $asetName -Location $loc;
147+
$aset = Get-AzAvailabilitySet -ResourceGroupName $rgname -Name $asetName;
148+
149+
# VM Profile & Hardware
150+
$vmsize = 'Standard_DS1_v2';
151+
$vmname = 'vm' + $rgname;
152+
$p = New-AzVMConfig -VMName $vmname -VMSize $vmsize -AvailabilitySetId $aset.Id;
153+
Assert-AreEqual $p.HardwareProfile.VmSize $vmsize;
154+
155+
# NRP
156+
$subnet = New-AzVirtualNetworkSubnetConfig -Name ('subnet' + $rgname) -AddressPrefix "10.0.0.0/24";
157+
$vnet = New-AzVirtualNetwork -Force -Name ('vnet' + $rgname) -ResourceGroupName $rgname -Location $loc -AddressPrefix "10.0.0.0/16" -Subnet $subnet;
158+
$vnet = Get-AzVirtualNetwork -Name ('vnet' + $rgname) -ResourceGroupName $rgname;
159+
$subnetId = $vnet.Subnets[0].Id;
160+
$pubip = New-AzPublicIpAddress -Force -Name ('pubip' + $rgname) -ResourceGroupName $rgname -Location $loc -AllocationMethod Dynamic -DomainNameLabel ('pubip' + $rgname);
161+
$pubip = Get-AzPublicIpAddress -Name ('pubip' + $rgname) -ResourceGroupName $rgname;
162+
$pubipId = $pubip.Id;
163+
$nic = New-AzNetworkInterface -Force -Name ('nic' + $rgname) -ResourceGroupName $rgname -Location $loc -SubnetId $subnetId -PublicIpAddressId $pubip.Id;
164+
$nic = Get-AzNetworkInterface -Name ('nic' + $rgname) -ResourceGroupName $rgname;
165+
$nicId = $nic.Id;
166+
167+
$p = Add-AzVMNetworkInterface -VM $p -Id $nicId;
168+
Assert-AreEqual $p.NetworkProfile.NetworkInterfaces.Count 1;
169+
Assert-AreEqual $p.NetworkProfile.NetworkInterfaces[0].Id $nicId;
170+
171+
# Storage Account (SA)
172+
$stoname = 'sto' + $rgname;
173+
$stotype = 'Standard_GRS';
174+
New-AzStorageAccount -ResourceGroupName $rgname -Name $stoname -Location $loc -Type $stotype;
175+
$stoaccount = Get-AzStorageAccount -ResourceGroupName $rgname -Name $stoname;
176+
177+
$osDiskName = 'osDisk';
178+
$osDiskCaching = 'ReadWrite';
179+
$osDiskVhdUri = "https://$stoname.blob.core.windows.net/test/os.vhd";
180+
$p = Set-AzVMOSDisk -VM $p -Name $osDiskName -VhdUri $osDiskVhdUri -Caching $osDiskCaching -CreateOption FromImage -DiskSizeInGB 200;
181+
182+
Assert-AreEqual $p.StorageProfile.OSDisk.Caching $osDiskCaching;
183+
Assert-AreEqual $p.StorageProfile.OSDisk.Name $osDiskName;
184+
Assert-AreEqual $p.StorageProfile.OSDisk.Vhd.Uri $osDiskVhdUri;
185+
Assert-AreEqual $p.StorageProfile.OSDisk.DiskSizeGB 200;
186+
187+
# OS & Image
188+
$user = "Foo12";
189+
$password = $PLACEHOLDER;
190+
$securePassword = ConvertTo-SecureString $password -AsPlainText -Force;
191+
$cred = New-Object System.Management.Automation.PSCredential ($user, $securePassword);
192+
$computerName = 'test';
193+
194+
$p = Set-AzVMOperatingSystem -VM $p -Windows -ComputerName $computerName -Credential $cred;
195+
Assert-AreEqual $p.OSProfile.AdminUsername $user;
196+
Assert-AreEqual $p.OSProfile.ComputerName $computerName;
197+
Assert-AreEqual $p.OSProfile.AdminPassword $password;
198+
199+
# Image Reference
200+
$imgRef = Get-DefaultCRPImage -loc $loc;
201+
$p = Set-AzVMSourceImage -VM $p -PublisherName $imgRef.PublisherName -Offer $imgRef.Offer -Skus $imgRef.Skus -Version $imgRef.Version;
202+
Assert-NotNull $p.StorageProfile.ImageReference;
203+
Assert-Null $p.StorageProfile.SourceImageId;
204+
205+
# Virtual Machine
206+
New-AzVM -ResourceGroupName $rgname -Location $loc -VM $p;
207+
$vm = Get-AzVM -ResourceGroupName $rgname -Name $vmname;
208+
209+
# Validate Disks
210+
Assert-AreEqual $vm.StorageProfile.OSDisk.Caching $osDiskCaching;
211+
Assert-AreEqual $vm.StorageProfile.OSDisk.Name $osDiskName;
212+
Assert-AreEqual $vm.StorageProfile.OSDisk.Vhd.Uri $osDiskVhdUri;
213+
Assert-AreEqual $vm.StorageProfile.OSDisk.DiskSizeGB 200;
214+
215+
# Validate AvSet for VM reference
216+
$aset = Get-AzAvailabilitySet -ResourceGroupName $rgname -Name $asetName;
217+
Assert-NotNull $aset.VirtualMachinesReferences;
218+
Assert-True { $aset.VirtualMachinesReferences.Count -gt 0 };
219+
Assert-AreEqual $vm.Id $aset.VirtualMachinesReferences[0].Id;
220+
221+
$asets = Get-AzAvailabilitySet -ResourceGroupName $rgname;
222+
Assert-NotNull ($asets | ? {($_.VirtualMachinesReferences -ne $null) -and ($_.VirtualMachinesReferences[0].Id -eq $vm.Id)});
223+
224+
$asets = Get-AzAvailabilitySet;
225+
Assert-NotNull ($asets | ? {($_.VirtualMachinesReferences -ne $null) -and ($_.VirtualMachinesReferences[0].Id -eq $vm.Id)});
226+
}
227+
finally
228+
{
229+
# Cleanup
230+
Clean-ResourceGroup $rgname
231+
}
232+
}

src/Compute/Compute.Test/ScenarioTests/DiskRPTests.cs

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,5 +51,12 @@ public void TestSnapshotEncrypt()
5151
{
5252
TestRunner.RunTestScript("Test-SnapshotEncrypt");
5353
}
54+
55+
[Fact]
56+
[Trait(Category.AcceptanceType, Category.CheckIn)]
57+
public void TestDiskUpload()
58+
{
59+
TestRunner.RunTestScript("Test-DiskUpload");
60+
}
5461
}
55-
}
62+
}

src/Compute/Compute.Test/ScenarioTests/DiskRPTests.ps1

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,8 @@ function Test-Disk
7676
$disk = Get-AzDisk -ResourceGroupName $rgname
7777
Assert-AreEqual $null $disk.Zones;
7878
Assert-AreEqual 5 $disk.DiskSizeGB;
79+
Assert-AreEqual (5 * 1073741824) $disk.DiskSizeBytes;
80+
7981
Assert-AreEqual "Standard_LRS" $disk.Sku.Name;
8082
Assert-AreEqual Windows $disk.OsType;
8183
Assert-AreEqual Empty $disk.CreationData.CreateOption;
@@ -84,6 +86,7 @@ function Test-Disk
8486
$disk = Get-AzDisk -ResourceGroupName $wildcardRgQuery
8587
Assert-AreEqual $null $disk.Zones;
8688
Assert-AreEqual 5 $disk.DiskSizeGB;
89+
Assert-AreEqual (5 * 1073741824) $disk.DiskSizeBytes;
8790
Assert-AreEqual "Standard_LRS" $disk.Sku.Name;
8891
Assert-AreEqual Windows $disk.OsType;
8992
Assert-AreEqual Empty $disk.CreationData.CreateOption;
@@ -92,6 +95,7 @@ function Test-Disk
9295
$disk = Get-AzDisk -Name $diskname
9396
Assert-AreEqual $null $disk.Zones;
9497
Assert-AreEqual 5 $disk.DiskSizeGB;
98+
Assert-AreEqual (5 * 1073741824) $disk.DiskSizeBytes;
9599
Assert-AreEqual "Standard_LRS" $disk.Sku.Name;
96100
Assert-AreEqual Windows $disk.OsType;
97101
Assert-AreEqual Empty $disk.CreationData.CreateOption;
@@ -100,6 +104,7 @@ function Test-Disk
100104
$disk = Get-AzDisk -Name $wildcardNameQuery
101105
Assert-AreEqual $null $disk.Zones;
102106
Assert-AreEqual 5 $disk.DiskSizeGB;
107+
Assert-AreEqual (5 * 1073741824) $disk.DiskSizeBytes;
103108
Assert-AreEqual "Standard_LRS" $disk.Sku.Name;
104109
Assert-AreEqual Windows $disk.OsType;
105110
Assert-AreEqual Empty $disk.CreationData.CreateOption;
@@ -116,6 +121,7 @@ function Test-Disk
116121
$disk = Get-AzDisk -ResourceGroupName $wildcardRgQuery -Name $wildcardNameQuery
117122
Assert-AreEqual $null $disk.Zones;
118123
Assert-AreEqual 5 $disk.DiskSizeGB;
124+
Assert-AreEqual (5 * 1073741824) $disk.DiskSizeBytes;
119125
Assert-AreEqual "Standard_LRS" $disk.Sku.Name;
120126
Assert-AreEqual Windows $disk.OsType;
121127
Assert-AreEqual Empty $disk.CreationData.CreateOption;
@@ -132,6 +138,7 @@ function Test-Disk
132138
$disk = Get-AzDisk -ResourceGroupName $rgname -DiskName $diskname;
133139
Assert-AreEqual $null $disk.Zones;
134140
Assert-AreEqual 5 $disk.DiskSizeGB;
141+
Assert-AreEqual (5 * 1073741824) $disk.DiskSizeBytes;
135142
Assert-AreEqual "Standard_LRS" $disk.Sku.Name;
136143
Assert-AreEqual Windows $disk.OsType;
137144
Assert-AreEqual Empty $disk.CreationData.CreateOption;
@@ -162,6 +169,9 @@ function Test-Disk
162169
$result = $job | Wait-Job;
163170
Assert-AreEqual "Completed" $result.State;
164171

172+
$disk = Get-AzDisk -ResourceGroupName $rgname -DiskName $diskname;
173+
Assert-AreEqual (10 * 1073741824) $disk.DiskSizeBytes;
174+
165175
# Remove test
166176
$job = Remove-AzDisk -ResourceGroupName $rgname -DiskName $diskname -Force -AsJob;
167177
$result = $job | Wait-Job;
@@ -227,60 +237,69 @@ function Test-Snapshot
227237

228238
$snapshot = Get-AzSnapshot -ResourceGroupName $rgname
229239
Assert-AreEqual 5 $snapshot.DiskSizeGB;
240+
Assert-AreEqual (5 * 1073741824) $snapshot.DiskSizeBytes;
230241
Assert-AreEqual "Standard_LRS" $snapshot.Sku.Name;
231242
Assert-AreEqual Windows $snapshot.OsType;
232243
Assert-AreEqual Empty $snapshot.CreationData.CreateOption;
233244
Assert-AreEqual $false $snapshot.EncryptionSettingsCollection.Enabled;
234245

235246
$snapshot = Get-AzSnapshot -ResourceGroupName $wildcardRgQuery
236247
Assert-AreEqual 5 $snapshot.DiskSizeGB;
248+
Assert-AreEqual (5 * 1073741824) $snapshot.DiskSizeBytes;
237249
Assert-AreEqual "Standard_LRS" $snapshot.Sku.Name;
238250
Assert-AreEqual Windows $snapshot.OsType;
239251
Assert-AreEqual Empty $snapshot.CreationData.CreateOption;
240252
Assert-AreEqual $false $snapshot.EncryptionSettingsCollection.Enabled;
241253

242254
$snapshot = Get-AzSnapshot -SnapshotName $snapshotname;
243255
Assert-AreEqual 5 $snapshot.DiskSizeGB;
256+
Assert-AreEqual (5 * 1073741824) $snapshot.DiskSizeBytes;
244257
Assert-AreEqual "Standard_LRS" $snapshot.Sku.Name;
245258
Assert-AreEqual Windows $snapshot.OsType;
246259
Assert-AreEqual Empty $snapshot.CreationData.CreateOption;
247260
Assert-AreEqual $false $snapshot.EncryptionSettingsCollection.Enabled;
248261

249262
$snapshot = Get-AzSnapshot -SnapshotName $wildcardNameQuery;
250263
Assert-AreEqual 5 $snapshot.DiskSizeGB;
264+
Assert-AreEqual (5 * 1073741824) $snapshot.DiskSizeBytes;
251265
Assert-AreEqual "Standard_LRS" $snapshot.Sku.Name;
252266
Assert-AreEqual Windows $snapshot.OsType;
253267
Assert-AreEqual Empty $snapshot.CreationData.CreateOption;
254268
Assert-AreEqual $false $snapshot.EncryptionSettingsCollection.Enabled;
255269

256270
$snapshot = Get-AzSnapshot -ResourceGroupName $wildcardRgQuery -SnapshotName $wildcardNameQuery;
257271
Assert-AreEqual 5 $snapshot.DiskSizeGB;
272+
Assert-AreEqual (5 * 1073741824) $snapshot.DiskSizeBytes;
258273
Assert-AreEqual "Standard_LRS" $snapshot.Sku.Name;
259274
Assert-AreEqual Windows $snapshot.OsType;
260275
Assert-AreEqual Empty $snapshot.CreationData.CreateOption;
261276
Assert-AreEqual $false $snapshot.EncryptionSettingsCollection.Enabled;
262277

263278
$snapshot = Get-AzSnapshot -ResourceGroupName $wildcardRgQuery -SnapshotName $snapshotname;
264279
Assert-AreEqual 5 $snapshot.DiskSizeGB;
280+
Assert-AreEqual (5 * 1073741824) $snapshot.DiskSizeBytes;
265281
Assert-AreEqual "Standard_LRS" $snapshot.Sku.Name;
266282
Assert-AreEqual Windows $snapshot.OsType;
267283
Assert-AreEqual Empty $snapshot.CreationData.CreateOption;
268284
Assert-AreEqual $false $snapshot.EncryptionSettingsCollection.Enabled;
269285

270286
$snapshot = Get-AzSnapshot -ResourceGroupName $rgname -SnapshotName $wildcardNameQuery;
271287
Assert-AreEqual 5 $snapshot.DiskSizeGB;
288+
Assert-AreEqual (5 * 1073741824) $snapshot.DiskSizeBytes;
272289
Assert-AreEqual "Standard_LRS" $snapshot.Sku.Name;
273290
Assert-AreEqual Windows $snapshot.OsType;
274291
Assert-AreEqual Empty $snapshot.CreationData.CreateOption;
275292
Assert-AreEqual $false $snapshot.EncryptionSettingsCollection.Enabled;
276293

277294
$snapshot = Get-AzSnapshot -ResourceGroupName $rgname -SnapshotName $snapshotname;
278295
Assert-AreEqual 5 $snapshot.DiskSizeGB;
296+
Assert-AreEqual (5 * 1073741824) $snapshot.DiskSizeBytes;
279297
Assert-AreEqual "Standard_LRS" $snapshot.Sku.Name;
280298
Assert-AreEqual Windows $snapshot.OsType;
281299
Assert-AreEqual Empty $snapshot.CreationData.CreateOption;
282300
Assert-AreEqual $false $snapshot.EncryptionSettingsCollection.Enabled;
283301
Assert-AreEqual "V2" $snapshot.HyperVGeneration;
302+
Assert-False {$snapshot.Incremental}
284303

285304
# Grant access test
286305
$job = Grant-AzSnapshotAccess -ResourceGroupName $rgname -SnapshotName $snapshotname -Access $access -DurationInSecond 5 -AsJob;
@@ -301,6 +320,9 @@ function Test-Snapshot
301320
$result = $job | Wait-Job;
302321
Assert-AreEqual "Completed" $result.State;
303322

323+
$snapshot = Get-AzSnapshot -ResourceGroupName $rgname -SnapshotName $snapshotname;
324+
Assert-AreEqual (10 * 1073741824) $snapshot.DiskSizeBytes;
325+
304326
# Remove test
305327
$job = Remove-AzSnapshot -ResourceGroupName $rgname -SnapshotName $snapshotname -Force -AsJob;
306328
$result = $job | Wait-Job;
@@ -702,3 +724,69 @@ function Test-SnapshotEncrypt
702724
Clean-ResourceGroup $rgname
703725
}
704726
}
727+
728+
<#
729+
.SYNOPSIS
730+
Testing disk upload
731+
#>
732+
function Test-DiskUpload
733+
{
734+
# Setup
735+
$rgname = Get-ComputeTestResourceName;
736+
$diskname0 = 'disk0' + $rgname;
737+
$diskname1 = 'disk1' + $rgname;
738+
739+
try
740+
{
741+
# Common
742+
$loc = Get-ComputeVMLocation;
743+
New-AzResourceGroup -Name $rgname -Location $loc -Force;
744+
745+
$diskconfig = New-AzDiskConfig -Location $loc -SkuName 'Standard_LRS' -OsType 'Windows' `
746+
-DiskSizeGB 32767 -CreateOption 'Upload';
747+
748+
New-AzDisk -ResourceGroupName $rgname -DiskName $diskname0 -Disk $diskconfig;
749+
750+
$disk = Get-AzDisk -ResourceGroupName $rgname -DiskName $diskname0;
751+
Assert-AreEqual 35183298347520 $disk.CreationData.UploadSizeBytes; # 35,183,298,347,520 = 32,767 * 1,073,741,824 + 512 (for vhd footer)
752+
Assert-AreEqual "Standard_LRS" $disk.Sku.Name;
753+
Assert-AreEqual Windows $disk.OsType;
754+
Assert-AreEqual "ReadyToUpload" $disk.DiskState;
755+
756+
# Update disk
757+
$disk | Update-AzDisk -ResourceGroupName $rgname -DiskName $diskname0;
758+
759+
$disk = Get-AzDisk -ResourceGroupName $rgname -DiskName $diskname0;
760+
Assert-AreEqual 35183298347520 $disk.CreationData.UploadSizeBytes;
761+
Assert-AreEqual "Standard_LRS" $disk.Sku.Name;
762+
Assert-AreEqual Windows $disk.OsType;
763+
Assert-AreEqual "ReadyToUpload" $disk.DiskState;
764+
765+
Remove-AzDisk -ResourceGroupName $rgname -DiskName $diskname0 -Force;
766+
767+
$diskconfig = New-AzDiskConfig -Location $loc -SkuName 'Standard_LRS' -OsType 'Windows' `
768+
-UploadSizeInBytes 35183298347520 -CreateOption 'Upload';
769+
770+
New-AzDisk -ResourceGroupName $rgname -DiskName $diskname1 -Disk $diskconfig;
771+
772+
$disk = Get-AzDisk -ResourceGroupName $rgname -DiskName $diskname1;
773+
Assert-AreEqual 35183298347520 $disk.CreationData.UploadSizeBytes;
774+
Assert-AreEqual "Standard_LRS" $disk.Sku.Name;
775+
Assert-AreEqual Windows $disk.OsType;
776+
Assert-AreEqual "ReadyToUpload" $disk.DiskState;
777+
778+
# Update disk
779+
$disk | Update-AzDisk -ResourceGroupName $rgname -DiskName $diskname1;
780+
781+
$disk = Get-AzDisk -ResourceGroupName $rgname -DiskName $diskname1;
782+
Assert-AreEqual 35183298347520 $disk.CreationData.UploadSizeBytes;
783+
Assert-AreEqual "Standard_LRS" $disk.Sku.Name;
784+
Assert-AreEqual Windows $disk.OsType;
785+
Assert-AreEqual "ReadyToUpload" $disk.DiskState;
786+
}
787+
finally
788+
{
789+
# Cleanup
790+
Clean-ResourceGroup $rgname
791+
}
792+
}

0 commit comments

Comments
 (0)