diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionGetByEnvironment_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionGetByEnvironment_example.json new file mode 100644 index 000000000000..99f58ed426fa --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionGetByEnvironment_example.json @@ -0,0 +1,28 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "environment": "Windows", + "clusterVersion": "7.2.477.9590", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/managedClusterVersions/7.2.477.9590", + "name": "7.2.477.9590", + "type": "Microsoft.ServiceFabric/locations/environments/managedClusterVersions", + "properties": { + "supportExpiryUtc": "2021-11-30T00:00:00", + "osType": "Windows", + "codeVersion": "7.2.477.9590" + } + } + ] + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionGet_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionGet_example.json new file mode 100644 index 000000000000..71e7a04bd786 --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionGet_example.json @@ -0,0 +1,27 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "clusterVersion": "7.2.477.9590", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/managedClusterVersions/7.2.477.9590", + "name": "7.2.477.9590", + "type": "Microsoft.ServiceFabric/locations/environments/managedClusterVersions", + "properties": { + "supportExpiryUtc": "2021-11-30T00:00:00", + "osType": "Windows", + "codeVersion": "7.2.477.9590" + } + } + ] + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionListByEnvironment.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionListByEnvironment.json new file mode 100644 index 000000000000..3d38a8740f3c --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionListByEnvironment.json @@ -0,0 +1,37 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "environment": "Windows", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/managedClusterVersions/7.2.457.9590", + "name": "7.2.457.9590", + "type": "Microsoft.ServiceFabric/locations/environments/managedClusterVersions", + "properties": { + "supportExpiryUtc": "2021-11-30T00:00:00", + "osType": "Windows", + "codeVersion": "7.2.457.9590" + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/managedClusterVersions/7.2.477.9590", + "name": "7.2.477.9590", + "type": "Microsoft.ServiceFabric/locations/environments/managedClusterVersions", + "properties": { + "supportExpiryUtc": "2021-11-30T00:00:00", + "osType": "Windows", + "codeVersion": "7.2.477.9590" + } + } + ] + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionList_example.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionList_example.json new file mode 100644 index 000000000000..07fcac3366cd --- /dev/null +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/examples/ManagedClusterVersionList_example.json @@ -0,0 +1,36 @@ +{ + "parameters": { + "subscriptionId": "00000000-0000-0000-0000-000000000000", + "location": "eastus", + "api-version": "2021-05-01" + }, + "responses": { + "200": { + "headers": {}, + "body": { + "value": [ + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/managedClusterVersions/7.2.457.9590", + "name": "7.2.457.9590", + "type": "Microsoft.ServiceFabric/locations/environments/managedClusterVersions", + "properties": { + "supportExpiryUtc": "2021-11-30T00:00:00", + "osType": "Windows", + "codeVersion": "7.2.457.9590" + } + }, + { + "id": "subscriptions/00000000-0000-0000-0000-000000000000/providers/Microsoft.ServiceFabric/locations/eastus/environments/Windows/managedClusterVersions/7.2.477.9590", + "name": "7.2.477.9590", + "type": "Microsoft.ServiceFabric/locations/environments/managedClusterVersions", + "properties": { + "supportExpiryUtc": "2021-11-30T00:00:00", + "osType": "Windows", + "codeVersion": "7.2.477.9590" + } + } + ] + } + } + } +} diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/managedcluster.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/managedcluster.json index cfcaa0ce360b..2bf90626734b 100644 --- a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/managedcluster.json +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/managedcluster.json @@ -323,6 +323,178 @@ } } }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedClusterVersions/{clusterVersion}": { + "get": { + "operationId": "ManagedClusterVersion_Get", + "summary": "Gets information about a Service Fabric managed cluster code version available in the specified location.", + "description": "Gets information about an available Service Fabric managed cluster code version.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/clusterVersion" + } + ], + "x-ms-examples": { + "Get cluster version": { + "$ref": "./examples/ManagedClusterVersionGet_example.json" + } + }, + "tags": [ + "ManagedClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ManagedClusterCodeVersionListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/managedClusterVersions/{clusterVersion}": { + "get": { + "operationId": "ManagedClusterVersion_GetByEnvironment", + "summary": "Gets information about a Service Fabric cluster code version available for the specified environment.", + "description": "Gets information about an available Service Fabric cluster code version by environment.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/environment" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + }, + { + "$ref": "#/parameters/clusterVersion" + } + ], + "x-ms-examples": { + "Get cluster version by environment": { + "$ref": "./examples/ManagedClusterVersionGetByEnvironment_example.json" + } + }, + "tags": [ + "ManagedClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ManagedClusterCodeVersionListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/managedClusterVersions": { + "get": { + "operationId": "ManagedClusterVersion_List", + "summary": "Gets the list of Service Fabric cluster code versions available for the specified location.", + "description": "Gets all available code versions for Service Fabric cluster resources by location.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "List cluster versions": { + "$ref": "./examples/ManagedClusterVersionList_example.json" + } + }, + "tags": [ + "ManagedClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ManagedClusterCodeVersionListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabric/locations/{location}/environments/{environment}/managedClusterVersions": { + "get": { + "operationId": "ManagedClusterVersion_ListByEnvironment", + "summary": "Gets the list of Service Fabric cluster code versions available for the specified environment.", + "description": "Gets all available code versions for Service Fabric cluster resources by environment.", + "parameters": [ + { + "$ref": "#/parameters/locationForClusterCodeVersions" + }, + { + "$ref": "#/parameters/environment" + }, + { + "$ref": "#/parameters/api-version" + }, + { + "$ref": "#/parameters/subscriptionId" + } + ], + "x-ms-examples": { + "List cluster versions by environment": { + "$ref": "./examples/ManagedClusterVersionListByEnvironment.json" + } + }, + "tags": [ + "ManagedClusterVersion" + ], + "responses": { + "200": { + "description": "The operation completed successfully.", + "schema": { + "$ref": "#/definitions/ManagedClusterCodeVersionListResult" + } + }, + "default": { + "description": "The detailed error response.", + "schema": { + "$ref": "#/definitions/ErrorModel" + } + } + } + } + }, "/providers/Microsoft.ServiceFabric/operations": { "get": { "tags": [ @@ -430,6 +602,18 @@ }, "description": "Client certificate definition." }, + "ClusterState": { + "type": "string", + "description": "The current state of the cluster.\n\n - WaitingForNodes - Indicates that the cluster resource is created and the resource provider is waiting for Service Fabric VM extension to boot up and report to it.\n - Deploying - Indicates that the Service Fabric runtime is being installed on the VMs. Cluster resource will be in this state until the cluster boots up and system services are up.\n - BaselineUpgrade - Indicates that the cluster is upgrading to establishes the cluster version. This upgrade is automatically initiated when the cluster boots up for the first time.\n - Upgrading - Indicates that the cluster is being upgraded with the user provided configuration.\n - UpgradeFailed - Indicates that the last upgrade for the cluster has failed.\n - Ready - Indicates that the cluster is in a stable state.\n", + "enum": [ + "WaitingForNodes", + "Deploying", + "BaselineUpgrade", + "Upgrading", + "UpgradeFailed", + "Ready" + ] + }, "ClusterUpgradeCadence": { "type": "string", "enum": [ @@ -457,17 +641,28 @@ }, "description": "Indicates when new cluster runtime version upgrades will be applied after they are released. By default is Wave0." }, - "ClusterState": { + "ClusterUpgradeMode": { "type": "string", - "description": "The current state of the cluster.\n\n - WaitingForNodes - Indicates that the cluster resource is created and the resource provider is waiting for Service Fabric VM extension to boot up and report to it.\n - Deploying - Indicates that the Service Fabric runtime is being installed on the VMs. Cluster resource will be in this state until the cluster boots up and system services are up.\n - BaselineUpgrade - Indicates that the cluster is upgrading to establishes the cluster version. This upgrade is automatically initiated when the cluster boots up for the first time.\n - Upgrading - Indicates that the cluster is being upgraded with the user provided configuration.\n - UpgradeFailed - Indicates that the last upgrade for the cluster has failed.\n - Ready - Indicates that the cluster is in a stable state.\n", + "description": "The upgrade mode of the cluster when new Service Fabric runtime version is available.\n", "enum": [ - "WaitingForNodes", - "Deploying", - "BaselineUpgrade", - "Upgrading", - "UpgradeFailed", - "Ready" - ] + "Automatic", + "Manual" + ], + "default": "Automatic", + "x-ms-enum": { + "name": "ClusterUpgradeMode", + "modelAsString": true, + "values": [ + { + "value": "Automatic", + "description": "The cluster will be automatically upgraded to the latest Service Fabric runtime version, **clusterUpgradeCadence** will determine when the upgrade starts after the new version becomes available." + }, + { + "value": "Manual", + "description": "The cluster will not be automatically upgraded to the latest Service Fabric runtime version. The cluster is upgraded by setting the **clusterCodeVersion** property in the cluster resource." + } + ] + } }, "LoadBalancingRule": { "required": [ @@ -553,6 +748,38 @@ } } }, + "ManagedClusterCodeVersionListResult": { + "properties": { + "value": { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterCodeVersionResult" + } + } + }, + "description": "The list results of the Service Fabric runtime versions." + }, + "ManagedClusterCodeVersionResult": { + "properties": { + "id": { + "type": "string", + "description": "The identification of the result" + }, + "name": { + "type": "string", + "description": "The name of the result" + }, + "type": { + "type": "string", + "description": "The result resource type" + }, + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/ManagedClusterVersionDetails" + } + }, + "description": "The result of the Service Fabric runtime versions" + }, "ManagedClusterListResult": { "properties": { "value": { @@ -671,14 +898,14 @@ }, "clusterCodeVersion": { "type": "string", - "description": "The Service Fabric runtime version of the cluster. This property can only by set the user when **upgradeMode** is set to 'Manual'. To get list of available Service Fabric versions for new clusters use [ClusterVersion API](./ClusterVersion.md). To get the list of available version for existing clusters use **availableClusterVersions**." + "description": "The Service Fabric runtime version of the cluster. This property is required when **clusterUpgradeMode** is set to 'Manual'. To get list of available Service Fabric versions for new clusters use [ClusterVersion API](./ClusterVersion.md). To get the list of available version for existing clusters use **availableClusterVersions**." }, "clusterUpgradeMode": { - "$ref": "#/definitions/UpgradeMode" + "$ref": "#/definitions/ClusterUpgradeMode" }, "clusterUpgradeCadence": { "$ref": "#/definitions/ClusterUpgradeCadence", - "description": "Indicates when new cluster runtime version upgrades will be applied after they are released. By default is Wave0. Only applies when **upgradeMode** is set to 'Automatic'." + "description": "Indicates when new cluster runtime version upgrades will be applied after they are released. By default is Wave0. Only applies when **clusterUpgradeMode** is set to 'Automatic'." }, "addonFeatures": { "type": "array", @@ -715,6 +942,22 @@ }, "description": "Managed cluster update request" }, + "ManagedClusterVersionDetails": { + "properties": { + "codeVersion": { + "type": "string", + "description": "The Service Fabric runtime version of the cluster." + }, + "supportExpiryUtc": { + "type": "string", + "description": "The date of expiry of support of the version." + }, + "osType": { + "$ref": "#/definitions/OsType" + } + }, + "description": "The detail of the Service Fabric runtime version result" + }, "NetworkSecurityRule": { "required": [ "name", @@ -811,6 +1054,13 @@ }, "description": "Describes a network security rule." }, + "OsType": { + "type": "string", + "description": "Cluster operating system, the default will be Windows", + "enum": [ + "Windows" + ] + }, "Sku": { "required": [ "name" @@ -831,15 +1081,6 @@ "Standard" ] }, - "UpgradeMode": { - "type": "string", - "description": "The upgrade mode of the cluster when new Service Fabric runtime version is available.\n\n - Automatic - The cluster will be automatically upgraded to the latest Service Fabric runtime version, **clusterUpgradeCadence** will determine when the upgrade starts after the new version becomes available.\n - Manual - The cluster will not be automatically upgraded to the latest Service Fabric runtime version. The cluster is upgraded by setting the **clusterCodeVersion** property in the cluster resource.\n", - "enum": [ - "Automatic", - "Manual" - ], - "default": "Automatic" - }, "AvailableOperationDisplay": { "properties": { "provider": { @@ -1080,6 +1321,33 @@ "type": "string", "x-ms-parameter-location": "method" }, + "clusterVersion": { + "name": "clusterVersion", + "in": "path", + "description": "The cluster code version.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, + "environment": { + "name": "environment", + "in": "path", + "description": "The operating system of the cluster. The default means all.", + "required": true, + "type": "string", + "enum": [ + "Windows" + ], + "x-ms-parameter-location": "method" + }, + "locationForClusterCodeVersions": { + "name": "location", + "in": "path", + "description": "The location for the cluster code versions. This is different from cluster location.", + "required": true, + "type": "string", + "x-ms-parameter-location": "method" + }, "resourceGroupNameParameter": { "name": "resourceGroupName", "in": "path", diff --git a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/nodetype.json b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/nodetype.json index 2c2870f20149..af5284f3b3fb 100644 --- a/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/nodetype.json +++ b/specification/servicefabricmanagedclusters/resource-manager/Microsoft.ServiceFabricManagedClusters/stable/2021-05-01/nodetype.json @@ -482,13 +482,31 @@ "definitions": { "DiskType": { "type": "string", - "description": "Managed data disk type. IOPS and throughput are given by the disk size, to see more information go to https://docs.microsoft.com/en-us/azure/virtual-machines/disks-types.\n\n - Standard_LRS - standard HDD LRS\n - StandardSSD_LRS - standard SSD LRS\n - Premium_LRS - Premium SSD LRS\n", + "description": "Managed data disk type. IOPS and throughput are given by the disk size, to see more information go to https://docs.microsoft.com/en-us/azure/virtual-machines/disks-types.\n", "enum": [ "Standard_LRS", "StandardSSD_LRS", "Premium_LRS" ], - "default": "StandardSSD_LRS" + "default": "StandardSSD_LRS", + "x-ms-enum": { + "name": "DiskType", + "modelAsString": true, + "values": [ + { + "value": "Standard_LRS", + "description": "Standard HDD locally redundant storage. Best for backup, non-critical, and infrequent access." + }, + { + "value": "StandardSSD_LRS", + "description": "Standard SSD locally redundant storage. Best for web servers, lightly used enterprise applications and dev/test." + }, + { + "value": "Premium_LRS", + "description": "Premium SSD locally redundant storage. Best for production and performance sensitive workloads." + } + ] + } }, "ManagedProxyResource": { "properties": {