Skip to content

Adding cmdltets to support crud operations for new Route Table child resource of VirtualHub #10317

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 24 commits into from
Oct 23, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
609c694
first pass
nagula-ritvika Oct 10, 2019
3cde525
second pass
nagula-ritvika Oct 15, 2019
9e3a6bc
local sdk changes
nagula-ritvika Oct 15, 2019
08bfc2a
kept old commands and added new cmlets and modified models
nagula-ritvika Oct 17, 2019
b3dd27f
minor changes:
nagula-ritvika Oct 17, 2019
f29c8f6
update changeLog file
nagula-ritvika Oct 17, 2019
03dc853
merge with latest and fix conflicts
nagula-ritvika Oct 17, 2019
27e2b53
md files to update
nagula-ritvika Oct 18, 2019
2bc500b
using signed sdk
nagula-ritvika Oct 18, 2019
f4fa59f
help files updated
nagula-ritvika Oct 18, 2019
7aca7d1
testing
nagula-ritvika Oct 18, 2019
be795d2
minor change
nagula-ritvika Oct 21, 2019
52b57fb
merge with latest
nagula-ritvika Oct 21, 2019
8451499
move route table tests outside all cortex and other minor changes
nagula-ritvika Oct 21, 2019
86de768
moving route table tests to different file
nagula-ritvika Oct 21, 2019
d210729
deprecation warning for old cmds and add possible hubsku/wantype
nagula-ritvika Oct 22, 2019
e9503e1
test recording updated
nagula-ritvika Oct 22, 2019
f56122f
using signed sdk to prevent build errors
nagula-ritvika Oct 22, 2019
679d4ac
added signed sdks
nagula-ritvika Oct 22, 2019
d8202e2
fixing staticanalysis errors
nagula-ritvika Oct 22, 2019
d6182f2
cmdlets dont support shouldProcess, update staticanalysis
nagula-ritvika Oct 22, 2019
95bfd17
Use Network SDK from NuGet
anton-evseev Oct 23, 2019
69fc297
fix minor change
nagula-ritvika Oct 23, 2019
95e60eb
Merge branch 'network-october' of https://github.com/nagula-ritvika/a…
nagula-ritvika Oct 23, 2019
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

<ItemGroup>
<PackageReference Include="Microsoft.Azure.Management.CognitiveServices" Version="6.0.0-preview" />
<PackageReference Include="Microsoft.Azure.Management.Network" Version="19.16.1-preview" />
<PackageReference Include="Microsoft.Azure.Management.Network" Version="19.17.0-preview" />
</ItemGroup>

</Project>
2 changes: 1 addition & 1 deletion src/Compute/Compute.Test/Compute.Test.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
<PackageReference Include="Microsoft.Azure.Graph.RBAC" Version="3.4.0-preview" />
<PackageReference Include="Microsoft.Azure.Management.Compute" Version="29.1.0" />
<PackageReference Include="Microsoft.Azure.Management.KeyVault" Version="2.4.2" />
<PackageReference Include="Microsoft.Azure.Management.Network" Version="19.16.1-preview" />
<PackageReference Include="Microsoft.Azure.Management.Network" Version="19.17.0-preview" />
</ItemGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

<ItemGroup>
<PackageReference Include="Microsoft.Azure.Management.DataLake.Store" Version="2.4.2-preview" />
<PackageReference Include="Microsoft.Azure.Management.Network" Version="19.16.1-preview" />
<PackageReference Include="Microsoft.Azure.Management.Network" Version="19.17.0-preview" />
</ItemGroup>

<ItemGroup>
Expand Down
2 changes: 1 addition & 1 deletion src/Dns/Dns.Test/Dns.Test.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

<ItemGroup>
<PackageReference Include="Microsoft.Azure.Management.Dns" Version="3.0.1" />
<PackageReference Include="Microsoft.Azure.Management.Network" Version="19.16.1-preview" />
<PackageReference Include="Microsoft.Azure.Management.Network" Version="19.17.0-preview" />
</ItemGroup>

