Skip to content

Commit 928e682

Browse files
authored
Merge pull request Azure#2977 from Azure/master
Merge Master -> Dev [release 2.2.0]
2 parents a7694fe + 4ab5080 commit 928e682

File tree

144 files changed

+19111
-10080
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

144 files changed

+19111
-10080
lines changed

ChangeLog.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
## 2016.09.16 version 2.2.0
2+
* Network
3+
- New switch parameter added for network interface to enable/Disable accelerated networking -New-AzureRmNetworkInterface -EnableAcceleratedNetworking
4+
15
## 2016.09.08 version 2.1.0
26
* Compute
37
* Add support for querying encryption status from the AzureDiskEncryptionForLinux extension

src/ResourceManager/Compute/Commands.Compute.Test/Commands.Compute.Test.csproj

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -67,9 +67,9 @@
6767
<HintPath>..\..\..\packages\Microsoft.Azure.Management.Compute.13.0.4-prerelease\lib\net45\Microsoft.Azure.Management.Compute.dll</HintPath>
6868
<Private>True</Private>
6969
</Reference>
70-
<Reference Include="Microsoft.Azure.Management.Network, Version=6.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
71-
<SpecificVersion>False</SpecificVersion>
72-
<HintPath>..\..\..\packages\Microsoft.Azure.Management.Network.6.1.1-preview\lib\net45\Microsoft.Azure.Management.Network.dll</HintPath>
70+
71+
<Reference Include="Microsoft.Azure.Management.Network, Version=7.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
72+
<HintPath>..\..\..\packages\Microsoft.Azure.Management.Network.7.1.0-preview\lib\net45\Microsoft.Azure.Management.Network.dll</HintPath>
7373
<Private>True</Private>
7474
</Reference>
7575
<Reference Include="Microsoft.Azure.Management.Storage, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
@@ -398,6 +398,12 @@
398398
<None Include="SessionRecords\Microsoft.Azure.Commands.Compute.Test.ScenarioTests.VirtualMachineNetworkInterfaceTests\TestVirtualMachineSingleNetworkInterface.json">
399399
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
400400
</None>
401+
<None Include="SessionRecords\Microsoft.Azure.Commands.Compute.Test.ScenarioTests.VirtualMachineNetworkInterfaceTests\TestVirtualMachineSingleNetworkInterfaceWithAcceleratedNetworking.json">
402+
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
403+
</None>
404+
<None Include="SessionRecords\Microsoft.Azure.Commands.Compute.Test.ScenarioTests.VirtualMachineNetworkInterfaceTests\TestVMNicWithAcceleratedNetworkingValidations.json">
405+
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
406+
</None>
401407
<None Include="SessionRecords\Microsoft.Azure.Commands.Compute.Test.ScenarioTests.VirtualMachineProfileTests\TestVirtualMachineProfileWithoutAUC.json">
402408
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
403409
</None>

src/ResourceManager/Compute/Commands.Compute.Test/ScenarioTests/VirtualMachineNetworkInterfaceTests.cs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,5 +59,19 @@ public void TestEffectiveRoutesAndNsg()
5959
{
6060
ComputeTestController.NewInstance.RunPsTest("Test-EffectiveRoutesAndNsg");
6161
}
62+
63+
[Fact]
64+
[Trait(Category.AcceptanceType, Category.CheckIn)]
65+
public void TestVirtualMachineSingleNetworkInterfaceWithAcceleratedNetworking()
66+
{
67+
ComputeTestController.NewInstance.RunPsTest("Test-SingleNetworkInterfaceWithAcceleratedNetworking");
68+
}
69+
70+
[Fact]
71+
[Trait(Category.AcceptanceType, Category.CheckIn)]
72+
public void TestVMNicWithAcceleratedNetworkingValidations()
73+
{
74+
ComputeTestController.NewInstance.RunPsTest("Test-VMNicWithAcceleratedNetworkingValidations");
75+
}
6276
}
6377
}

src/ResourceManager/Compute/Commands.Compute.Test/ScenarioTests/VirtualMachineNetworkInterfaceTests.ps1

