SKUs API inconsistent
mjudeikis opened this issue · 0 comments
recently (after weekend of May 25th) we noticed regression in Azure SKU compute API:
API: "github.com/Azure/azure-sdk-for-go/services/compute/mgmt/2020-06-01/compute"
Client: client := compute.NewResourceSkusClientWithBaseURI(environment.ResourceManagerEndpoint, subscriptionID)
Behavior: If called All compute types returns data with their availability. Example:
(working) Example (marked fields in question):
(compute.ResourceSku) {
ResourceType: (*string)(0xc000a313a0)((len=5) "disks"),
Name: (*string)(0xc000a313b0)((len=12) "UltraSSD_LRS"),
Tier: (*string)(0xc000a313c0)((len=5) "Ultra"),
Size: (*string)(0xc000a313d0)((len=1) "U"),
Family: (*string)(<nil>),
Kind: (*string)(<nil>),
Capacity: (*compute.ResourceSkuCapacity)(<nil>),
Locations: (*[]string)(0xc000a33920)((len=1 cap=4) {
(string) (len=13) "canadacentral"
}),
LocationInfo: (*[]compute.ResourceSkuLocationInfo)(0xc000a33960)((len=1 cap=4) {
(compute.ResourceSkuLocationInfo) {
Location: (*string)(0xc000a313e0)((len=13) "canadacentral"),
Zones: (*[]string)(0xc000a339a0)((len=3 cap=4) {
(string) (len=1) "2",
(string) (len=1) "3",
(string) (len=1) "1"
}),
ZoneDetails: (*[]compute.ResourceSkuZoneDetails)(0xc000a339e0)({
})
}
}),
(Not working) But SKU's in question now returns:
(compute.ResourceSku) {
ResourceType: (*string)(0xc00304e200)((len=15) "virtualMachines"),
Name: (*string)(0xc00304e210)((len=21) "Standard_NC64as_T4_v3"),
Tier: (*string)(0xc00304e220)((len=8) "Standard"),
Size: (*string)(0xc00304e230)((len=12) "NC64as_T4_v3"),
Family: (*string)(0xc00304e240)((len=25) "Standard NCASv3_T4 Family"),
Kind: (*string)(<nil>),
Capacity: (*compute.ResourceSkuCapacity)(<nil>),
Locations: (*[]string)(0xc00304ca40)({
}),
LocationInfo: (*[]compute.ResourceSkuLocationInfo)(0xc00304ca80)({
}),
All impacted SKUS:
(*string)(0xc002ea6c10)((len=17) "Standard_NV4as_v4")
(*string)(0xc002ea6ee0)((len=17) "Standard_NV8as_v4")
(*string)(0xc002ea71b0)((len=18) "Standard_NV16as_v4")
(*string)(0xc002ea7480)((len=18) "Standard_NV32as_v4")
(*string)(0xc002ea7750)((len=20) "Standard_NC4as_T4_v3")
(*string)(0xc002ea7ae0)((len=20) "Standard_NC8as_T4_v3")
(*string)(0xc002ea7e70)((len=21) "Standard_NC16as_T4_v3")
(*string)(0xc002eac200)((len=21) "Standard_NC64as_T4_v3")
This prevents dynamically checking if requested compute types are available in specific region and construct zones information.
We suspect this is repression in Compute SKU API.
This is directly impacting customer as cod determining availability of SKUS stopped working.