function/New-DCMVnet.ps1
function New-DCMVnet(){ <# .SYNOPSIS .DESCRIPTION .PARAMETER $p .PARAMTERS $s .INPUTS .OUTPUTS .EXAMPLE #> [CmdletBinding()] param( [parameter(Mandatory=$false)] [string]$CSVPath ) $VS=@(Import-Csv -Path $CSVPath) Write-Output "`nImporting Vnet's from excel sheet" Write-Output "Total number of Vnet's found in excel : $($VS.Count) `n" $VS| ForEach-Object{ $VnetName=$_.VnetName $VnetResourceGroupName=$_.VnetResourceGroupName $VnetLocation=$_.VnetLocation $VnetAddressPrefix=$_.VnetAddressPrefix $SubnetName=$_.SubnetName $SubnetAddressPrefix=$_.SubnetAddressPrefix $VnetResourceGroup=Get-AzResourceGroup -Name $VnetResourceGroupName -ErrorVariable notPresent -ErrorAction SilentlyContinue if($notPresent){ Write-Verbose "Resource Group $($VnetResourceGroupName) doesnot exist, Creating New Resource Group" $VnetResourceGroup=New-AzResourceGroup -Name $VnetResourceGroupName -Location $VnetLocation Write-Output "Resource Group Provisioning $($VnetResourceGroup.ProvisioningState)" } else{ Write-Output "Resource Group $($VnetResourceGroupName) exist" } $Subnet = New-AzVirtualNetworkSubnetConfig -Name $SubnetName -AddressPrefix $SubnetAddressPrefix $Parameters = @{ Name=$VnetName ResourceGroupName=$VnetResourceGroupName Location=$VnetLocation AddressPrefix=$VnetAddressPrefix Subnet=$Subnet } $Vnet=Get-AzVirtualNetwork -Name $VnetName -ResourceGroupName $VnetResourceGroupName -ErrorVariable NotPresent -ErrorAction SilentlyContinue if($notPresent){ Write-Output "Creating Virtual Network..." $VirtualNetwork=New-AzVirtualNetwork @Parameters Write-Output "Virtual Network Provisioning $($VirtualNetwork.ProvisioningState)" } else{ Write-Output "Virtual Network already exist..." } } } |