Lines changed: 244 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -591,3 +591,247 @@ function Test-EffectiveRoutesAndNsg
591591
Clean-ResourceGroup $rgname
592592
}
593593
}
594+
595+
<#
596+
.SYNOPSIS
597+
Test Virtual Machines with single NetworkInterface
598+
#>
599+
function Test-SingleNetworkInterfaceWithAcceleratedNetworking
600+
{
601+
# Setup
602+
$rgname = Get-ComputeTestResourceName
603+
604+
try
605+
{
606+
# Common
607+
$loc = "WestCentralUS";
608+
New-AzureRmResourceGroup -Name $rgname -Location $loc -Force;
609+
610+
# VM Profile & Hardware
611+
$vmsize = 'Standard_DS15_v2';
612+
$vmname = 'vm' + $rgname;
613+
$p = New-AzureRmVMConfig -VMName $vmname -VMSize $vmsize;
614+
Assert-AreEqual $p.HardwareProfile.VmSize $vmsize;
615+
616+
# NRP
617+
$subnet = New-AzureRmVirtualNetworkSubnetConfig -Name ('subnet' + $rgname) -AddressPrefix "10.0.0.0/24";
618+
$vnet = New-AzureRmVirtualNetwork -Force -Name ('vnet' + $rgname) -ResourceGroupName $rgname -Location $loc -AddressPrefix "10.0.0.0/16" -Subnet $subnet;
619+
$vnet = Get-AzureRmVirtualNetwork -Name ('vnet' + $rgname) -ResourceGroupName $rgname;
620+
$subnetId = $vnet.Subnets[0].Id;
621+
$pubip = New-AzureRmPublicIpAddress -Force -Name ('pubip' + $rgname) -ResourceGroupName $rgname -Location $loc -AllocationMethod Dynamic -DomainNameLabel ('pubip' + $rgname);
622+
$pubip = Get-AzureRmPublicIpAddress -Name ('pubip' + $rgname) -ResourceGroupName $rgname;
623+
$pubipId = $pubip.Id;
624+
$nic = New-AzureRmNetworkInterface -Force -Name ('nic' + $rgname) -ResourceGroupName $rgname -Location $loc -EnableAcceleratedNetworking -SubnetId $subnetId -PublicIpAddressId $pubip.Id;
625+
$nic = Get-AzureRmNetworkInterface -Name ('nic' + $rgname) -ResourceGroupName $rgname;
626+
$nicId = $nic.Id;
627+
Assert-AreEqual $nic.EnableAcceleratedNetworking $true
628+
629+
$p = Add-AzureRmVMNetworkInterface -VM $p -Id $nicId;
630+
Assert-AreEqual $p.NetworkProfile.NetworkInterfaces.Count 1;
631+
Assert-AreEqual $p.NetworkProfile.NetworkInterfaces[0].Id $nicId;
632+
Assert-Null $p.NetworkProfile.NetworkInterfaces[0].Primary;
633+
634+
# Storage Account (SA)
635+
$stoname = 'sto' + $rgname;
636+
$stotype = 'Standard_GRS';
637+
New-AzureRmStorageAccount -ResourceGroupName $rgname -Name $stoname -Location $loc -Type $stotype;
638+
$stoaccount = Get-AzureRmStorageAccount -ResourceGroupName $rgname -Name $stoname;
639+
640+
$osDiskName = 'osDisk';
641+
$osDiskCaching = 'ReadWrite';
642+
$osDiskVhdUri = "https://$stoname.blob.core.windows.net/test/os.vhd";
643+
$dataDiskVhdUri1 = "https://$stoname.blob.core.windows.net/test/data1.vhd";
644+
$dataDiskVhdUri2 = "https://$stoname.blob.core.windows.net/test/data2.vhd";
645+
$dataDiskVhdUri3 = "https://$stoname.blob.core.windows.net/test/data3.vhd";
646+
647+
$p = Set-AzureRmVMOSDisk -VM $p -Name $osDiskName -VhdUri $osDiskVhdUri -Caching $osDiskCaching -CreateOption FromImage;
648+
649+
$p = Add-AzureRmVMDataDisk -VM $p -Name 'testDataDisk1' -Caching 'ReadOnly' -DiskSizeInGB 10 -Lun 1 -VhdUri $dataDiskVhdUri1 -CreateOption Empty;
650+
$p = Add-AzureRmVMDataDisk -VM $p -Name 'testDataDisk2' -Caching 'ReadOnly' -DiskSizeInGB 11 -Lun 2 -VhdUri $dataDiskVhdUri2 -CreateOption Empty;
651+
$p = Add-AzureRmVMDataDisk -VM $p -Name 'testDataDisk3' -Caching 'ReadOnly' -DiskSizeInGB 12 -Lun 3 -VhdUri $dataDiskVhdUri3 -CreateOption Empty;
652+
$p = Remove-AzureRmVMDataDisk -VM $p -Name 'testDataDisk3';
653+
654+
Assert-AreEqual $p.StorageProfile.OSDisk.Caching $osDiskCaching;
655+
Assert-AreEqual $p.StorageProfile.OSDisk.Name $osDiskName;
656+
Assert-AreEqual $p.StorageProfile.OSDisk.Vhd.Uri $osDiskVhdUri;
657+
Assert-AreEqual $p.StorageProfile.DataDisks.Count 2;
658+
Assert-AreEqual $p.StorageProfile.DataDisks[0].Caching 'ReadOnly';
659+
Assert-AreEqual $p.StorageProfile.DataDisks[0].DiskSizeGB 10;
660+
Assert-AreEqual $p.StorageProfile.DataDisks[0].Lun 1;
661+
Assert-AreEqual $p.StorageProfile.DataDisks[0].Vhd.Uri $dataDiskVhdUri1;
662+
Assert-AreEqual $p.StorageProfile.DataDisks[1].Caching 'ReadOnly';
663+
Assert-AreEqual $p.StorageProfile.DataDisks[1].DiskSizeGB 11;
664+
Assert-AreEqual $p.StorageProfile.DataDisks[1].Lun 2;
665+
Assert-AreEqual $p.StorageProfile.DataDisks[1].Vhd.Uri $dataDiskVhdUri2;
666+
667+
# OS & Image
668+
$user = "Foo12";
669+
$password = $PLACEHOLDER;
670+
$securePassword = ConvertTo-SecureString $password -AsPlainText -Force;
671+
$cred = New-Object System.Management.Automation.PSCredential ($user, $securePassword);
672+
$computerName = 'test';
673+
$vhdContainer = "https://$stoname.blob.core.windows.net/test";
674+
$img = 'a699494373c04fc0bc8f2bb1389d6106__Windows-Server-2012-Datacenter-201503.01-en.us-127GB.vhd';
675+
676+
# $p.StorageProfile.OSDisk = $null;
677+
$p = Set-AzureRmVMOperatingSystem -VM $p -Windows -ComputerName $computerName -Credential $cred;
678+
679+
Assert-AreEqual $p.OSProfile.AdminUsername $user;
680+
Assert-AreEqual $p.OSProfile.ComputerName $computerName;
681+
Assert-AreEqual $p.OSProfile.AdminPassword $password;
682+
683+
# Image Reference
684+
$imgRef = Get-DefaultCRPImage "westcentralus" "MicrosoftWindowsServer";
685+
$p = ($imgRef | Set-AzureRmVMSourceImage -VM $p);
686+
Assert-NotNull $p.StorageProfile.ImageReference;
687+
Assert-Null $p.StorageProfile.SourceImageId;
688+
689+
# TODO: Remove Data Disks for now
690+
$p.StorageProfile.DataDisks = $null;
691+
692+
# Virtual Machine
693+
# TODO: Still need to do retry for New-AzureRmVM for SA, even it's returned in Get-.
694+
New-AzureRmVM -ResourceGroupName $rgname -Location $loc -VM $p;
695+
696+
# Get VM
697+
$vm1 = Get-AzureRmVM -Name $vmname -ResourceGroupName $rgname;
698+
Assert-AreEqual $vm1.Name $vmname;
699+
Assert-AreEqual $vm1.NetworkProfile.NetworkInterfaces.Count 1;
700+
Assert-AreEqual $vm1.NetworkProfile.NetworkInterfaces[0].Id $nicId;
701+
702+
# Get NetworkInterface
703+
$getnic = Get-AzureRmNetworkInterface -Name ('nic' + $rgname) -ResourceGroupName $rgname;
704+
Assert-AreEqual $vm1.NetworkProfile.NetworkInterfaces[0].Id $getnic.Id;
705+
Assert-AreEqual $getnic.EnableAcceleratedNetworking $true
706+
707+
# Remove
708+
Remove-AzureRmVM -Name $vmname -ResourceGroupName $rgname -Force;
709+
}
710+
finally
711+
{
712+
# Cleanup
713+
Clean-ResourceGroup $rgname
714+
}
715+
}
716+
717+
<#
718+
.SYNOPSIS
719+
Test Virtual Machines with single NetworkInterface
720+
#>
721+
function Test-VMNicWithAcceleratedNetworkingValidations
722+
{
723+
# Setup
724+
$rgname = Get-ComputeTestResourceName
725+
726+
try
727+
{
728+
# Common
729+
$loc = "WestCentralUS";
730+
New-AzureRmResourceGroup -Name $rgname -Location $loc -Force;
731+
732+
# VM Profile & Hardware
733+
$vmsize = 'Standard_DS15_v2';
734+
$vmname = 'vm' + $rgname;
735+
$p = New-AzureRmVMConfig -VMName $vmname -VMSize $vmsize;
736+
Assert-AreEqual $p.HardwareProfile.VmSize $vmsize;
737+
738+
# NRP
739+
$subnet = New-AzureRmVirtualNetworkSubnetConfig -Name ('subnet' + $rgname) -AddressPrefix "10.0.0.0/24";
740+
$vnet = New-AzureRmVirtualNetwork -Force -Name ('vnet' + $rgname) -ResourceGroupName $rgname -Location $loc -AddressPrefix "10.0.0.0/16" -Subnet $subnet;
741+
$vnet = Get-AzureRmVirtualNetwork -Name ('vnet' + $rgname) -ResourceGroupName $rgname;
742+
$subnetId = $vnet.Subnets[0].Id;
743+
$pubip = New-AzureRmPublicIpAddress -Force -Name ('pubip' + $rgname) -ResourceGroupName $rgname -Location $loc -AllocationMethod Dynamic -DomainNameLabel ('pubip' + $rgname);
744+
$pubip = Get-AzureRmPublicIpAddress -Name ('pubip' + $rgname) -ResourceGroupName $rgname;
745+
$pubipId = $pubip.Id;
746+
$nic = New-AzureRmNetworkInterface -Force -Name ('nic' + $rgname) -ResourceGroupName $rgname -Location $loc -EnableAcceleratedNetworking -SubnetId $subnetId -PublicIpAddressId $pubip.Id;
747+
$nic = Get-AzureRmNetworkInterface -Name ('nic' + $rgname) -ResourceGroupName $rgname;
748+
$nicId = $nic.Id;
749+
Assert-AreEqual $nic.EnableAcceleratedNetworking $true
750+
751+
$p = Add-AzureRmVMNetworkInterface -VM $p -Id $nicId;
752+
Assert-AreEqual $p.NetworkProfile.NetworkInterfaces.Count 1;
753+
Assert-AreEqual $p.NetworkProfile.NetworkInterfaces[0].Id $nicId;
754+
Assert-Null $p.NetworkProfile.NetworkInterfaces[0].Primary;
755+
756+
# Storage Account (SA)
757+
$stoname = 'sto' + $rgname;
758+
$stotype = 'Standard_GRS';
759+
New-AzureRmStorageAccount -ResourceGroupName $rgname -Name $stoname -Location $loc -Type $stotype;
760+
$stoaccount = Get-AzureRmStorageAccount -ResourceGroupName $rgname -Name $stoname;
761+
762+
$osDiskName = 'osDisk';
763+
$osDiskCaching = 'ReadWrite';
764+
$osDiskVhdUri = "https://$stoname.blob.core.windows.net/test/os.vhd";
765+
$dataDiskVhdUri1 = "https://$stoname.blob.core.windows.net/test/data1.vhd";
766+
$dataDiskVhdUri2 = "https://$stoname.blob.core.windows.net/test/data2.vhd";
767+
$dataDiskVhdUri3 = "https://$stoname.blob.core.windows.net/test/data3.vhd";
768+
769+
$p = Set-AzureRmVMOSDisk -VM $p -Name $osDiskName -VhdUri $osDiskVhdUri -Caching $osDiskCaching -CreateOption FromImage;
770+
771+
$p = Add-AzureRmVMDataDisk -VM $p -Name 'testDataDisk1' -Caching 'ReadOnly' -DiskSizeInGB 10 -Lun 1 -VhdUri $dataDiskVhdUri1 -CreateOption Empty;
772+
$p = Add-AzureRmVMDataDisk -VM $p -Name 'testDataDisk2' -Caching 'ReadOnly' -DiskSizeInGB 11 -Lun 2 -VhdUri $dataDiskVhdUri2 -CreateOption Empty;
773+
$p = Add-AzureRmVMDataDisk -VM $p -Name 'testDataDisk3' -Caching 'ReadOnly' -DiskSizeInGB 12 -Lun 3 -VhdUri $dataDiskVhdUri3 -CreateOption Empty;
774+
$p = Remove-AzureRmVMDataDisk -VM $p -Name 'testDataDisk3';
775+
776+
Assert-AreEqual $p.StorageProfile.OSDisk.Caching $osDiskCaching;
777+
Assert-AreEqual $p.StorageProfile.OSDisk.Name $osDiskName;
778+
Assert-AreEqual $p.StorageProfile.OSDisk.Vhd.Uri $osDiskVhdUri;
779+
Assert-AreEqual $p.StorageProfile.DataDisks.Count 2;
780+
Assert-AreEqual $p.StorageProfile.DataDisks[0].Caching 'ReadOnly';
781+
Assert-AreEqual $p.StorageProfile.DataDisks[0].DiskSizeGB 10;
782+
Assert-AreEqual $p.StorageProfile.DataDisks[0].Lun 1;
783+
Assert-AreEqual $p.StorageProfile.DataDisks[0].Vhd.Uri $dataDiskVhdUri1;
784+
Assert-AreEqual $p.StorageProfile.DataDisks[1].Caching 'ReadOnly';
785+
Assert-AreEqual $p.StorageProfile.DataDisks[1].DiskSizeGB 11;
786+
Assert-AreEqual $p.StorageProfile.DataDisks[1].Lun 2;
787+
Assert-AreEqual $p.StorageProfile.DataDisks[1].Vhd.Uri $dataDiskVhdUri2;
788+
789+
# OS & Image
790+
$user = "Foo12";
791+
$password = $PLACEHOLDER;
792+
$securePassword = ConvertTo-SecureString $password -AsPlainText -Force;
793+
$cred = New-Object System.Management.Automation.PSCredential ($user, $securePassword);
794+
$computerName = 'test';
795+
$vhdContainer = "https://$stoname.blob.core.windows.net/test";
796+
$img = 'a699494373c04fc0bc8f2bb1389d6106__Windows-Server-2012-Datacenter-201503.01-en.us-127GB.vhd';
797+
798+
# $p.StorageProfile.OSDisk = $null;
799+
$p = Set-AzureRmVMOperatingSystem -VM $p -Windows -ComputerName $computerName -Credential $cred;
800+
801+
Assert-AreEqual $p.OSProfile.AdminUsername $user;
802+
Assert-AreEqual $p.OSProfile.ComputerName $computerName;
803+
Assert-AreEqual $p.OSProfile.AdminPassword $password;
804+
805+
# Image Reference
806+
$imgRef = Get-DefaultCRPImage "westcentralus" "MicrosoftWindowsServer";
807+
$p = ($imgRef | Set-AzureRmVMSourceImage -VM $p);
808+
Assert-NotNull $p.StorageProfile.ImageReference;
809+
Assert-Null $p.StorageProfile.SourceImageId;
810+
811+
# TODO: Remove Data Disks for now
812+
$p.StorageProfile.DataDisks = $null;
813+
814+
# Virtual Machine
815+
# TODO: Still need to do retry for New-AzureRmVM for SA, even it's returned in Get-.
816+
New-AzureRmVM -ResourceGroupName $rgname -Location $loc -VM $p;
817+
818+
# Get VM
819+
$vm1 = Get-AzureRmVM -Name $vmname -ResourceGroupName $rgname;
820+
Assert-AreEqual $vm1.Name $vmname;
821+
Assert-AreEqual $vm1.NetworkProfile.NetworkInterfaces.Count 1;
822+
Assert-AreEqual $vm1.NetworkProfile.NetworkInterfaces[0].Id $nicId;
823+
824+
# Get NetworkInterface
825+
$getnic = Get-AzureRmNetworkInterface -Name ('nic' + $rgname) -ResourceGroupName $rgname;
826+
Assert-AreEqual $vm1.NetworkProfile.NetworkInterfaces[0].Id $getnic.Id;
827+
Assert-AreEqual $getnic.EnableAcceleratedNetworking $true
828+
829+
# Remove
830+
Remove-AzureRmVM -Name $vmname -ResourceGroupName $rgname -Force;
831+
}
832+
finally
833+
{
834+
# Cleanup
835+
Clean-ResourceGroup $rgname
836+
}
837+
}

0 commit comments

Comments
 (0)