Skip to main content

List VM offers

$location = "az1" # west europe

##########################
# List All images Offers
##########################

$AllPublishers = Get-AzVMImagePublisher -Location $location

$PublisherInfos =@()
Foreach ($Publisher in $AllPublishers)
{
$PublisherInfos += Get-AzVMImageOffer -Location $location -PublisherName $Publisher.PublisherName -ErrorAction SilentlyContinue
}

##########################
# Select image Offer
##########################

$SelectedOffer = $null
$SelectedOffer = @{}

$PublisherInfos | Out-GridView -Title "Select Offer" -OutputMode Single `
| Foreach-object { $SelectedOffer += @{"PublisherName" = $_.PublisherName; "Offer" = $_.Offer} }

##########################
# List All Image SKUs
##########################

$SelectedSKU = $null
$SelectedSKU = @()

$SelectedOffer | Foreach-object { Get-AzVMImageSku -Location $location -PublisherName $_.PublisherName -Offer $_.Offer }| Out-GridView -Title "Select SKU" -OutputMode Single `

##########################
# List All VM Sizes by region
##########################

Get-AzLocation | Get-AzVMSize | Out-GridView
``