function/New-DCMSubnet.ps1
function New-DCMSubnet(){ <# .SYNOPSIS .DESCRIPTION .PARAMETER $p .PARAMTERS $s .INPUTS .OUTPUTS .EXAMPLE #> [CmdletBinding()] param( [parameter(Mandatory=$false)] [string]$CSVPath ) $SN=@(Import-Csv -Path $CSVPath) Write-Output "`nImporting Subnet's from excel sheet" Write-Output "Total number of Subnet's found in excel : $($SN.Count) `n" $SN| ForEach-Object{ $SubnetName=$_.SubnetName $VnetName=$_.VnetName $VnetResourceGroupName=$_.VnetResourceGroupName $SubnetAddressPrefix=$_.SubnetAddressPrefix $VnetResourceGroup=Get-AzResourceGroup -Name $VnetResourceGroupName -ErrorVariable notPresent -ErrorAction SilentlyContinue if($notPresent){ Write-Output "Resource Group Does not Exist" Write-Output "Press 1 to Create Resource Group and Virtual Network" Write-Output "Press any other key to exit" [int]$Choice = Read-Host Switch($Choice){ 1{New-DCMVnet -CSVPath "C:\DCM Module Excel Sheet\Vnet.csv"} Default{"Exiting...";break} } } else{ Write-Output "Resource Group $($VnetResourceGroupName) exist" } $Vnet=Get-AzVirtualNetwork -Name $VnetName -ResourceGroupName $VnetResourceGroupName -ErrorVariable NotPresent -ErrorAction SilentlyContinue if($notPresent){ Write-Output "Virtual Network Does not exist in the mentioned Resource Group" Write-Output "Press 1 to Create Virtual Network" Write-Output "Press any other key to exit" [int]$Choice1 = Read-Host Switch($Choice1){ 1{ New-DCMVnet -CSVPath "C:\DCM Module Excel Sheet\Vnet.csv"; $Vnet=Get-AzVirtualNetwork -Name $VnetName -ResourceGroupName $VnetResourceGroupName } Default{"Exiting...";break} } } else{ Write-Output "Virtual Network $($VnetName) exist..." } Write-Output "Creating Subnet: $($SubnetName) and adding it to the Virtual Network: $($VnetName) " $SubnetConfig=Add-AzVirtualNetworkSubnetConfig -Name $SubnetName -VirtualNetwork $Vnet -AddressPrefix $SubnetAddressPrefix $NewSubnet=$vnet | Set-AzVirtualNetwork if($NewSubnet.Subnets.Name -eq $SubnetName) { Write-Output "Subnet $($SubnetName) provisioning Succeeded" } else{ Write-Output "Subnet $($SubnetName) provisioning is not Succeeded"} } } |