@@ -272,3 +272,192 @@ Invoke-LiveTestScenario -Name "Network private link service" -Description "Test
272
272
$actualPls = Get-AzPrivateLinkService - Name $plsName - ResourceGroupName $rgName - ErrorAction SilentlyContinue
273
273
Assert-Null $actualPls
274
274
}
275
+
276
+ Invoke-LiveTestScenario - Name " Create network load balancer" - Description " Test creating a network load balancer" - ScenarioScript `
277
+ {
278
+ param ($rg )
279
+
280
+ $rgName = $rg.ResourceGroupName
281
+ $location = " westus"
282
+ $publicIpName = New-LiveTestResourceName
283
+ $feIpCfgName = New-LiveTestResourceName
284
+ $bePoolCfgName = New-LiveTestResourceName
285
+ $probeName = New-LiveTestResourceName
286
+ $lbRuleName = New-LiveTestResourceName
287
+ $lbName = New-LiveTestResourceName
288
+
289
+ $publicIp = New-AzPublicIpAddress - ResourceGroupName $rgName - Name $publicIpName - Location $location - AllocationMethod Dynamic
290
+ $feIpCfg = New-AzLoadBalancerFrontendIpConfig - Name $feIpCfgName - PublicIpAddress $publicIp
291
+ $bePoolCfg = New-AzLoadBalancerBackendAddressPoolConfig - Name $bePoolCfgName
292
+ $probe = New-AzLoadBalancerProbeConfig - Name $probeName - Protocol " Http" - Port 80 - RequestPath " healthcheck.aspx" - IntervalInSeconds 15 - ProbeCount 5 - ProbeThreshold 5
293
+ $lbRule = New-AzLoadBalancerRuleConfig - Name $lbRuleName - FrontendIpConfiguration $feIpCfg - BackendAddressPool $bePoolCfg - Protocol " Tcp" - FrontendPort 80 - BackendPort 80 - IdleTimeoutInMinutes 5 - EnableFloatingIP - LoadDistribution " SourceIP"
294
+ New-AzLoadBalancer - ResourceGroupName $rgName - Name $lbName - Location $location - FrontendIpConfiguration $feIpCfg - BackendAddressPool $bePoolCfg - Probe $probe - LoadBalancingRule $lbRule
295
+
296
+ $actual = Get-AzLoadBalancer - ResourceGroupName $rgName - Name $lbName
297
+ Assert-NotNull $actual
298
+ Assert-AreEqual $rgName $actual.ResourceGroupName
299
+ Assert-AreEqual $lbName $actual.Name
300
+ Assert-AreEqual $location $actual.Location
301
+ Assert-AreEqual " Succeeded" $actual.ProvisioningState
302
+
303
+ Assert-AreEqual 1 $actual.Probes.Count
304
+ Assert-AreEqual " Http" $actual.Probes [0 ].Protocol
305
+ Assert-AreEqual 80 $actual.Probes [0 ].Port
306
+
307
+ Assert-AreEqual 1 $actual.LoadBalancingRules.Count
308
+ Assert-AreEqual " Tcp" $actual.LoadBalancingRules [0 ].Protocol
309
+ Assert-AreEqual 80 $actual.LoadBalancingRules [0 ].FrontendPort
310
+ Assert-AreEqual 80 $actual.LoadBalancingRules [0 ].BackendPort
311
+ }
312
+
313
+ Invoke-LiveTestScenario - Name " Update network load balancer" - Description " Test updating an existing network load balancer" - ScenarioScript `
314
+ {
315
+ param ($rg )
316
+
317
+ $rgName = $rg.ResourceGroupName
318
+ $location = " eastus"
319
+ $publicIpName = New-LiveTestResourceName
320
+ $feIpCfgName = New-LiveTestResourceName
321
+ $bePoolCfgName = New-LiveTestResourceName
322
+ $probeName1 = New-LiveTestResourceName
323
+ $probeName2 = New-LiveTestResourceName
324
+ $lbRuleName = New-LiveTestResourceName
325
+ $lbName = New-LiveTestResourceName
326
+ $natRuleName = New-LiveTestResourceName
327
+
328
+ $publicIp = New-AzPublicIpAddress - ResourceGroupName $rgName - Name $publicIpName - Location $location - AllocationMethod Dynamic
329
+ $feIpCfg = New-AzLoadBalancerFrontendIpConfig - Name $feIpCfgName - PublicIpAddress $publicIp
330
+ $bePoolCfg = New-AzLoadBalancerBackendAddressPoolConfig - Name $bePoolCfgName
331
+ $probe = New-AzLoadBalancerProbeConfig - Name $probeName1 - Protocol " Http" - Port 80 - RequestPath " healthcheck80.aspx" - IntervalInSeconds 15 - ProbeCount 5 - ProbeThreshold 5
332
+ $lbRule = New-AzLoadBalancerRuleConfig - Name $lbRuleName - FrontendIpConfiguration $feIpCfg - BackendAddressPool $bePoolCfg - Protocol " Tcp" - FrontendPort 80 - BackendPort 80 - IdleTimeoutInMinutes 5 - EnableFloatingIP - LoadDistribution " SourceIP"
333
+ New-AzLoadBalancer - ResourceGroupName $rgName - Name $lbName - Location $location - FrontendIpConfiguration $feIpCfg - BackendAddressPool $bePoolCfg - Probe $probe - LoadBalancingRule $lbRule
334
+ $lb = Get-AzLoadBalancer - ResourceGroupName $rgName - Name $lbName
335
+
336
+ $lb | Add-AzLoadBalancerProbeConfig - Name $probeName2 - Protocol " Http" - Port 443 - RequestPath " healthcheck443.aspx" - IntervalInSeconds 10 - ProbeCount 3 - ProbeThreshold 3
337
+ $lb | Add-AzLoadBalancerInboundNatRuleConfig - Name $natRuleName - FrontendIPConfiguration $lb.FrontendIpConfigurations [0 ] - Protocol " Tcp" - FrontendPort 3350 - BackendPort 3350 - EnableFloatingIP
338
+ $lb | Set-AzLoadBalancerRuleConfig - Name $lbRuleName - FrontendIPConfiguration $lb.FrontendIpConfigurations [0 ] - Protocol " Tcp" - FrontendPort 8080 - BackendPort 8080
339
+ $lb | Set-AzLoadBalancer
340
+
341
+ $actual = Get-AzLoadBalancer - ResourceGroupName $rgName - Name $lbName
342
+ Assert-NotNull $actual
343
+ Assert-AreEqual $rgName $actual.ResourceGroupName
344
+ Assert-AreEqual $lbName $actual.Name
345
+ Assert-AreEqual $location $actual.Location
346
+ Assert-AreEqual " Succeeded" $actual.ProvisioningState
347
+
348
+ Assert-AreEqual 1 $actual.LoadBalancingRules.Count
349
+ Assert-AreEqual " Tcp" $actual.LoadBalancingRules [0 ].Protocol
350
+ Assert-AreEqual 8080 $actual.LoadBalancingRules [0 ].FrontendPort
351
+ Assert-AreEqual 8080 $actual.LoadBalancingRules [0 ].BackendPort
352
+
353
+ Assert-AreEqual 1 $actual.InboundNatRules.Count
354
+ Assert-AreEqual " Tcp" $actual.InboundNatRules [0 ].Protocol
355
+ Assert-AreEqual 3350 $actual.InboundNatRules [0 ].FrontendPort
356
+ Assert-AreEqual 3350 $actual.InboundNatRules [0 ].BackendPort
357
+
358
+ Assert-AreEqual 2 $actual.Probes.Count
359
+ }
360
+
361
+ Invoke-LiveTestScenario - Name " Remove network load balancer" - Description " Test removing a network load balancer" - ScenarioScript `
362
+ {
363
+ param ($rg )
364
+
365
+ $rgName = $rg.ResourceGroupName
366
+ $location = " centralus"
367
+ $publicIpName = New-LiveTestResourceName
368
+ $feIpCfgName = New-LiveTestResourceName
369
+ $bePoolCfgName = New-LiveTestResourceName
370
+ $probeName = New-LiveTestResourceName
371
+ $lbRuleName = New-LiveTestResourceName
372
+ $lbName = New-LiveTestResourceName
373
+
374
+ $publicIp = New-AzPublicIpAddress - ResourceGroupName $rgName - Name $publicIpName - Location $location - AllocationMethod Dynamic
375
+ $feIpCfg = New-AzLoadBalancerFrontendIpConfig - Name $feIpCfgName - PublicIpAddress $publicIp
376
+ $bePoolCfg = New-AzLoadBalancerBackendAddressPoolConfig - Name $bePoolCfgName
377
+ $probe = New-AzLoadBalancerProbeConfig - Name $probeName - Protocol " Http" - Port 80 - RequestPath " healthcheck.aspx" - IntervalInSeconds 15 - ProbeCount 5 - ProbeThreshold 5
378
+ $lbRule = New-AzLoadBalancerRuleConfig - Name $lbRuleName - FrontendIpConfiguration $feIpCfg - BackendAddressPool $bePoolCfg - Protocol " Tcp" - FrontendPort 80 - BackendPort 80 - IdleTimeoutInMinutes 5 - EnableFloatingIP - LoadDistribution " SourceIP"
379
+ New-AzLoadBalancer - ResourceGroupName $rgName - Name $lbName - Location $location - FrontendIpConfiguration $feIpCfg - BackendAddressPool $bePoolCfg - Probe $probe - LoadBalancingRule $lbRule
380
+
381
+ Remove-AzLoadBalancer - ResourceGroupName $rgName - Name $lbName - Force
382
+ $actual = Get-AzLoadBalancer - ResourceGroupName $rgName - Name $lbName - ErrorAction SilentlyContinue
383
+ Assert-Null $actual
384
+ }
385
+
386
+ Invoke-LiveTestScenario - Name " Create virtual network" - Description " Test creating a virtual network" - ScenarioScript `
387
+ {
388
+ param ($rg )
389
+
390
+ $rgName = $rg.ResourceGroupName
391
+ $location = " westus"
392
+ $feSnetName = New-LiveTestResourceName
393
+ $beSnetName = New-LiveTestResourceName
394
+ $vnetName = New-LiveTestResourceName
395
+
396
+ $feSnet = New-AzVirtualNetworkSubnetConfig - Name $feSnetName - AddressPrefix " 10.0.1.0/24"
397
+ $beSnet = New-AzVirtualNetworkSubnetConfig - Name $beSnetName - AddressPrefix " 10.0.2.0/24"
398
+ New-AzVirtualNetwork - ResourceGroupName $rgName - Name $vnetName - Location $location - AddressPrefix " 10.0.0.0/16" - Subnet $feSnet , $beSnet - DnsServer 10.0 .1.10 , 10.0 .1.11
399
+
400
+ $actual = Get-AzVirtualNetwork - ResourceGroupName $rgName - Name $vnetName
401
+ Assert-NotNull $actual
402
+ Assert-AreEqual $rgName $actual.ResourceGroupName
403
+ Assert-AreEqual $vnetName $actual.Name
404
+ Assert-AreEqual $location $actual.Location
405
+ Assert-AreEqual " Succeeded" $actual.ProvisioningState
406
+ Assert-AreEqual 1 $actual.AddressSpace.AddressPrefixes.Count
407
+ Assert-AreEqual " 10.0.0.0/16" $actual.AddressSpace.AddressPrefixes [0 ]
408
+ Assert-AreEqual 2 $actual.Subnets.Count
409
+ }
410
+
411
+ Invoke-LiveTestScenario - Name " Update virtual network" - Description " Test updating an existing virtual network" - ScenarioScript `
412
+ {
413
+ param ($rg )
414
+
415
+ $rgName = $rg.ResourceGroupName
416
+ $location = " eastus"
417
+ $feSnetName = New-LiveTestResourceName
418
+ $beSnetName = New-LiveTestResourceName
419
+ $vnetName = New-LiveTestResourceName
420
+
421
+ $feSnet = New-AzVirtualNetworkSubnetConfig - Name $feSnetName - AddressPrefix " 10.0.1.0/24"
422
+ New-AzVirtualNetwork - ResourceGroupName $rgName - Name $vnetName - Location $location - AddressPrefix " 10.0.0.0/16" - Subnet $feSnet
423
+
424
+ $vnet = Get-AzVirtualNetwork - ResourceGroupName $rgName - Name $vnetName
425
+ Assert-NotNull $vnet
426
+ Assert-AreEqual $rgName $vnet.ResourceGroupName
427
+ Assert-AreEqual $vnetName $vnet.Name
428
+ Assert-AreEqual $location $vnet.Location
429
+ Assert-AreEqual " Succeeded" $vnet.ProvisioningState
430
+ Assert-AreEqual 1 $vnet.Subnets.Count
431
+
432
+ $vnet | Add-AzVirtualNetworkSubnetConfig - Name $beSnetName - AddressPrefix " 10.0.2.0/24"
433
+ $vnet | Remove-AzVirtualNetworkSubnetConfig - Name $feSnetName
434
+ $vnet | Set-AzVirtualNetwork
435
+
436
+ $actual = Get-AzVirtualNetwork - ResourceGroupName $rgName - Name $vnetName
437
+ Assert-NotNull $actual
438
+ Assert-AreEqual $rgName $actual.ResourceGroupName
439
+ Assert-AreEqual $vnetName $actual.Name
440
+ Assert-AreEqual $location $actual.Location
441
+ Assert-AreEqual " Succeeded" $actual.ProvisioningState
442
+ Assert-AreEqual 1 $actual.Subnets.Count
443
+ Assert-AreEqual $beSnetName $actual.Subnets [0 ].Name
444
+ }
445
+
446
+ Invoke-LiveTestScenario - Name " Remove virtual network" - Description " Test removing a virtual network" - ScenarioScript `
447
+ {
448
+ param ($rg )
449
+
450
+ $rgName = $rg.ResourceGroupName
451
+ $location = " centralus"
452
+ $feSnetName = New-LiveTestResourceName
453
+ $beSnetName = New-LiveTestResourceName
454
+ $vnetName = New-LiveTestResourceName
455
+
456
+ $feSnet = New-AzVirtualNetworkSubnetConfig - Name $feSnetName - AddressPrefix " 10.0.1.0/24"
457
+ $beSnet = New-AzVirtualNetworkSubnetConfig - Name $beSnetName - AddressPrefix " 10.0.2.0/24"
458
+ New-AzVirtualNetwork - ResourceGroupName $rgName - Name $vnetName - Location $location - AddressPrefix " 10.0.0.0/16" - Subnet $feSnet , $beSnet
459
+ Remove-AzVirtualNetwork - ResourceGroupName $rgName - Name $vnetName - Force
460
+
461
+ $actual = Get-AzVirtualNetwork - ResourceGroupName $rgName - Name $vnetName - ErrorAction SilentlyContinue
462
+ Assert-Null $actual
463
+ }
0 commit comments