From ad369e69d0583a6198e9969b7c318e267d8c6729 Mon Sep 17 00:00:00 2001 From: robhat Date: Thu, 20 Sep 2018 12:02:22 -0700 Subject: [PATCH 1/4] Updated comments and introduced AvailabilitySetSkuType to help users use predefined constants --- .../stable/2018-06-01/compute.json | 84 +++++++++++-------- 1 file changed, 48 insertions(+), 36 deletions(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json index a58e696a1d5b..028fff2d752b 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2018-06-01/compute.json @@ -1437,7 +1437,7 @@ }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { - "final-state-via":"location" + "final-state-via": "location" } } }, @@ -4130,7 +4130,7 @@ }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { - "final-state-via":"azure-async-operation" + "final-state-via": "azure-async-operation" } } }, @@ -4184,7 +4184,7 @@ }, "x-ms-long-running-operation": true, "x-ms-long-running-operation-options": { - "final-state-via":"azure-async-operation" + "final-state-via": "azure-async-operation" } } } @@ -4312,6 +4312,18 @@ }, "description": "The instance view of a resource." }, + "AvailabilitySetSkuType": { + "type": "string", + "description": "Specifies the sku of an Availability Set. Use 'Aligned' for virtual machines with managed disks and 'Classic' for virtual machines with unmanaged disks. Default value is 'Classic'.", + "enum": [ + "Classic", + "Aligned" + ], + "x-ms-enum": { + "name": "AvailabilitySetSkuTypes", + "modelAsString": true + } + }, "AvailabilitySet": { "properties": { "properties": { @@ -4320,7 +4332,7 @@ }, "sku": { "$ref": "#/definitions/Sku", - "description": "Sku of the availability set" + "description": "Sku of the availability set, only name is required to be set. See AvailabilitySetSkuTypes for possible set of values. Use 'Aligned' for virtual machines with managed disks and 'Classic' for virtual machines with unmanaged disks. Default value is 'Classic'." } }, "allOf": [ @@ -5164,7 +5176,7 @@ }, "StorageAccountType": { "type": "string", - "description": "Specifies the storage account type for the managed disk. UltraSSD_LRS can only be used for data disks.", + "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk.", "enum": [ "Standard_LRS", "Premium_LRS", @@ -5180,7 +5192,7 @@ "properties": { "storageAccountType": { "$ref": "#/definitions/StorageAccountType", - "description": "Specifies the storage account type for the managed disk. UltraSSD_LRS can only be used for data disks." + "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk." } }, "allOf": [ @@ -5315,13 +5327,13 @@ "description": "Specifies the storage settings for the virtual machine disks." }, "AdditionalCapabilities": { - "properties": { - "ultraSSDEnabled": { - "type": "boolean", - "description": "Enables or disables a capability to have 1 or more managed data disks with UltraSSD_LRS storage account on the VM or VMSS. Managed disks with storage account type UltraSSD_LRS can be added to a virtual machine or virtual machine scale set only if this property is enabled." - } - }, - "description": "Enables or disables a capability on the virtual machine or virtual machine scale set" + "properties": { + "ultraSSDEnabled": { + "type": "boolean", + "description": "The flag that enables or disables a capability to have one or more managed data disks with UltraSSD_LRS storage account type on the VM or VMSS. Managed disks with storage account type UltraSSD_LRS can be added to a virtual machine or virtual machine scale set only if this property is enabled." + } + }, + "description": "Enables or disables a capability on the virtual machine or virtual machine scale set." }, "AdditionalUnattendContent": { "properties": { @@ -5840,10 +5852,10 @@ "$ref": "#/definitions/StorageProfile", "description": "Specifies the storage settings for the virtual machine disks." }, - "additionalCapabilities": { - "$ref": "#/definitions/AdditionalCapabilities", - "description": "Specifies additional capabilities enabled or disabled on the virtual machine. For instance: whether the virtual machine has the capability to support attaching managed data disks with UltraSSD_LRS storage account type." - }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the virtual machine." + }, "osProfile": { "$ref": "#/definitions/OSProfile", "description": "Specifies the operating system settings for the virtual machine." @@ -6112,7 +6124,7 @@ }, "storageAccountType": { "$ref": "#/definitions/StorageAccountType", - "description": "Specifies the storage account type for the managed disk. Possible values are: Standard_LRS, Premium_LRS, and StandardSSD_LRS." + "description": "Specifies the storage account type for the managed disk. UltraSSD_LRS cannot be used with OS Disk." } }, "required": [ @@ -6160,7 +6172,7 @@ }, "storageAccountType": { "$ref": "#/definitions/StorageAccountType", - "description": "Specifies the storage account type for the managed disk. Possible values are: Standard_LRS, Premium_LRS, and StandardSSD_LRS." + "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk." } }, "required": [ @@ -6183,7 +6195,7 @@ }, "zoneResilient": { "type": "boolean", - "description": "Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS)." + "description": "Specifies whether an image is zone resilient or not. Default is false. Zone resilient images can be created only in regions that provide Zone Redundant Storage (ZRS)." } }, "description": "Describes a storage profile." @@ -6365,7 +6377,7 @@ "properties": { "storageAccountType": { "$ref": "#/definitions/StorageAccountType", - "description": "Specifies the storage account type for the managed disk. Possible values are: Standard_LRS, Premium_LRS, and StandardSSD_LRS." + "description": "Specifies the storage account type for the managed disk. NOTE: UltraSSD_LRS can only be used with data disks, it cannot be used with OS Disk." } }, "description": "Describes the parameters of a ScaleSet managed disk." @@ -6890,8 +6902,8 @@ }, "description": "The list of IP tags associated with the public IP address." }, - "publicIPPrefix" : { - "$ref":"#/definitions/SubResource", + "publicIPPrefix": { + "$ref": "#/definitions/SubResource", "description": "The PublicIPPrefix from which to allocate publicIP addresses." } }, @@ -7036,10 +7048,10 @@ "$ref": "#/definitions/VirtualMachineScaleSetStorageProfile", "description": "Specifies the storage settings for the virtual machine disks." }, - "additionalCapabilities": { - "$ref": "#/definitions/AdditionalCapabilities", - "description": "Specifies additional capabilities enabled or disabled on the virtual machine in the scale set. For instance: whether the virtual machine has the capability to support attaching managed data disks with UltraSSD_LRS storage account type." - }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the virtual machine in the scale set. For instance: whether the virtual machine has the capability to support attaching managed data disks with UltraSSD_LRS storage account type." + }, "networkProfile": { "$ref": "#/definitions/VirtualMachineScaleSetNetworkProfile", "description": "Specifies properties of the network interfaces of the virtual machines in the scale set." @@ -7445,20 +7457,20 @@ "description": "The Virtual Machine Scale Set List Skus operation response." }, "RollbackStatusInfo": { - "properties":{ - "successfullyRolledbackInstanceCount" : { + "properties": { + "successfullyRolledbackInstanceCount": { "readOnly": true, "type": "integer", "format": "int32", "description": "The number of instances which have been successfully rolled back." }, - "failedRolledbackInstanceCount" : { + "failedRolledbackInstanceCount": { "readOnly": true, "type": "integer", "format": "int32", "description": "The number of instances which failed to rollback." }, - "rollbackError" : { + "rollbackError": { "$ref": "#/definitions/ApiError", "readOnly": true, "description": "Error details if OS rollback failed." @@ -7606,10 +7618,10 @@ "$ref": "#/definitions/StorageProfile", "description": "Specifies the storage settings for the virtual machine disks." }, - "additionalCapabilities": { - "$ref": "#/definitions/AdditionalCapabilities", - "description": "Specifies additional capabilities enabled or disabled on the virtual machine in the scale set. For instance: whether the virtual machine has the capability to support attaching managed data disks with UltraSSD_LRS storage account type." - }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the virtual machine in the scale set. For instance: whether the virtual machine has the capability to support attaching managed data disks with UltraSSD_LRS storage account type." + }, "osProfile": { "$ref": "#/definitions/OSProfile", "description": "Specifies the operating system settings for the virtual machine." @@ -8133,4 +8145,4 @@ "description": "Client Api Version." } } -} +} \ No newline at end of file From 1f5174c3855b40f14d6feb5a29e60fbefd9fa99d Mon Sep 17 00:00:00 2001 From: robhat Date: Wed, 24 Apr 2019 12:15:40 -0700 Subject: [PATCH 2/4] Moved AdditionalCapabilities out from VM profile to VMSS and updated SKUs API to support zonal capabilities --- .../stable/2019-03-01/compute.json | 12 +- .../stable/2019-04-01/skus.json | 375 ++++++++++++++++++ .../compute/resource-manager/readme.md | 2 +- 3 files changed, 384 insertions(+), 5 deletions(-) create mode 100644 specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json index d0c9ecded22b..19acc3913186 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json @@ -7649,10 +7649,6 @@ "$ref": "#/definitions/VirtualMachineScaleSetStorageProfile", "description": "Specifies the storage settings for the virtual machine disks." }, - "additionalCapabilities": { - "$ref": "#/definitions/AdditionalCapabilities", - "description": "Specifies additional capabilities enabled or disabled on the virtual machine in the scale set. For instance: whether the virtual machine has the capability to support attaching managed data disks with UltraSSD_LRS storage account type." - }, "networkProfile": { "$ref": "#/definitions/VirtualMachineScaleSetNetworkProfile", "description": "Specifies properties of the network interfaces of the virtual machines in the scale set." @@ -7769,6 +7765,10 @@ "proximityPlacementGroup": { "$ref": "#/definitions/SubResource", "description": "Specifies information about the proximity placement group that the virtual machine scale set should be assigned to.

Minimum api-version: 2018-04-01." + }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type." } }, "description": "Describes the properties of a Virtual Machine Scale Set." @@ -7790,6 +7790,10 @@ "singlePlacementGroup": { "type": "boolean", "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." + }, + "additionalCapabilities": { + "$ref": "#/definitions/AdditionalCapabilities", + "description": "Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type." } }, "description": "Describes the properties of a Virtual Machine Scale Set." diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json new file mode 100644 index 000000000000..d68f4209c223 --- /dev/null +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json @@ -0,0 +1,375 @@ +{ + "swagger": "2.0", + "info": { + "title": "ComputeManagementClient", + "description": "The Compute Management Client.", + "version": "2019-04-01" + }, + "host": "management.azure.com", + "schemes": [ + "https" + ], + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "security": [ + { + "azure_auth": [ + "user_impersonation" + ] + } + ], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Compute/skus": { + "get": { + "tags": [ + "Skus", + "AvailabilitySets" + ], + "operationId": "ResourceSkus_List", + "description": "Gets the list of Microsoft.Compute SKUs available for your Subscription.", + "parameters": [ + { + "$ref": "#/parameters/ApiVersionParameter" + }, + { + "$ref": "#/parameters/SubscriptionIdParameter" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/ResourceSkusResult" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + } + }, + "definitions": { + "ResourceSkuCapacity": { + "properties": { + "minimum": { + "type": "integer", + "readOnly": true, + "format": "int64", + "description": "The minimum capacity." + }, + "maximum": { + "type": "integer", + "readOnly": true, + "format": "int64", + "description": "The maximum capacity that can be set." + }, + "default": { + "type": "integer", + "readOnly": true, + "format": "int64", + "description": "The default capacity." + }, + "scaleType": { + "type": "string", + "readOnly": true, + "description": "The scale type applicable to the sku.", + "enum": [ + "Automatic", + "Manual", + "None" + ], + "x-ms-enum": { + "name": "ResourceSkuCapacityScaleType", + "modelAsString": false + } + } + }, + "description": "Describes scaling information of a SKU." + }, + "ResourceSkuCosts": { + "properties": { + "meterID": { + "type": "string", + "readOnly": true, + "description": "Used for querying price from commerce." + }, + "quantity": { + "type": "integer", + "readOnly": true, + "format": "int64", + "description": "The multiplier is needed to extend the base metered cost." + }, + "extendedUnit": { + "type": "string", + "readOnly": true, + "description": "An invariant to show the extended unit." + } + }, + "description": "Describes metadata for retrieving price info." + }, + "ResourceSkuCapabilities": { + "properties": { + "name": { + "type": "string", + "readOnly": true, + "description": "An invariant to describe the feature." + }, + "value": { + "type": "string", + "readOnly": true, + "description": "An invariant if the feature is measured by quantity." + } + }, + "description": "Describes The SKU capabilities object." + }, + "ResourceSkuZoneDetails": { + "properties": { + "name": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The set of zones that the SKU is available in with the specified capabilities." + }, + "capabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuCapabilities" + }, + "description": "A list of capabilities that are available for the SKU in the specified list of zones." + } + }, + "description": "Describes The zonal capabilities of a SKU." + }, + "ResourceSkuRestrictions": { + "properties": { + "type": { + "type": "string", + "readOnly": true, + "description": "The type of restrictions.", + "enum": [ + "Location", + "Zone" + ], + "x-ms-enum": { + "name": "ResourceSkuRestrictionsType", + "modelAsString": false + } + }, + "values": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The value of restrictions. If the restriction type is set to location. This would be different locations where the SKU is restricted." + }, + "restrictionInfo": { + "$ref": "#/definitions/ResourceSkuRestrictionInfo", + "readOnly": true, + "description": "The information about the restriction where the SKU cannot be used." + }, + "reasonCode": { + "type": "string", + "readOnly": true, + "description": "The reason for restriction.", + "enum": [ + "QuotaId", + "NotAvailableForSubscription" + ], + "x-ms-enum": { + "name": "ResourceSkuRestrictionsReasonCode", + "modelAsString": false + } + } + }, + "description": "Describes scaling information of a SKU." + }, + "ResourceSku": { + "properties": { + "resourceType": { + "readOnly": true, + "type": "string", + "description": "The type of resource the SKU applies to." + }, + "name": { + "readOnly": true, + "type": "string", + "description": "The name of SKU." + }, + "tier": { + "readOnly": true, + "type": "string", + "description": "Specifies the tier of virtual machines in a scale set.

Possible Values:

**Standard**

**Basic**" + }, + "size": { + "readOnly": true, + "type": "string", + "description": "The Size of the SKU." + }, + "family": { + "readOnly": true, + "type": "string", + "description": "The Family of this particular SKU." + }, + "kind": { + "readOnly": true, + "type": "string", + "description": "The Kind of resources that are supported in this SKU." + }, + "capacity": { + "$ref": "#/definitions/ResourceSkuCapacity", + "readOnly": true, + "description": "Specifies the number of virtual machines in the scale set." + }, + "locations": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The set of locations that the SKU is available." + }, + "locationInfo": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuLocationInfo" + }, + "description": "A list of locations and availability zones in those locations where the SKU is available." + }, + "apiVersions": { + "type": "array", + "readOnly": true, + "items": { + "type": "string" + }, + "description": "The api versions that support this SKU." + }, + "costs": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuCosts" + }, + "description": "Metadata for retrieving price info." + }, + "capabilities": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuCapabilities" + }, + "description": "A name value pair to describe the capability." + }, + "restrictions": { + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuRestrictions" + }, + "description": "The restrictions because of which SKU cannot be used. This is empty if there are no restrictions." + } + }, + "description": "Describes an available Compute SKU." + }, + "ResourceSkuLocationInfo": { + "properties": { + "location": { + "readOnly": true, + "type": "string", + "description": "Location of the SKU" + }, + "zones": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "List of availability zones where the SKU is supported." + }, + "zoneDetails": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSkuZoneDetails" + }, + "description": "Details of capabilities available to a SKU in specific zones." + } + } + }, + "ResourceSkuRestrictionInfo": { + "properties": { + "locations": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "Locations where the SKU is restricted" + }, + "zones": { + "readOnly": true, + "type": "array", + "items": { + "type": "string" + }, + "description": "List of availability zones where the SKU is restricted." + } + } + }, + "ResourceSkusResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceSku" + }, + "description": "The list of skus available for the subscription." + }, + "nextLink": { + "type": "string", + "description": "The uri to fetch the next page of Compute Skus. Call ListNext() with this to fetch the next page of VMSS Skus." + } + }, + "required": [ + "value" + ], + "description": "The Compute List Skus operation response." + } + }, + "parameters": { + "SubscriptionIdParameter": { + "name": "subscriptionId", + "in": "path", + "required": true, + "type": "string", + "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call." + }, + "ApiVersionParameter": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "Client Api Version." + } + } +} \ No newline at end of file diff --git a/specification/compute/resource-manager/readme.md b/specification/compute/resource-manager/readme.md index e98e35585694..ca8b8c4f0eee 100644 --- a/specification/compute/resource-manager/readme.md +++ b/specification/compute/resource-manager/readme.md @@ -197,7 +197,7 @@ These settings apply only when `--tag=package-2019-03-01` is specified on the co input-file: - Microsoft.Compute/stable/2019-03-01/compute.json - Microsoft.Compute/stable/2019-03-01/runCommands.json -- Microsoft.Compute/stable/2017-09-01/skus.json +- Microsoft.Compute/stable/2019-04-01/skus.json - Microsoft.Compute/stable/2018-09-30/disk.json - Microsoft.Compute/stable/2019-03-01/gallery.json - Microsoft.ContainerService/stable/2017-01-31/containerService.json From cadde18434678fb518ccec31a8f1f046709e4db8 Mon Sep 17 00:00:00 2001 From: robhat Date: Wed, 24 Apr 2019 12:17:47 -0700 Subject: [PATCH 3/4] Fixed indentation --- .../Microsoft.Compute/stable/2019-03-01/compute.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json index 19acc3913186..267fe9f4cbfc 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-03-01/compute.json @@ -7766,7 +7766,7 @@ "$ref": "#/definitions/SubResource", "description": "Specifies information about the proximity placement group that the virtual machine scale set should be assigned to.

Minimum api-version: 2018-04-01." }, - "additionalCapabilities": { + "additionalCapabilities": { "$ref": "#/definitions/AdditionalCapabilities", "description": "Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type." } @@ -7791,7 +7791,7 @@ "type": "boolean", "description": "When true this limits the scale set to a single placement group, of max size 100 virtual machines." }, - "additionalCapabilities": { + "additionalCapabilities": { "$ref": "#/definitions/AdditionalCapabilities", "description": "Specifies additional capabilities enabled or disabled on the Virtual Machines in the Virtual Machine Scale Set. For instance: whether the Virtual Machines have the capability to support attaching managed data disks with UltraSSD_LRS storage account type." } From 0023ab882d53abed6b92bd6722120dd7e90ab640 Mon Sep 17 00:00:00 2001 From: robhat Date: Wed, 24 Apr 2019 12:26:31 -0700 Subject: [PATCH 4/4] Fixed indentation in skus.json --- .../stable/2019-04-01/skus.json | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json index d68f4209c223..b4e15eda386b 100644 --- a/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json +++ b/specification/compute/resource-manager/Microsoft.Compute/stable/2019-04-01/skus.json @@ -138,7 +138,7 @@ }, "description": "Describes The SKU capabilities object." }, - "ResourceSkuZoneDetails": { + "ResourceSkuZoneDetails": { "properties": { "name": { "type": "array", @@ -249,12 +249,12 @@ "description": "The set of locations that the SKU is available." }, "locationInfo": { - "type": "array", - "readOnly": true, - "items": { - "$ref": "#/definitions/ResourceSkuLocationInfo" - }, - "description": "A list of locations and availability zones in those locations where the SKU is available." + "type": "array", + "readOnly": true, + "items": { + "$ref": "#/definitions/ResourceSkuLocationInfo" + }, + "description": "A list of locations and availability zones in those locations where the SKU is available." }, "apiVersions": { "type": "array", @@ -306,14 +306,14 @@ }, "description": "List of availability zones where the SKU is supported." }, - "zoneDetails": { - "readOnly": true, + "zoneDetails": { + "readOnly": true, "type": "array", - "items": { + "items": { "$ref": "#/definitions/ResourceSkuZoneDetails" }, - "description": "Details of capabilities available to a SKU in specific zones." - } + "description": "Details of capabilities available to a SKU in specific zones." + } } }, "ResourceSkuRestrictionInfo": {