Modules/Private/Extraction/ResourceDetails/Get-AZTIVMSkuDetails.ps1
|
<#
.Synopsis Parameter-translation shim: maps the v1 VM-SKU contract onto src/collect. .DESCRIPTION This function used to BE the inventory engine's VM SKU layer. It is now a shim over Get-ScoutVmSkuDetails (src/collect/Get-ScoutVmSkuDetails.ps1), which is the single implementation. AB#5648 retired the duplicate. Get-AzComputeResourceSku is a region-scoped ARM call with no Resource Graph table -- the same class of gap Get-ScoutVmQuotas fills. Only the distinct locations that actually contain a VM or VMSS are queried. The v1 contract is preserved exactly at this boundary: a single object with `type = 'AZSC/VM/SKU'` and `properties` holding one `Location`/`SKUs` entry per distinct location. Compute/VirtualMachine, Compute/VirtualMachineScaleSet and Containers/AKS match on that literal type string, so it is load-bearing. Same mixed-array exposure as Get-AZSCVMQuotas: a bare `$_.TYPE` on an ARM REST row that has no TYPE property aborts the run on the first such row (AB#5633). Get-ScoutVmSkuDetails keeps the property-existence guard, and the guard on `location` before `-ExpandProperty location`. One deliberate behaviour difference from the retired implementation: a Get-AzComputeResourceSku failure for one location now warns and skips that location instead of terminating the whole SKU pass. One bad region must not cost the caller every other region. .Link https://github.com/thisismydemo/azure-scout/Modules/Private/Extraction/ResourceDetails/Get-AZTIVMSkuDetails.ps1 .COMPONENT This PowerShell Module is part of Azure Scout (AZSC). .NOTES Tracks ADO AB#5648 (Epic AB#5638). Original v1 implementation: Claudio Merola, Olli Uronen. #> function Get-AZSCVMSkuDetails { Param ($Resources) Write-Debug ((Get-Date -Format 'yyyy-MM-dd_HH_mm_ss') + ' - ' + 'Getting VM SKU Details (src/collect, AB#5648)') return Get-ScoutVmSkuDetails -Resources $Resources } |