31 lines
1.1 KiB
PowerShell
31 lines
1.1 KiB
PowerShell
param(
|
|
[Parameter(Mandatory=$true)][string]$Subscription,
|
|
[Parameter(Mandatory=$false)][string]$ResourceGroupName,
|
|
[Parameter(Mandatory=$true)][string]$Location
|
|
)
|
|
|
|
Import-Module "Az.Accounts" -Scope Local
|
|
Import-Module "Az.Resources" -Scope Local
|
|
|
|
$AzSubscription = (Get-AzSubscription -SubscriptionId $Subscription -ErrorAction SilentlyContinue) ?? (Get-AzSubscription -SubscriptionName $Subscription -ErrorAction SilentlyContinue)
|
|
if(-not $AzSubscription) {
|
|
throw "The subscription '$Subscription' could not be found."
|
|
}
|
|
|
|
Select-AzSubscription -SubscriptionId $Subscription
|
|
|
|
if(-not $ResourceGroupName) {
|
|
$ResourceGroupName = $env:USERNAME + "-e2e-testing"
|
|
}
|
|
|
|
$AzResourceGroup = Get-AzResourceGroup -Name $ResourceGroupName -ErrorAction SilentlyContinue
|
|
if($AzResourceGroup) {
|
|
Write-Host "The resource group '$ResourceGroupName' already exists."
|
|
return
|
|
}
|
|
|
|
$confirm = Read-Host "Do you want to create the resource group '$ResourceGroupName' in the location '$Location'? (y/n)"
|
|
if($confirm -ne "y") {
|
|
throw "The resource group creation was cancelled."
|
|
}
|
|
$AzResourceGroup = New-AzResourceGroup -Name $ResourceGroupName -Location $Location |