How to prevent the delivery of costly VMs (Azure)
This article has not been completed yet. However, it may already contain helpful Information and therefore it has been published at this stage.
Definition:
# Query VM - SKUs (A-,B-,D- Series with no more than 8 Cores):
(Get-AzVMSize -Location "westeurope" | Where {$_.NumberOfCores -le 8} | Where {$_.Name -match "Standard_A" -or $_.Name -mat[h "Standard_B" -or $_.Name -match "Standard_D"} | Where {$_.Name -notmatch "Promo"} | select -expandproperty Name) | convertto-json
# Result:
[
"Standard_B1ls",
"Standard_B1ms",
"Standard_B1s",
"Standard_B2ms",
"Standard_B2s",
"Standard_B4ms",
"Standard_B8ms",
"Standard_D1_v2",
"Standard_D2_v2",
"Standard_D3_v2",
"Standard_D4_v2",
"Standard_D11_v2",
"Standard_D12_v2",
"Standard_D13_v2",
"Standard_DS1_v2",
"Standard_DS2_v2",
"Standard_DS3_v2",
"Standard_DS4_v2",
"Standard_DS11-1_v2",
"Standard_DS11_v2",
"Standard_DS12-1_v2",
"Standard_DS12-2_v2",
"Standard_DS12_v2",
"Standard_DS13-2_v2",
"Standard_DS13-4_v2",
"Standard_DS13_v2",
"Standard_A1_v2",
"Standard_A2m_v2",
"Standard_A2_v2",
"Standard_A4m_v2",
"Standard_A4_v2",
"Standard_A8m_v2",
"Standard_A8_v2",
"Standard_D2_v3",
"Standard_D4_v3",
"Standard_D8_v3",
"Standard_D2s_v3",
"Standard_D4s_v3",
"Standard_D8s_v3",
"Standard_D2a_v4",
"Standard_D4a_v4",
"Standard_D8a_v4",
"Standard_D2as_v4",
"Standard_D4as_v4",
"Standard_D8as_v4",
"Standard_D2as_v5",
"Standard_D4as_v5",
"Standard_D8as_v5",
"Standard_D2ads_v5",
"Standard_D4ads_v5",
"Standard_D8ads_v5",
"Standard_D2ds_v4",
"Standard_D4ds_v4",
"Standard_D8ds_v4",
"Standard_D2ds_v5",
"Standard_D4ds_v5",
"Standard_D8ds_v5",
"Standard_D2d_v4",
"Standard_D4d_v4",
"Standard_D8d_v4",
"Standard_D2d_v5",
"Standard_D4d_v5",
"Standard_D8d_v5",
"Standard_D2s_v4",
"Standard_D4s_v4",
"Standard_D8s_v4",
"Standard_D2s_v5",
"Standard_D4s_v5",
"Standard_D8s_v5",
"Standard_D2_v4",
"Standard_D4_v4",
"Standard_D8_v4",
"Standard_D2_v5",
"Standard_D4_v5",
"Standard_D8_v5",
"Standard_D2ls_v5",
"Standard_D4ls_v5",
"Standard_D8ls_v5",
"Standard_D2lds_v5",
"Standard_D4lds_v5",
"Standard_D8lds_v5",
"Standard_B2ls_v2",
"Standard_B2s_v2",
"Standard_B2ts_v2",
"Standard_B4ls_v2",
"Standard_B4s_v2",
"Standard_B8ls_v2",
"Standard_B8s_v2",
"Standard_A0",
"Standard_A1",
"Standard_A2",
"Standard_A3",
"Standard_A5",
"Standard_A4",
"Standard_A6",
"Standard_A7",
"Standard_D1",
"Standard_D2",
"Standard_D3",
"Standard_D4",
"Standard_D11",
"Standard_D12",
"Standard_D13",
"Standard_DS1",
"Standard_DS2",
"Standard_DS3",
"Standard_DS4",
"Standard_DS11",
"Standard_DS12",
"Standard_DS13",
"Standard_B2als_v2",
"Standard_B2as_v2",
"Standard_B2ats_v2",
"Standard_B4als_v2",
"Standard_B4as_v2",
"Standard_B8als_v2",
"Standard_B8as_v2",
"Standard_D2plds_v5",
"Standard_D4plds_v5",
"Standard_D8plds_v5",
"Standard_D2pls_v5",
"Standard_D4pls_v5",
"Standard_D8pls_v5",
"Standard_D2pds_v5",
"Standard_D4pds_v5",
"Standard_D8pds_v5",
"Standard_D2ps_v5",
"Standard_D4ps_v5",
"Standard_D8ps_v5",
"Standard_B2pls_v2",
"Standard_B2ps_v2",
"Standard_B2pts_v2",
"Standard_B4pls_v2",
"Standard_B4ps_v2",
"Standard_B8pls_v2",
"Standard_B8ps_v2",
"Standard_DC8_v2",
"Standard_DC1s_v2",
"Standard_DC2s_v2",
"Standard_DC4s_v2",
"Standard_DC2s",
"Standard_DC4s",
"Standard_DC2as_v5",
"Standard_DC4as_v5",
"Standard_DC8as_v5",
"Standard_DC2ads_v5",
"Standard_DC4ads_v5",
"Standard_DC8ads_v5",
"Standard_DC4as_cc_v5",
"Standard_DC8as_cc_v5",
"Standard_DC4ads_cc_v5",
"Standard_DC8ads_cc_v5",
"Standard_DC1s_v3",
"Standard_DC2s_v3",
"Standard_DC4s_v3",
"Standard_DC8s_v3",
"Standard_DC1ds_v3",
"Standard_DC2ds_v3",
"Standard_DC4ds_v3",
"Standard_DC8ds_v3"
]
Assignment:
az policy state trigger-scan