</Project>
2 changes: 1 addition & 1 deletion src/KeyVault/KeyVault.Test/KeyVault.Test.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
<PackageReference Include="Microsoft.Azure.KeyVault" Version="3.0.1" />
<PackageReference Include="Microsoft.Azure.KeyVault.WebKey" Version="3.0.1" />
<PackageReference Include="Microsoft.Azure.Management.KeyVault" Version="2.4.2" />
<PackageReference Include="Microsoft.Azure.Management.Network" Version="19.16.1-preview" />
<PackageReference Include="Microsoft.Azure.Management.Network" Version="19.17.0-preview" />
</ItemGroup>

<ItemGroup>
Expand Down
2 changes: 1 addition & 1 deletion src/NetAppFiles/NetAppFiles.Test/NetAppFiles.Test.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@

<ItemGroup>
<PackageReference Include="Microsoft.Azure.Management.NetApp" Version="1.1.0" />
<PackageReference Include="Microsoft.Azure.Management.Network" Version="19.16.1-preview" />
<PackageReference Include="Microsoft.Azure.Management.Network" Version="19.17.0-preview" />
</ItemGroup>

</Project>
2 changes: 1 addition & 1 deletion src/Network/Network.Test/Network.Test.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

<ItemGroup>
<PackageReference Include="Microsoft.Azure.Graph.RBAC" Version="3.4.0-preview" />
<PackageReference Include="Microsoft.Azure.Management.Network" Version="19.16.1-preview" />
<PackageReference Include="Microsoft.Azure.Management.Network" Version="19.17.0-preview" />
<PackageReference Include="Microsoft.Azure.Insights" Version="0.16.0-preview" />
<PackageReference Include="Microsoft.Azure.Management.Compute" Version="29.1.0" />
<PackageReference Include="Microsoft.Azure.Management.ContainerInstance" Version="2.0.0" />
Expand Down
2 changes: 1 addition & 1 deletion src/Network/Network.Test/ScenarioTests/CortexTests.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -481,4 +481,4 @@ function Test-CortexExpressRouteCRUD
{
Clean-ResourceGroup $rgname
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
// ----------------------------------------------------------------------------------
//
// Copyright Microsoft Corporation
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
// http://www.apache.org/licenses/LICENSE-2.0
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// ----------------------------------------------------------------------------------

using Microsoft.Azure.Commands.Network.Test.ScenarioTests;

namespace Commands.Network.Test.ScenarioTests
{
using Microsoft.WindowsAzure.Commands.ScenarioTest;
using Xunit;
using Xunit.Abstractions;

public class VirtualHubRouteTableTests : NetworkTestRunner
{
public VirtualHubRouteTableTests(ITestOutputHelper output)
: base(output)
{
}

[Fact]
[Trait(Category.AcceptanceType, Category.CheckIn)]
[Trait(Category.Owner, NrpTeamAlias.pgtm)]
public void TestVirtualHubRouteTableCRUD()
{
TestRunner.RunTestScript("Test-VirtualHubRouteTableCRUD");
}

}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
# ----------------------------------------------------------------------------------
#
# Copyright Microsoft Corporation
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ----------------------------------------------------------------------------------

<#
.SYNOPSIS
VirtualHubRouteTableCRUD
#>
function Test-VirtualHubRouteTableCRUD
{
# Setup
$rgName = Get-ResourceGroupName
$rglocation = Get-ProviderLocation "ResourceManagement" "westcentralus"

$virtualWanName = Get-ResourceName
$virtualHubName = Get-ResourceName
$expressRouteGatewayName = Get-ResourceName
$routeTable1Name = Get-ResourceName
$remoteVirtualNetworkName = Get-ResourceName

try
{
# Create the resource group
$resourceGroup = New-AzureRmResourceGroup -Name $rgName -Location $rglocation

# Create the Virtual Wan
$createdVirtualWan = New-AzureRmVirtualWan -ResourceGroupName $rgName -Name $virtualWanName -Location $rglocation -AllowVnetToVnetTraffic -AllowBranchToBranchTraffic
$virtualWan = Get-AzureRmVirtualWan -ResourceGroupName $rgName -Name $virtualWanName
Write-Debug "Created Virtual WAN $virtualWan.Name successfully"

# Create the Virtual Hub
$createdVirtualHub = New-AzureRmVirtualHub -ResourceGroupName $rgName -Name $virtualHubName -Location $rglocation -AddressPrefix "10.8.0.0/24" -VirtualWan $virtualWan
$virtualHub = Get-AzureRmVirtualHub -ResourceGroupName $rgName -Name $virtualHubName
Write-Debug "Created Virtual Hub virtualHub.Name successfully"

# Create the ExpressRouteGateway
$createdExpressRouteGateway = New-AzureRmExpressRouteGateway -ResourceGroupName $rgName -Name $expressRouteGatewayName -VirtualHub $virtualHub -MinScaleUnits 2
Write-Debug "Created ExpressRoute Gateway $expressRouteGatewayName successfully"
$expressRouteGateway = Get-AzureRmExpressRouteGateway -ResourceGroupName $rgName -Name $expressRouteGatewayName
Assert-NotNull $expressRouteGateway
Write-Debug "Retrieved ExpressRoute Gateway $expressRouteGatewayName successfully"

# Create a RouteTable child Resource
$route1 = Add-AzVirtualHubRoute -DestinationType "CIDR" -Destination @("10.4.0.0/16", "10.5.0.0/16") -NextHopType "IPAddress" -NextHop @("10.0.0.68")
$route2 = Add-AzVirtualHubRoute -DestinationType "CIDR" -Destination @("0.0.0.0/0") -NextHopType "IPAddress" -NextHop @("10.0.0.68")
     $routeTable1 = Add-AzVirtualHubRouteTable -Route @($route1, $route2) -Connection @("All_Vnets") -Name $routeTable1Name
Set-AzVirtualHub -ResourceGroupName $rgName -Name $virtualHubName -RouteTable @($routeTable1)
$virtualHub = Get-AzVirtualHub -ResourceGroupName $rgName -Name $virtualHubName
Assert-AreEqual $virtualHubName $virtualHub.Name
$routeTables = $virtualHub.RouteTables
Assert-AreEqual 1 @($routeTables).Count
$routes1 = $routeTables[0].Routes
Assert-AreEqual 2 @($routes1).Count

# Update a RouteTable child resource
$routeTable1 = Get-AzVirtualHubRouteTable -ResourceGroupName $rgName -HubName $virtualHubName -Name $routeTable1Name
$routeTable1.Routes.RemoveAt(1)
$routeTable1.Routes[0].NextHops = @("10.0.0.67")
$routeTable1.Connections = @("All_Branches")
Set-AzVirtualHub -ResourceGroupName $rgName -Name $virtualHubName -RouteTable @($routeTable1)
$virtualHub = Get-AzVirtualHub -ResourceGroupName $rgName -Name $virtualHubName
Assert-AreEqual $virtualHubName $virtualHub.Name
$routeTables = $virtualHub.RouteTables
Assert-AreEqual 1 @($routeTables).Count
$routes1 = $routeTables[0].Routes
Assert-AreEqual 1 @($routes1).Count

# Delete a RouteTable child resource
Remove-AzVirtualHubRouteTable -ResourceGroupName $rgName -HubName $virtualHubName -Name $routeTable1Name -Force
$virtualHub = Get-AzVirtualHub -ResourceGroupName $rgName -Name $virtualHubName
Assert-AreEqual $virtualHubName $virtualHub.Name
$routeTables = $virtualHub.RouteTables
Assert-AreEqual 0 @($routeTables).Count

# Clean up
Remove-AzureRmExpressRouteGateway -ResourceGroupName $rgName -Name $expressRouteGatewayName -Force
Assert-ThrowsLike { Get-AzureRmExpressRouteGateway -ResourceGroupName $rgName -Name $expressRouteGatewayName } "*Not*Found*"

Remove-AzureRmVirtualHub -ResourceGroupName $rgName -Name $virtualHubName -Force

Remove-AzureRmVirtualWan -ResourceGroupName $rgName -Name $virtualWanName -Force
Assert-ThrowsLike { Get-AzureRmVirtualWan -ResourceGroupName $rgName -Name $virtualWanName } "*Not*Found*"
}
finally
{
Clean-ResourceGroup $rgname
}
}
Loading