From 5a9e4eb3ece0a5af7e154c5a16aeba6edce0f3ff Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Mon, 8 May 2023 03:08:51 +0000 Subject: [PATCH] CodeGen from PR 23718 in Azure/azure-rest-api-specs Service Fabric Managed Clusters - api version 2023-03-01-preview (#23718) * initial commit copy from 2023-02-01-preview * update specs * update examples --------- Co-authored-by: Alfredo Santamaria Gomez --- .../2016-09-01/Microsoft.ServiceFabric.json | 763 ----- .../Microsoft.ServiceFabric.json | 1864 ------------ .../2018-02-01/Microsoft.ServiceFabric.json | 990 ------- .../Microsoft.ServiceFabric.json | 2166 -------------- .../2019-03-01/Microsoft.ServiceFabric.json | 2166 -------------- .../Microsoft.ServiceFabric.json | 2265 --------------- .../Microsoft.ServiceFabric.json | 2331 --------------- .../Microsoft.ServiceFabric.json | 842 ------ .../2020-03-01/Microsoft.ServiceFabric.json | 2331 --------------- .../Microsoft.ServiceFabric.json | 2488 ----------------- .../Microsoft.ServiceFabric.json | 2210 +++++++++------ schemas/common/autogeneratedResources.json | 150 +- 12 files changed, 1436 insertions(+), 19130 deletions(-) delete mode 100644 schemas/2016-09-01/Microsoft.ServiceFabric.json delete mode 100644 schemas/2017-07-01-preview/Microsoft.ServiceFabric.json delete mode 100644 schemas/2018-02-01/Microsoft.ServiceFabric.json delete mode 100644 schemas/2019-03-01-preview/Microsoft.ServiceFabric.json delete mode 100644 schemas/2019-03-01/Microsoft.ServiceFabric.json delete mode 100644 schemas/2019-06-01-preview/Microsoft.ServiceFabric.json delete mode 100644 schemas/2019-11-01-preview/Microsoft.ServiceFabric.json delete mode 100644 schemas/2020-01-01-preview/Microsoft.ServiceFabric.json delete mode 100644 schemas/2020-03-01/Microsoft.ServiceFabric.json delete mode 100644 schemas/2020-12-01-preview/Microsoft.ServiceFabric.json rename schemas/{2021-06-01 => 2023-03-01-preview}/Microsoft.ServiceFabric.json (57%) diff --git a/schemas/2016-09-01/Microsoft.ServiceFabric.json b/schemas/2016-09-01/Microsoft.ServiceFabric.json deleted file mode 100644 index cd663c601d..0000000000 --- a/schemas/2016-09-01/Microsoft.ServiceFabric.json +++ /dev/null @@ -1,763 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2016-09-01/Microsoft.ServiceFabric.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "Microsoft.ServiceFabric", - "description": "Microsoft ServiceFabric Resource Types", - "resourceDefinitions": { - "clusters": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2016-09-01" - ] - }, - "location": { - "type": "string", - "description": "Resource location." - }, - "name": { - "type": "string", - "description": "The name of the cluster resource" - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The cluster resource properties" - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters" - ] - } - }, - "required": [ - "apiVersion", - "location", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters" - } - }, - "definitions": { - "AzureActiveDirectory": { - "type": "object", - "properties": { - "clientApplication": { - "type": "string", - "description": "Azure active directory client application id" - }, - "clusterApplication": { - "type": "string", - "description": "Azure active directory cluster application id" - }, - "tenantId": { - "type": "string", - "description": "Azure active directory tenant id" - } - }, - "description": "The settings to enable AAD authentication on the cluster" - }, - "CertificateDescription": { - "type": "object", - "properties": { - "thumbprint": { - "type": "string", - "description": "Thumbprint of the primary certificate" - }, - "thumbprintSecondary": { - "type": "string", - "description": "Thumbprint of the secondary certificate" - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "required": [ - "thumbprint" - ], - "description": "Certificate details" - }, - "ClientCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "Certificate common name to be granted access; be careful using wild card common names" - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "Certificate issuer thumbprint" - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Is this certificate used for admin access from the client, if false , it is used or query only access" - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint", - "isAdmin" - ], - "description": "Client certificate details using common name" - }, - "ClientCertificateThumbprint": { - "type": "object", - "properties": { - "certificateThumbprint": { - "type": "string", - "description": "Certificate thumbprint" - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Is this certificate used for admin access from the client, if false, it is used or query only access" - } - }, - "required": [ - "certificateThumbprint", - "isAdmin" - ], - "description": "Client certificate details using thumbprint" - }, - "ClusterHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10. " - }, - "maxPercentUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10. " - } - }, - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node." - }, - "ClusterProperties": { - "type": "object", - "properties": { - "azureActiveDirectory": { - "oneOf": [ - { - "$ref": "#/definitions/AzureActiveDirectory" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The settings to enable AAD authentication on the cluster" - }, - "certificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Certificate details" - }, - "clientCertificateCommonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": " List of client certificates to trust based on common names" - }, - "clientCertificateThumbprints": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateThumbprint" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The client thumbprint details ,it is used for client access for cluster operation" - }, - "clusterCodeVersion": { - "type": "string", - "description": "The ServiceFabric code version running in your cluster" - }, - "diagnosticsStorageAccountConfig": { - "oneOf": [ - { - "$ref": "#/definitions/DiagnosticsStorageAccountConfig" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Diagnostics storage account config" - }, - "fabricSettings": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsSectionDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of custom fabric settings to configure the cluster." - }, - "managementEndpoint": { - "type": "string", - "description": "The http management endpoint of the cluster" - }, - "nodeTypes": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/NodeTypeDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of node types that make up the cluster" - }, - "reliabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Bronze", - "Silver", - "Gold", - "Platinum" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Cluster reliability level indicates replica set size of system service." - }, - "reverseProxyCertificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Certificate details" - }, - "upgradeDescription": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Cluster upgrade policy" - }, - "upgradeMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Automatic", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Cluster upgrade mode indicates if fabric upgrade is initiated automatically by the system or not." - }, - "vmImage": { - "type": "string", - "description": "The name of VM image VMSS has been configured with. Generic names such as Windows or Linux can be used." - } - }, - "required": [ - "managementEndpoint", - "nodeTypes" - ], - "description": "The cluster resource properties" - }, - "ClusterUpgradeDeltaHealthPolicy": { - "type": "object", - "properties": { - "maxPercentDeltaUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Additional unhealthy applications percentage" - }, - "maxPercentDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Additional unhealthy nodes percentage" - }, - "maxPercentUpgradeDomainDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Additional unhealthy nodes percentage per upgrade domain " - } - }, - "required": [ - "maxPercentDeltaUnhealthyApplications", - "maxPercentDeltaUnhealthyNodes", - "maxPercentUpgradeDomainDeltaUnhealthyNodes" - ], - "description": "Delta health policy for the cluster" - }, - "ClusterUpgradePolicy": { - "type": "object", - "properties": { - "deltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Delta health policy for the cluster" - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Force node to restart or not" - }, - "healthCheckRetryTimeout": { - "type": "string", - "description": "The length of time that health checks can fail continuously,it represents .Net TimeSpan" - }, - "healthCheckStableDuration": { - "type": "string", - "description": "The length of time that health checks must pass continuously,it represents .Net TimeSpan" - }, - "healthCheckWaitDuration": { - "type": "string", - "description": "The length of time to wait after completing an upgrade domain before performing health checks, it represents .Net TimeSpan" - }, - "healthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node." - }, - "overrideUserUpgradePolicy": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Use the user defined upgrade policy or not" - }, - "upgradeDomainTimeout": { - "type": "string", - "description": "The timeout for any upgrade domain,it represents .Net TimeSpan" - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "Timeout for replica set upgrade to complete,it represents .Net TimeSpan" - }, - "upgradeTimeout": { - "type": "string", - "description": "The upgrade timeout,it represents .Net TimeSpan" - } - }, - "required": [ - "healthCheckRetryTimeout", - "healthCheckStableDuration", - "healthCheckWaitDuration", - "healthPolicy", - "upgradeDomainTimeout", - "upgradeReplicaSetCheckTimeout", - "upgradeTimeout" - ], - "description": "Cluster upgrade policy" - }, - "DiagnosticsStorageAccountConfig": { - "type": "object", - "properties": { - "blobEndpoint": { - "type": "string", - "description": "Diagnostics storage account blob endpoint" - }, - "protectedAccountKeyName": { - "type": "string", - "description": "Protected Diagnostics storage key name" - }, - "queueEndpoint": { - "type": "string", - "description": "Diagnostics storage account queue endpoint" - }, - "storageAccountName": { - "type": "string", - "description": "Diagnostics storage account name" - }, - "tableEndpoint": { - "type": "string", - "description": "Diagnostics storage account table endpoint" - } - }, - "required": [ - "blobEndpoint", - "protectedAccountKeyName", - "queueEndpoint", - "storageAccountName", - "tableEndpoint" - ], - "description": "Diagnostics storage account config" - }, - "EndpointRangeDescription": { - "type": "object", - "properties": { - "endPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "End port of a range of ports" - }, - "startPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Starting port of a range of ports" - } - }, - "required": [ - "endPort", - "startPort" - ], - "description": "Port range details" - }, - "NodeTypeDescription": { - "type": "object", - "properties": { - "applicationPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "capacities": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much of a resource a node has" - }, - "clientConnectionEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The TCP cluster management endpoint port" - }, - "durabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Bronze", - "Silver", - "Gold" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Node type durability Level." - }, - "ephemeralPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "httpGatewayEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The HTTP cluster management endpoint port" - }, - "isPrimary": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Mark this as the primary node type" - }, - "name": { - "type": "string", - "description": "Name of the node type" - }, - "placementProperties": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run" - }, - "reverseProxyEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Endpoint used by reverse proxy" - }, - "vmInstanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": 1, - "maximum": 2147483647 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The number of node instances in the node type" - } - }, - "required": [ - "clientConnectionEndpointPort", - "httpGatewayEndpointPort", - "isPrimary", - "name", - "vmInstanceCount" - ], - "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster" - }, - "SettingsParameterDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of settings property" - }, - "value": { - "type": "string", - "description": "The value of the property" - } - }, - "required": [ - "name", - "value" - ], - "description": "ServiceFabric settings under sections" - }, - "SettingsSectionDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of settings section" - }, - "parameters": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsParameterDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Collection of settings in the section, each setting is a tuple consisting of setting name and value" - } - }, - "required": [ - "name", - "parameters" - ], - "description": "ServiceFabric section settings" - } - } -} \ No newline at end of file diff --git a/schemas/2017-07-01-preview/Microsoft.ServiceFabric.json b/schemas/2017-07-01-preview/Microsoft.ServiceFabric.json deleted file mode 100644 index b55990487d..0000000000 --- a/schemas/2017-07-01-preview/Microsoft.ServiceFabric.json +++ /dev/null @@ -1,1864 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2017-07-01-preview/Microsoft.ServiceFabric.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "Microsoft.ServiceFabric", - "description": "Microsoft ServiceFabric Resource Types", - "resourceDefinitions": { - "clusters": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2017-07-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Resource location." - }, - "name": { - "type": "string", - "description": "The name of the cluster resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the cluster resource properties." - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applicationTypes_childResource" - }, - { - "$ref": "#/definitions/clusters_applications_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters" - ] - } - }, - "required": [ - "apiVersion", - "location", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters" - }, - "clusters_applications": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2017-07-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the application resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application resource properties." - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applications_services_childResource" - } - ] - } - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applications" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications" - }, - "clusters_applications_services": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2017-07-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the service resource in the format of {applicationName}~{serviceName}." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service resource properties." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applications/services" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" - }, - "clusters_applicationTypes": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2017-07-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the application type name resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application type name properties" - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applicationTypes_versions_childResource" - } - ] - } - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" - }, - "clusters_applicationTypes_versions": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2017-07-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The application type version." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of the application type version resource." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - } - }, - "definitions": { - "ApplicationMetricDescription": { - "type": "object", - "properties": { - "MaximumCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum node capacity for Service Fabric application.\nThis is the maximum Load for an instance of this application on a single node. Even if the capacity of node is greater than this value, Service Fabric will limit the total load of services within the application on each node to this value.\nIf set to zero, capacity for this metric is unlimited on each node.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\nWhen updating existing application with application capacity, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\n" - }, - "Name": { - "type": "string", - "description": "The name of the metric." - }, - "ReservationCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node reservation capacity for Service Fabric application.\nThis is the amount of load which is reserved on nodes which have instances of this application.\nIf MinimumNodes is specified, then the product of these values will be the capacity reserved in the cluster for the application.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity; this value must be smaller than or equal to MaximumCapacity for each metric.\n" - }, - "TotalApplicationCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The total metric capacity for Service Fabric application.\nThis is the total metric capacity for this application in the cluster. Service Fabric will try to limit the sum of loads of services within the application to this value.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and MaximumCapacity must always be smaller than or equal to this value.\n" - } - }, - "description": "Describes capacity information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.\n" - }, - "ApplicationResourceProperties": { - "type": "object", - "properties": { - "maximumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. By default, the value of this property is zero and it means that the services can be placed on any node." - }, - "metrics": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ApplicationMetricDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of application capacity metric description." - }, - "minimumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The minimum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. If this property is set to zero, no capacity will be reserved. The value of this property cannot be more than the value of the MaximumNodes property." - }, - "parameters": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of application parameters with overridden values from their default values specified in the application manifest." - }, - "removeApplicationCapacity": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Remove the current application capacity settings." - }, - "typeName": { - "type": "string", - "description": "The application type name as defined in the application manifest." - }, - "typeVersion": { - "type": "string", - "description": "The version of the application type as defined in the application manifest." - }, - "upgradePolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the policy for a monitored application upgrade." - } - }, - "description": "The application resource properties." - }, - "ApplicationTypeResourceProperties": { - "type": "object", - "properties": {}, - "description": "The application type name properties" - }, - "ApplicationTypeVersionResourceProperties": { - "type": "object", - "properties": { - "appPackageUrl": { - "type": "string", - "description": "The URL to the application package" - } - }, - "required": [ - "appPackageUrl" - ], - "description": "The properties of the application type version resource." - }, - "ApplicationUpgradePolicy": { - "type": "object", - "properties": { - "applicationHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmApplicationHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "rollingUpgradeMonitoringPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmRollingUpgradeMonitoringPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The policy used for monitoring the application upgrade" - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." - } - }, - "description": "Describes the policy for a monitored application upgrade." - }, - "ArmApplicationHealthPolicy": { - "type": "object", - "properties": { - "ConsiderWarningAsError": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates whether warnings are treated with the same severity as errors." - }, - "DefaultServiceTypeHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "MaxPercentUnhealthyDeployedApplications": { - "oneOf": [ - { - "type": "integer", - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n" - }, - "ServiceTypeHealthPolicyMap": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "ArmRollingUpgradeMonitoringPolicy": { - "type": "object", - "properties": { - "failureAction": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Rollback", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The activation Mode of the service package." - }, - "healthCheckRetryTimeout": { - "type": "string", - "default": "PT0H10M0S", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "healthCheckStableDuration": { - "type": "string", - "default": "PT0H2M0S", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "healthCheckWaitDuration": { - "type": "string", - "default": "0", - "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "upgradeDomainTimeout": { - "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "upgradeTimeout": { - "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - } - }, - "description": "The policy used for monitoring the application upgrade" - }, - "ArmServiceTypeHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyPartitionsPerService": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of partitions per service allowed to be unhealthy before your application is considered in error.\n" - }, - "maxPercentUnhealthyReplicasPerPartition": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of replicas per partition allowed to be unhealthy before your application is considered in error.\n" - }, - "maxPercentUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" - } - }, - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "AzureActiveDirectory": { - "type": "object", - "properties": { - "clientApplication": { - "type": "string", - "description": "Azure active directory client application id." - }, - "clusterApplication": { - "type": "string", - "description": "Azure active directory cluster application id." - }, - "tenantId": { - "type": "string", - "description": "Azure active directory tenant id." - } - }, - "description": "The settings to enable AAD authentication on the cluster." - }, - "CertificateDescription": { - "type": "object", - "properties": { - "thumbprint": { - "type": "string", - "description": "Thumbprint of the primary certificate." - }, - "thumbprintSecondary": { - "type": "string", - "description": "Thumbprint of the secondary certificate." - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "required": [ - "thumbprint" - ], - "description": "Describes the certificate details." - }, - "ClientCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the client certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using common name." - }, - "ClientCertificateThumbprint": { - "type": "object", - "properties": { - "certificateThumbprint": { - "type": "string", - "description": "The thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using thumbprint." - }, - "ClusterHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10. " - }, - "maxPercentUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10. " - } - }, - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node." - }, - "ClusterProperties": { - "type": "object", - "properties": { - "addOnFeatures": { - "oneOf": [ - { - "type": "array", - "items": { - "type": "string", - "enum": [ - "RepairManager", - "DnsService", - "BackupRestoreService" - ] - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of add-on features to enable in the cluster." - }, - "availableClusterVersions": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClusterVersionDetails" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The Service Fabric runtime versions available for this cluster." - }, - "azureActiveDirectory": { - "oneOf": [ - { - "$ref": "#/definitions/AzureActiveDirectory" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The settings to enable AAD authentication on the cluster." - }, - "certificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "clientCertificateCommonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by common name that are allowed to manage the cluster." - }, - "clientCertificateThumbprints": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateThumbprint" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster." - }, - "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**." - }, - "clusterState": { - "oneOf": [ - { - "type": "string", - "enum": [ - "WaitingForNodes", - "Deploying", - "BaselineUpgrade", - "UpdatingUserConfiguration", - "UpdatingUserCertificate", - "UpdatingInfrastructure", - "EnforcingClusterVersion", - "UpgradeServiceUnreachable", - "AutoScale", - "Ready" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "diagnosticsStorageAccountConfig": { - "oneOf": [ - { - "$ref": "#/definitions/DiagnosticsStorageAccountConfig" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "fabricSettings": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsSectionDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of custom fabric settings to configure the cluster." - }, - "managementEndpoint": { - "type": "string", - "description": "The http management endpoint of the cluster." - }, - "nodeTypes": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/NodeTypeDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of node types in the cluster." - }, - "reliabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "None", - "Bronze", - "Silver", - "Gold", - "Platinum" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "reverseProxyCertificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "upgradeDescription": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "upgradeMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Automatic", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "vmImage": { - "type": "string", - "description": "The VM image VMSS has been configured with. Generic names such as Windows or Linux can be used." - } - }, - "required": [ - "managementEndpoint", - "nodeTypes" - ], - "description": "Describes the cluster resource properties." - }, - "clusters_applications_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2017-07-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the application resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application resource properties." - }, - "type": { - "type": "string", - "enum": [ - "applications" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications" - }, - "clusters_applications_services_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2017-07-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the service resource in the format of {applicationName}~{serviceName}." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service resource properties." - }, - "type": { - "type": "string", - "enum": [ - "services" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" - }, - "clusters_applicationTypes_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2017-07-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the application type name resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application type name properties" - }, - "type": { - "type": "string", - "enum": [ - "applicationTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" - }, - "clusters_applicationTypes_versions_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2017-07-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The application type version." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of the application type version resource." - }, - "type": { - "type": "string", - "enum": [ - "versions" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - }, - "ClusterUpgradeDeltaHealthPolicy": { - "type": "object", - "properties": { - "maxPercentDeltaUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of applications health degradation allowed during cluster upgrades. The delta is measured between the state of the applications at the beginning of upgrade and the state of the applications at the time of the health evaluation. The check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits. System services are not included in this." - }, - "maxPercentDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of nodes health degradation allowed during cluster upgrades. The delta is measured between the state of the nodes at the beginning of upgrade and the state of the nodes at the time of the health evaluation. The check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits." - }, - "maxPercentUpgradeDomainDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of upgrade domain nodes health degradation allowed during cluster upgrades. The delta is measured between the state of the upgrade domain nodes at the beginning of upgrade and the state of the upgrade domain nodes at the time of the health evaluation. The check is performed after every upgrade domain upgrade completion for all completed upgrade domains to make sure the state of the upgrade domains is within tolerated limits. " - } - }, - "required": [ - "maxPercentDeltaUnhealthyApplications", - "maxPercentDeltaUnhealthyNodes", - "maxPercentUpgradeDomainDeltaUnhealthyNodes" - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "ClusterUpgradePolicy": { - "type": "object", - "properties": { - "deltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "healthCheckRetryTimeout": { - "type": "string", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckStableDuration": { - "type": "string", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckWaitDuration": { - "type": "string", - "description": "The length of time to wait after completing an upgrade domain before performing health checks. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node." - }, - "upgradeDomainTimeout": { - "type": "string", - "description": "The amount of time each upgrade domain has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeTimeout": { - "type": "string", - "description": "The amount of time the overall upgrade has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - } - }, - "required": [ - "healthCheckRetryTimeout", - "healthCheckStableDuration", - "healthCheckWaitDuration", - "healthPolicy", - "upgradeDomainTimeout", - "upgradeReplicaSetCheckTimeout", - "upgradeTimeout" - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "ClusterVersionDetails": { - "type": "object", - "properties": { - "codeVersion": { - "type": "string", - "description": "The Service Fabric runtime version of the cluster." - }, - "environment": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Windows", - "Linux" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if this version is for Windows or Linux operating system." - }, - "supportExpiryUtc": { - "type": "string", - "description": "The date of expiry of support of the version." - } - }, - "description": "The detail of the Service Fabric runtime version result" - }, - "DiagnosticsStorageAccountConfig": { - "type": "object", - "properties": { - "blobEndpoint": { - "type": "string", - "description": "The blob endpoint of the azure storage account." - }, - "protectedAccountKeyName": { - "type": "string", - "description": "The protected diagnostics storage key name." - }, - "queueEndpoint": { - "type": "string", - "description": "The queue endpoint of the azure storage account." - }, - "storageAccountName": { - "type": "string", - "description": "The Azure storage account name." - }, - "tableEndpoint": { - "type": "string", - "description": "The table endpoint of the azure storage account." - } - }, - "required": [ - "blobEndpoint", - "protectedAccountKeyName", - "queueEndpoint", - "storageAccountName", - "tableEndpoint" - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "EndpointRangeDescription": { - "type": "object", - "properties": { - "endPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "End port of a range of ports" - }, - "startPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Starting port of a range of ports" - } - }, - "required": [ - "endPort", - "startPort" - ], - "description": "Port range details" - }, - "NodeTypeDescription": { - "type": "object", - "properties": { - "applicationPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "capacities": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has." - }, - "clientConnectionEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The TCP cluster management endpoint port." - }, - "durabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Bronze", - "Silver", - "Gold" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "ephemeralPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "httpGatewayEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The HTTP cluster management endpoint port." - }, - "isPrimary": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters." - }, - "name": { - "type": "string", - "description": "The name of the node type." - }, - "placementProperties": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run." - }, - "reverseProxyEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The endpoint used by reverse proxy." - }, - "vmInstanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": 1, - "maximum": 2147483647 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The number of nodes in the node type. This count should match the capacity property in the corresponding VirtualMachineScaleSet resource." - } - }, - "required": [ - "clientConnectionEndpointPort", - "httpGatewayEndpointPort", - "isPrimary", - "name", - "vmInstanceCount" - ], - "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." - }, - "PartitionSchemeDescription": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/SingletonPartitionSchemeDescription" - } - ], - "properties": {}, - "description": "Describes how the service is partitioned." - }, - "ServiceCorrelationDescription": { - "type": "object", - "properties": { - "Scheme": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Invalid", - "Affinity", - "AlignedAffinity", - "NonAlignedAffinity" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The ServiceCorrelationScheme which describes the relationship between this service and the service specified via ServiceName." - }, - "ServiceName": { - "type": "string", - "description": "The full name of the service with 'fabric:' URI scheme." - } - }, - "required": [ - "Scheme", - "ServiceName" - ], - "description": "Creates a particular correlation between services." - }, - "ServiceLoadMetricDescription": { - "type": "object", - "properties": { - "DefaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateless services. The default amount of load, as a number, that this service creates for this metric." - }, - "Name": { - "type": "string", - "description": "The name of the metric. If the service chooses to report load during runtime, the load metric name should match the name that is specified in Name exactly. Note that metric names are case sensitive." - }, - "PrimaryDefaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Primary replica." - }, - "SecondaryDefaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Secondary replica." - }, - "Weight": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Zero", - "Low", - "Medium", - "High" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service load metric relative weight, compared to other metrics configured for this service, as a number." - } - }, - "required": [ - "Name" - ], - "description": "Specifies a metric to load balance a service during runtime." - }, - "ServicePlacementPolicyDescription": { - "type": "object", - "properties": {}, - "description": "Describes the policy to be used for placement of a Service Fabric service." - }, - "ServiceResourceProperties": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/StatefulServiceProperties" - }, - { - "$ref": "#/definitions/StatelessServiceProperties" - } - ], - "properties": { - "correlationScheme": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceCorrelationDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A list that describes the correlation of the service with other services." - }, - "defaultMoveCost": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Zero", - "Low", - "Medium", - "High" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Specifies the move cost for the service." - }, - "partitionDescription": { - "oneOf": [ - { - "$ref": "#/definitions/PartitionSchemeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes how the service is partitioned." - }, - "placementConstraints": { - "type": "string", - "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." - }, - "serviceLoadMetrics": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceLoadMetricDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." - }, - "servicePlacementPolicies": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServicePlacementPolicyDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A list that describes the correlation of the service with other services." - }, - "serviceTypeName": { - "type": "string", - "description": "The name of the service type" - } - }, - "description": "The service resource properties." - }, - "SettingsParameterDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The parameter name of fabric setting." - }, - "value": { - "type": "string", - "description": "The parameter value of fabric setting." - } - }, - "required": [ - "name", - "value" - ], - "description": "Describes a parameter in fabric settings of the cluster." - }, - "SettingsSectionDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The section name of the fabric settings." - }, - "parameters": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsParameterDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The collection of parameters in the section." - } - }, - "required": [ - "name", - "parameters" - ], - "description": "Describes a section in the fabric settings of the cluster." - }, - "SingletonPartitionSchemeDescription": { - "type": "object", - "properties": { - "PartitionScheme": { - "type": "string", - "enum": [ - "Singleton" - ] - } - }, - "required": [ - "PartitionScheme" - ], - "description": "SingletonPartitionSchemeDescription" - }, - "StatefulServiceProperties": { - "type": "object", - "properties": { - "hasPersistedState": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." - }, - "minReplicaSetSize": { - "oneOf": [ - { - "type": "integer", - "minimum": 1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The minimum replica set size as a number." - }, - "quorumLossWaitDuration": { - "type": "string", - "format": "date-time", - "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "replicaRestartWaitDuration": { - "type": "string", - "format": "date-time", - "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "serviceKind": { - "type": "string", - "enum": [ - "Stateful" - ] - }, - "standByReplicaKeepDuration": { - "type": "string", - "format": "date-time", - "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "targetReplicaSetSize": { - "oneOf": [ - { - "type": "integer", - "minimum": 1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The target replica set size as a number." - } - }, - "required": [ - "serviceKind" - ], - "description": "The properties of a stateful service resource." - }, - "StatelessServiceProperties": { - "type": "object", - "properties": { - "instanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": -1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The instance count." - }, - "serviceKind": { - "type": "string", - "enum": [ - "Stateless" - ] - } - }, - "required": [ - "serviceKind" - ], - "description": "The properties of a stateless service resource." - } - } -} \ No newline at end of file diff --git a/schemas/2018-02-01/Microsoft.ServiceFabric.json b/schemas/2018-02-01/Microsoft.ServiceFabric.json deleted file mode 100644 index 1e92fe485d..0000000000 --- a/schemas/2018-02-01/Microsoft.ServiceFabric.json +++ /dev/null @@ -1,990 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2018-02-01/Microsoft.ServiceFabric.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "Microsoft.ServiceFabric", - "description": "Microsoft ServiceFabric Resource Types", - "resourceDefinitions": { - "clusters": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2018-02-01" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the cluster resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the cluster resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters" - ] - } - }, - "required": [ - "apiVersion", - "location", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters" - } - }, - "definitions": { - "ApplicationDeltaHealthPolicy": { - "type": "object", - "properties": { - "defaultServiceTypeDeltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" - }, - "serviceTypeDeltaHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific delta health policies for different service types.\nEach entry specifies as key the service type name and as value a ServiceTypeDeltaHealthPolicy used to evaluate the service health when upgrading the cluster.\nThe map is empty by default.\n" - } - }, - "description": "Defines a delta health policy used to evaluate the health of an application or one of its child entities when upgrading the cluster.\n" - }, - "ApplicationHealthPolicy": { - "type": "object", - "properties": { - "defaultServiceTypeHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceTypeHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "serviceTypeHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ServiceTypeHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "AzureActiveDirectory": { - "type": "object", - "properties": { - "clientApplication": { - "type": "string", - "description": "Azure active directory client application id." - }, - "clusterApplication": { - "type": "string", - "description": "Azure active directory cluster application id." - }, - "tenantId": { - "type": "string", - "description": "Azure active directory tenant id." - } - }, - "description": "The settings to enable AAD authentication on the cluster." - }, - "CertificateDescription": { - "type": "object", - "properties": { - "thumbprint": { - "type": "string", - "description": "Thumbprint of the primary certificate." - }, - "thumbprintSecondary": { - "type": "string", - "description": "Thumbprint of the secondary certificate." - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "required": [ - "thumbprint" - ], - "description": "Describes the certificate details." - }, - "ClientCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the client certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using common name." - }, - "ClientCertificateThumbprint": { - "type": "object", - "properties": { - "certificateThumbprint": { - "type": "string", - "description": "The thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using thumbprint." - }, - "ClusterHealthPolicy": { - "type": "object", - "properties": { - "applicationHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" - }, - "maxPercentUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of applications that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy application, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy applications over the total number of application instances in the cluster, excluding applications of application types that are included in the ApplicationTypeHealthPolicyMap.\nThe computation rounds up to tolerate one failure on small numbers of applications. Default percentage is zero.\n" - }, - "maxPercentUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of nodes that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy node, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy nodes over the total number of nodes in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n\nIn large clusters, some nodes will always be down or out for repairs, so this percentage should be configured to tolerate that.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" - }, - "ClusterProperties": { - "type": "object", - "properties": { - "addOnFeatures": { - "oneOf": [ - { - "type": "array", - "items": { - "type": "string", - "enum": [ - "RepairManager", - "DnsService", - "BackupRestoreService", - "ResourceMonitorService" - ] - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of add-on features to enable in the cluster." - }, - "azureActiveDirectory": { - "oneOf": [ - { - "$ref": "#/definitions/AzureActiveDirectory" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The settings to enable AAD authentication on the cluster." - }, - "certificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "certificateCommonNames": { - "oneOf": [ - { - "$ref": "#/definitions/ServerCertificateCommonNames" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "clientCertificateCommonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by common name that are allowed to manage the cluster." - }, - "clientCertificateThumbprints": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateThumbprint" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster." - }, - "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**." - }, - "diagnosticsStorageAccountConfig": { - "oneOf": [ - { - "$ref": "#/definitions/DiagnosticsStorageAccountConfig" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "fabricSettings": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsSectionDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of custom fabric settings to configure the cluster." - }, - "managementEndpoint": { - "type": "string", - "description": "The http management endpoint of the cluster." - }, - "nodeTypes": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/NodeTypeDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of node types in the cluster." - }, - "reliabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "None", - "Bronze", - "Silver", - "Gold", - "Platinum" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n." - }, - "reverseProxyCertificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "reverseProxyCertificateCommonNames": { - "oneOf": [ - { - "$ref": "#/definitions/ServerCertificateCommonNames" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "upgradeDescription": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "upgradeMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Automatic", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "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 as soon as it is 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." - }, - "vmImage": { - "type": "string", - "description": "The VM image VMSS has been configured with. Generic names such as Windows or Linux can be used." - } - }, - "required": [ - "managementEndpoint", - "nodeTypes" - ], - "description": "Describes the cluster resource properties." - }, - "ClusterUpgradeDeltaHealthPolicy": { - "type": "object", - "properties": { - "applicationDeltaHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationDeltaHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific application delta health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationDeltaHealthPolicy used to evaluate the application health when upgrading the cluster.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" - }, - "maxPercentDeltaUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of applications health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the applications at the beginning of upgrade and the state of the applications at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits. System services are not included in this.\n" - }, - "maxPercentDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the nodes at the beginning of upgrade and the state of the nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" - }, - "maxPercentUpgradeDomainDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of upgrade domain nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the upgrade domain nodes at the beginning of upgrade and the state of the upgrade domain nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion for all completed upgrade domains to make sure the state of the upgrade domains is within tolerated limits.\n" - } - }, - "required": [ - "maxPercentDeltaUnhealthyApplications", - "maxPercentDeltaUnhealthyNodes", - "maxPercentUpgradeDomainDeltaUnhealthyNodes" - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "ClusterUpgradePolicy": { - "type": "object", - "properties": { - "deltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "healthCheckRetryTimeout": { - "type": "string", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckStableDuration": { - "type": "string", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckWaitDuration": { - "type": "string", - "description": "The length of time to wait after completing an upgrade domain before performing health checks. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" - }, - "upgradeDomainTimeout": { - "type": "string", - "description": "The amount of time each upgrade domain has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeTimeout": { - "type": "string", - "description": "The amount of time the overall upgrade has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - } - }, - "required": [ - "healthCheckRetryTimeout", - "healthCheckStableDuration", - "healthCheckWaitDuration", - "healthPolicy", - "upgradeDomainTimeout", - "upgradeReplicaSetCheckTimeout", - "upgradeTimeout" - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "DiagnosticsStorageAccountConfig": { - "type": "object", - "properties": { - "blobEndpoint": { - "type": "string", - "description": "The blob endpoint of the azure storage account." - }, - "protectedAccountKeyName": { - "type": "string", - "description": "The protected diagnostics storage key name." - }, - "queueEndpoint": { - "type": "string", - "description": "The queue endpoint of the azure storage account." - }, - "storageAccountName": { - "type": "string", - "description": "The Azure storage account name." - }, - "tableEndpoint": { - "type": "string", - "description": "The table endpoint of the azure storage account." - } - }, - "required": [ - "blobEndpoint", - "protectedAccountKeyName", - "queueEndpoint", - "storageAccountName", - "tableEndpoint" - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "EndpointRangeDescription": { - "type": "object", - "properties": { - "endPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "End port of a range of ports" - }, - "startPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Starting port of a range of ports" - } - }, - "required": [ - "endPort", - "startPort" - ], - "description": "Port range details" - }, - "NodeTypeDescription": { - "type": "object", - "properties": { - "applicationPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "capacities": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has." - }, - "clientConnectionEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The TCP cluster management endpoint port." - }, - "durabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Bronze", - "Silver", - "Gold" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The durability level of the node type. Learn about [DurabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - Bronze - No privileges. This is the default.\n - Silver - The infrastructure jobs can be paused for a duration of 10 minutes per UD.\n - Gold - The infrastructure jobs can be paused for a duration of 2 hours per UD. Gold durability can be enabled only on full node VM SKUs like D15_V2, G5 etc.\n." - }, - "ephemeralPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "httpGatewayEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The HTTP cluster management endpoint port." - }, - "isPrimary": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters." - }, - "name": { - "type": "string", - "description": "The name of the node type." - }, - "placementProperties": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run." - }, - "reverseProxyEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The endpoint used by reverse proxy." - }, - "vmInstanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": 1, - "maximum": 2147483647 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The number of nodes in the node type. This count should match the capacity property in the corresponding VirtualMachineScaleSet resource." - } - }, - "required": [ - "clientConnectionEndpointPort", - "httpGatewayEndpointPort", - "isPrimary", - "name", - "vmInstanceCount" - ], - "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." - }, - "ServerCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the server certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the server certificate." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint" - ], - "description": "Describes the server certificate details using common name." - }, - "ServerCertificateCommonNames": { - "type": "object", - "properties": { - "commonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServerCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of server certificates referenced by common name that are used to secure the cluster." - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "ServiceTypeDeltaHealthPolicy": { - "type": "object", - "properties": { - "maxPercentDeltaUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of services health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the services at the beginning of upgrade and the state of the services at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" - } - }, - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" - }, - "ServiceTypeHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" - } - }, - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "SettingsParameterDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The parameter name of fabric setting." - }, - "value": { - "type": "string", - "description": "The parameter value of fabric setting." - } - }, - "required": [ - "name", - "value" - ], - "description": "Describes a parameter in fabric settings of the cluster." - }, - "SettingsSectionDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The section name of the fabric settings." - }, - "parameters": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsParameterDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The collection of parameters in the section." - } - }, - "required": [ - "name", - "parameters" - ], - "description": "Describes a section in the fabric settings of the cluster." - } - } -} \ No newline at end of file diff --git a/schemas/2019-03-01-preview/Microsoft.ServiceFabric.json b/schemas/2019-03-01-preview/Microsoft.ServiceFabric.json deleted file mode 100644 index 11111ab100..0000000000 --- a/schemas/2019-03-01-preview/Microsoft.ServiceFabric.json +++ /dev/null @@ -1,2166 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2019-03-01-preview/Microsoft.ServiceFabric.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "Microsoft.ServiceFabric", - "description": "Microsoft ServiceFabric Resource Types", - "resourceDefinitions": { - "clusters": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the cluster resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the cluster resource properties." - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applicationTypes_childResource" - }, - { - "$ref": "#/definitions/clusters_applications_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters" - ] - } - }, - "required": [ - "apiVersion", - "location", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters" - }, - "clusters_applications": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the application resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application resource properties." - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applications_services_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applications" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications" - }, - "clusters_applications_services": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the service resource in the format of {applicationName}~{serviceName}." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applications/services" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" - }, - "clusters_applicationTypes": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the application type name resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application type name properties" - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applicationTypes_versions_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" - }, - "clusters_applicationTypes_versions": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The application type version." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of the application type version resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - } - }, - "definitions": { - "ApplicationDeltaHealthPolicy": { - "type": "object", - "properties": { - "defaultServiceTypeDeltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" - }, - "serviceTypeDeltaHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific delta health policies for different service types.\nEach entry specifies as key the service type name and as value a ServiceTypeDeltaHealthPolicy used to evaluate the service health when upgrading the cluster.\nThe map is empty by default.\n" - } - }, - "description": "Defines a delta health policy used to evaluate the health of an application or one of its child entities when upgrading the cluster.\n" - }, - "ApplicationHealthPolicy": { - "type": "object", - "properties": { - "defaultServiceTypeHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceTypeHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "serviceTypeHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ServiceTypeHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "ApplicationMetricDescription": { - "type": "object", - "properties": { - "maximumCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum node capacity for Service Fabric application.\nThis is the maximum Load for an instance of this application on a single node. Even if the capacity of node is greater than this value, Service Fabric will limit the total load of services within the application on each node to this value.\nIf set to zero, capacity for this metric is unlimited on each node.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\nWhen updating existing application with application capacity, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\n" - }, - "name": { - "type": "string", - "description": "The name of the metric." - }, - "reservationCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node reservation capacity for Service Fabric application.\nThis is the amount of load which is reserved on nodes which have instances of this application.\nIf MinimumNodes is specified, then the product of these values will be the capacity reserved in the cluster for the application.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity; this value must be smaller than or equal to MaximumCapacity for each metric.\n" - }, - "totalApplicationCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The total metric capacity for Service Fabric application.\nThis is the total metric capacity for this application in the cluster. Service Fabric will try to limit the sum of loads of services within the application to this value.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and MaximumCapacity must always be smaller than or equal to this value.\n" - } - }, - "description": "Describes capacity information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.\n" - }, - "ApplicationResourceProperties": { - "type": "object", - "properties": { - "maximumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. By default, the value of this property is zero and it means that the services can be placed on any node." - }, - "metrics": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ApplicationMetricDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of application capacity metric description." - }, - "minimumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The minimum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. If this property is set to zero, no capacity will be reserved. The value of this property cannot be more than the value of the MaximumNodes property." - }, - "parameters": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of application parameters with overridden values from their default values specified in the application manifest." - }, - "removeApplicationCapacity": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Remove the current application capacity settings." - }, - "typeName": { - "type": "string", - "description": "The application type name as defined in the application manifest." - }, - "typeVersion": { - "type": "string", - "description": "The version of the application type as defined in the application manifest." - }, - "upgradePolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the policy for a monitored application upgrade." - } - }, - "description": "The application resource properties." - }, - "ApplicationTypeResourceProperties": { - "type": "object", - "properties": {}, - "description": "The application type name properties" - }, - "ApplicationTypeVersionResourceProperties": { - "type": "object", - "properties": { - "appPackageUrl": { - "type": "string", - "description": "The URL to the application package" - } - }, - "required": [ - "appPackageUrl" - ], - "description": "The properties of the application type version resource." - }, - "ApplicationUpgradePolicy": { - "type": "object", - "properties": { - "applicationHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmApplicationHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "rollingUpgradeMonitoringPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmRollingUpgradeMonitoringPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The policy used for monitoring the application upgrade" - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." - } - }, - "description": "Describes the policy for a monitored application upgrade." - }, - "ArmApplicationHealthPolicy": { - "type": "object", - "properties": { - "considerWarningAsError": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates whether warnings are treated with the same severity as errors." - }, - "defaultServiceTypeHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "maxPercentUnhealthyDeployedApplications": { - "oneOf": [ - { - "type": "integer", - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n" - }, - "serviceTypeHealthPolicyMap": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "ArmRollingUpgradeMonitoringPolicy": { - "type": "object", - "properties": { - "failureAction": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Rollback", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The activation Mode of the service package." - }, - "healthCheckRetryTimeout": { - "type": "string", - "default": "PT0H10M0S", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "healthCheckStableDuration": { - "type": "string", - "default": "PT0H2M0S", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "healthCheckWaitDuration": { - "type": "string", - "default": "0", - "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "upgradeDomainTimeout": { - "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "upgradeTimeout": { - "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - } - }, - "description": "The policy used for monitoring the application upgrade" - }, - "ArmServiceTypeHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyPartitionsPerService": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of partitions per service allowed to be unhealthy before your application is considered in error.\n" - }, - "maxPercentUnhealthyReplicasPerPartition": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of replicas per partition allowed to be unhealthy before your application is considered in error.\n" - }, - "maxPercentUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" - } - }, - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "AzureActiveDirectory": { - "type": "object", - "properties": { - "clientApplication": { - "type": "string", - "description": "Azure active directory client application id." - }, - "clusterApplication": { - "type": "string", - "description": "Azure active directory cluster application id." - }, - "tenantId": { - "type": "string", - "description": "Azure active directory tenant id." - } - }, - "description": "The settings to enable AAD authentication on the cluster." - }, - "CertificateDescription": { - "type": "object", - "properties": { - "thumbprint": { - "type": "string", - "description": "Thumbprint of the primary certificate." - }, - "thumbprintSecondary": { - "type": "string", - "description": "Thumbprint of the secondary certificate." - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "required": [ - "thumbprint" - ], - "description": "Describes the certificate details." - }, - "ClientCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the client certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using common name." - }, - "ClientCertificateThumbprint": { - "type": "object", - "properties": { - "certificateThumbprint": { - "type": "string", - "description": "The thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using thumbprint." - }, - "ClusterHealthPolicy": { - "type": "object", - "properties": { - "applicationHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" - }, - "maxPercentUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of applications that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy application, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy applications over the total number of application instances in the cluster, excluding applications of application types that are included in the ApplicationTypeHealthPolicyMap.\nThe computation rounds up to tolerate one failure on small numbers of applications. Default percentage is zero.\n" - }, - "maxPercentUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of nodes that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy node, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy nodes over the total number of nodes in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n\nIn large clusters, some nodes will always be down or out for repairs, so this percentage should be configured to tolerate that.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" - }, - "ClusterProperties": { - "type": "object", - "properties": { - "addOnFeatures": { - "oneOf": [ - { - "type": "array", - "items": { - "type": "string", - "enum": [ - "RepairManager", - "DnsService", - "BackupRestoreService", - "ResourceMonitorService" - ] - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of add-on features to enable in the cluster." - }, - "azureActiveDirectory": { - "oneOf": [ - { - "$ref": "#/definitions/AzureActiveDirectory" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The settings to enable AAD authentication on the cluster." - }, - "certificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "certificateCommonNames": { - "oneOf": [ - { - "$ref": "#/definitions/ServerCertificateCommonNames" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "clientCertificateCommonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by common name that are allowed to manage the cluster." - }, - "clientCertificateThumbprints": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateThumbprint" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster." - }, - "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**." - }, - "diagnosticsStorageAccountConfig": { - "oneOf": [ - { - "$ref": "#/definitions/DiagnosticsStorageAccountConfig" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "eventStoreServiceEnabled": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the event store service is enabled." - }, - "fabricSettings": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsSectionDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of custom fabric settings to configure the cluster." - }, - "managementEndpoint": { - "type": "string", - "description": "The http management endpoint of the cluster." - }, - "nodeTypes": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/NodeTypeDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of node types in the cluster." - }, - "reliabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "None", - "Bronze", - "Silver", - "Gold", - "Platinum" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n." - }, - "reverseProxyCertificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "reverseProxyCertificateCommonNames": { - "oneOf": [ - { - "$ref": "#/definitions/ServerCertificateCommonNames" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "upgradeDescription": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "upgradeMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Automatic", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "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 as soon as it is 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." - }, - "vmImage": { - "type": "string", - "description": "The VM image VMSS has been configured with. Generic names such as Windows or Linux can be used." - } - }, - "required": [ - "managementEndpoint", - "nodeTypes" - ], - "description": "Describes the cluster resource properties." - }, - "clusters_applications_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the application resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "applications" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications" - }, - "clusters_applications_services_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the service resource in the format of {applicationName}~{serviceName}." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "services" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" - }, - "clusters_applicationTypes_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the application type name resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application type name properties" - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "applicationTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" - }, - "clusters_applicationTypes_versions_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The application type version." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of the application type version resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "versions" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - }, - "ClusterUpgradeDeltaHealthPolicy": { - "type": "object", - "properties": { - "applicationDeltaHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationDeltaHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific application delta health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationDeltaHealthPolicy used to evaluate the application health when upgrading the cluster.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" - }, - "maxPercentDeltaUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of applications health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the applications at the beginning of upgrade and the state of the applications at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits. System services are not included in this.\n" - }, - "maxPercentDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the nodes at the beginning of upgrade and the state of the nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" - }, - "maxPercentUpgradeDomainDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of upgrade domain nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the upgrade domain nodes at the beginning of upgrade and the state of the upgrade domain nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion for all completed upgrade domains to make sure the state of the upgrade domains is within tolerated limits.\n" - } - }, - "required": [ - "maxPercentDeltaUnhealthyApplications", - "maxPercentDeltaUnhealthyNodes", - "maxPercentUpgradeDomainDeltaUnhealthyNodes" - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "ClusterUpgradePolicy": { - "type": "object", - "properties": { - "deltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "healthCheckRetryTimeout": { - "type": "string", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckStableDuration": { - "type": "string", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckWaitDuration": { - "type": "string", - "description": "The length of time to wait after completing an upgrade domain before performing health checks. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" - }, - "upgradeDomainTimeout": { - "type": "string", - "description": "The amount of time each upgrade domain has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeTimeout": { - "type": "string", - "description": "The amount of time the overall upgrade has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - } - }, - "required": [ - "healthCheckRetryTimeout", - "healthCheckStableDuration", - "healthCheckWaitDuration", - "healthPolicy", - "upgradeDomainTimeout", - "upgradeReplicaSetCheckTimeout", - "upgradeTimeout" - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "DiagnosticsStorageAccountConfig": { - "type": "object", - "properties": { - "blobEndpoint": { - "type": "string", - "description": "The blob endpoint of the azure storage account." - }, - "protectedAccountKeyName": { - "type": "string", - "description": "The protected diagnostics storage key name." - }, - "queueEndpoint": { - "type": "string", - "description": "The queue endpoint of the azure storage account." - }, - "storageAccountName": { - "type": "string", - "description": "The Azure storage account name." - }, - "tableEndpoint": { - "type": "string", - "description": "The table endpoint of the azure storage account." - } - }, - "required": [ - "blobEndpoint", - "protectedAccountKeyName", - "queueEndpoint", - "storageAccountName", - "tableEndpoint" - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "EndpointRangeDescription": { - "type": "object", - "properties": { - "endPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "End port of a range of ports" - }, - "startPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Starting port of a range of ports" - } - }, - "required": [ - "endPort", - "startPort" - ], - "description": "Port range details" - }, - "NodeTypeDescription": { - "type": "object", - "properties": { - "applicationPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "capacities": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has." - }, - "clientConnectionEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The TCP cluster management endpoint port." - }, - "durabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Bronze", - "Silver", - "Gold" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The durability level of the node type. Learn about [DurabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - Bronze - No privileges. This is the default.\n - Silver - The infrastructure jobs can be paused for a duration of 10 minutes per UD.\n - Gold - The infrastructure jobs can be paused for a duration of 2 hours per UD. Gold durability can be enabled only on full node VM skus like D15_V2, G5 etc.\n." - }, - "ephemeralPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "httpGatewayEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The HTTP cluster management endpoint port." - }, - "isPrimary": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters." - }, - "name": { - "type": "string", - "description": "The name of the node type." - }, - "placementProperties": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run." - }, - "reverseProxyEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The endpoint used by reverse proxy." - }, - "vmInstanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": 1, - "maximum": 2147483647 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The number of nodes in the node type. This count should match the capacity property in the corresponding VirtualMachineScaleSet resource." - } - }, - "required": [ - "clientConnectionEndpointPort", - "httpGatewayEndpointPort", - "isPrimary", - "name", - "vmInstanceCount" - ], - "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." - }, - "PartitionSchemeDescription": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/SingletonPartitionSchemeDescription" - } - ], - "properties": {}, - "description": "Describes how the service is partitioned." - }, - "ServerCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the server certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the server certificate." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint" - ], - "description": "Describes the server certificate details using common name." - }, - "ServerCertificateCommonNames": { - "type": "object", - "properties": { - "commonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServerCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of server certificates referenced by common name that are used to secure the cluster." - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "ServiceCorrelationDescription": { - "type": "object", - "properties": { - "scheme": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Invalid", - "Affinity", - "AlignedAffinity", - "NonAlignedAffinity" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The ServiceCorrelationScheme which describes the relationship between this service and the service specified via ServiceName." - }, - "serviceName": { - "type": "string", - "description": "The full name of the service with 'fabric:' URI scheme." - } - }, - "required": [ - "scheme", - "serviceName" - ], - "description": "Creates a particular correlation between services." - }, - "ServiceLoadMetricDescription": { - "type": "object", - "properties": { - "defaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateless services. The default amount of load, as a number, that this service creates for this metric." - }, - "name": { - "type": "string", - "description": "The name of the metric. If the service chooses to report load during runtime, the load metric name should match the name that is specified in Name exactly. Note that metric names are case sensitive." - }, - "primaryDefaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Primary replica." - }, - "secondaryDefaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Secondary replica." - }, - "weight": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Zero", - "Low", - "Medium", - "High" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service load metric relative weight, compared to other metrics configured for this service, as a number." - } - }, - "required": [ - "name" - ], - "description": "Specifies a metric to load balance a service during runtime." - }, - "ServicePlacementPolicyDescription": { - "type": "object", - "properties": {}, - "description": "Describes the policy to be used for placement of a Service Fabric service." - }, - "ServiceResourceProperties": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/StatefulServiceProperties" - }, - { - "$ref": "#/definitions/StatelessServiceProperties" - } - ], - "properties": { - "correlationScheme": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceCorrelationDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A list that describes the correlation of the service with other services." - }, - "defaultMoveCost": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Zero", - "Low", - "Medium", - "High" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Specifies the move cost for the service." - }, - "partitionDescription": { - "oneOf": [ - { - "$ref": "#/definitions/PartitionSchemeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes how the service is partitioned." - }, - "placementConstraints": { - "type": "string", - "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." - }, - "serviceLoadMetrics": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceLoadMetricDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." - }, - "servicePackageActivationMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "SharedProcess", - "ExclusiveProcess" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The activation Mode of the service package." - }, - "servicePlacementPolicies": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServicePlacementPolicyDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A list that describes the correlation of the service with other services." - }, - "serviceTypeName": { - "type": "string", - "description": "The name of the service type" - } - }, - "description": "The service resource properties." - }, - "ServiceTypeDeltaHealthPolicy": { - "type": "object", - "properties": { - "maxPercentDeltaUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of services health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the services at the beginning of upgrade and the state of the services at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" - } - }, - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" - }, - "ServiceTypeHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" - } - }, - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "SettingsParameterDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The parameter name of fabric setting." - }, - "value": { - "type": "string", - "description": "The parameter value of fabric setting." - } - }, - "required": [ - "name", - "value" - ], - "description": "Describes a parameter in fabric settings of the cluster." - }, - "SettingsSectionDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The section name of the fabric settings." - }, - "parameters": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsParameterDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The collection of parameters in the section." - } - }, - "required": [ - "name", - "parameters" - ], - "description": "Describes a section in the fabric settings of the cluster." - }, - "SingletonPartitionSchemeDescription": { - "type": "object", - "properties": { - "partitionScheme": { - "type": "string", - "enum": [ - "Singleton" - ] - } - }, - "required": [ - "partitionScheme" - ], - "description": "SingletonPartitionSchemeDescription" - }, - "StatefulServiceProperties": { - "type": "object", - "properties": { - "hasPersistedState": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." - }, - "minReplicaSetSize": { - "oneOf": [ - { - "type": "integer", - "minimum": 1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The minimum replica set size as a number." - }, - "quorumLossWaitDuration": { - "type": "string", - "format": "date-time", - "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "replicaRestartWaitDuration": { - "type": "string", - "format": "date-time", - "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "serviceKind": { - "type": "string", - "enum": [ - "Stateful" - ] - }, - "standByReplicaKeepDuration": { - "type": "string", - "format": "date-time", - "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "targetReplicaSetSize": { - "oneOf": [ - { - "type": "integer", - "minimum": 1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The target replica set size as a number." - } - }, - "required": [ - "serviceKind" - ], - "description": "The properties of a stateful service resource." - }, - "StatelessServiceProperties": { - "type": "object", - "properties": { - "instanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": -1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The instance count." - }, - "serviceKind": { - "type": "string", - "enum": [ - "Stateless" - ] - } - }, - "required": [ - "serviceKind" - ], - "description": "The properties of a stateless service resource." - } - } -} \ No newline at end of file diff --git a/schemas/2019-03-01/Microsoft.ServiceFabric.json b/schemas/2019-03-01/Microsoft.ServiceFabric.json deleted file mode 100644 index 8beacb4d44..0000000000 --- a/schemas/2019-03-01/Microsoft.ServiceFabric.json +++ /dev/null @@ -1,2166 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2019-03-01/Microsoft.ServiceFabric.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "Microsoft.ServiceFabric", - "description": "Microsoft ServiceFabric Resource Types", - "resourceDefinitions": { - "clusters": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the cluster resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the cluster resource properties." - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applicationTypes_childResource" - }, - { - "$ref": "#/definitions/clusters_applications_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters" - ] - } - }, - "required": [ - "apiVersion", - "location", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters" - }, - "clusters_applications": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application resource properties." - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applications_services_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applications" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications" - }, - "clusters_applications_services": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the service resource in the format of {applicationName}~{serviceName}." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applications/services" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" - }, - "clusters_applicationTypes": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application type name resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application type name properties" - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applicationTypes_versions_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" - }, - "clusters_applicationTypes_versions": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The application type version." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of the application type version resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - } - }, - "definitions": { - "ApplicationDeltaHealthPolicy": { - "type": "object", - "properties": { - "defaultServiceTypeDeltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" - }, - "serviceTypeDeltaHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific delta health policies for different service types.\nEach entry specifies as key the service type name and as value a ServiceTypeDeltaHealthPolicy used to evaluate the service health when upgrading the cluster.\nThe map is empty by default.\n" - } - }, - "description": "Defines a delta health policy used to evaluate the health of an application or one of its child entities when upgrading the cluster.\n" - }, - "ApplicationHealthPolicy": { - "type": "object", - "properties": { - "defaultServiceTypeHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceTypeHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "serviceTypeHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ServiceTypeHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "ApplicationMetricDescription": { - "type": "object", - "properties": { - "maximumCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum node capacity for Service Fabric application.\nThis is the maximum Load for an instance of this application on a single node. Even if the capacity of node is greater than this value, Service Fabric will limit the total load of services within the application on each node to this value.\nIf set to zero, capacity for this metric is unlimited on each node.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\nWhen updating existing application with application capacity, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\n" - }, - "name": { - "type": "string", - "description": "The name of the metric." - }, - "reservationCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node reservation capacity for Service Fabric application.\nThis is the amount of load which is reserved on nodes which have instances of this application.\nIf MinimumNodes is specified, then the product of these values will be the capacity reserved in the cluster for the application.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity; this value must be smaller than or equal to MaximumCapacity for each metric.\n" - }, - "totalApplicationCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The total metric capacity for Service Fabric application.\nThis is the total metric capacity for this application in the cluster. Service Fabric will try to limit the sum of loads of services within the application to this value.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and MaximumCapacity must always be smaller than or equal to this value.\n" - } - }, - "description": "Describes capacity information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.\n" - }, - "ApplicationResourceProperties": { - "type": "object", - "properties": { - "maximumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. By default, the value of this property is zero and it means that the services can be placed on any node." - }, - "metrics": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ApplicationMetricDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of application capacity metric description." - }, - "minimumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The minimum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. If this property is set to zero, no capacity will be reserved. The value of this property cannot be more than the value of the MaximumNodes property." - }, - "parameters": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of application parameters with overridden values from their default values specified in the application manifest." - }, - "removeApplicationCapacity": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Remove the current application capacity settings." - }, - "typeName": { - "type": "string", - "description": "The application type name as defined in the application manifest." - }, - "typeVersion": { - "type": "string", - "description": "The version of the application type as defined in the application manifest." - }, - "upgradePolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the policy for a monitored application upgrade." - } - }, - "description": "The application resource properties." - }, - "ApplicationTypeResourceProperties": { - "type": "object", - "properties": {}, - "description": "The application type name properties" - }, - "ApplicationTypeVersionResourceProperties": { - "type": "object", - "properties": { - "appPackageUrl": { - "type": "string", - "description": "The URL to the application package" - } - }, - "required": [ - "appPackageUrl" - ], - "description": "The properties of the application type version resource." - }, - "ApplicationUpgradePolicy": { - "type": "object", - "properties": { - "applicationHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmApplicationHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "rollingUpgradeMonitoringPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmRollingUpgradeMonitoringPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The policy used for monitoring the application upgrade" - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." - } - }, - "description": "Describes the policy for a monitored application upgrade." - }, - "ArmApplicationHealthPolicy": { - "type": "object", - "properties": { - "considerWarningAsError": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates whether warnings are treated with the same severity as errors." - }, - "defaultServiceTypeHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "maxPercentUnhealthyDeployedApplications": { - "oneOf": [ - { - "type": "integer", - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n" - }, - "serviceTypeHealthPolicyMap": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "ArmRollingUpgradeMonitoringPolicy": { - "type": "object", - "properties": { - "failureAction": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Rollback", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The activation Mode of the service package." - }, - "healthCheckRetryTimeout": { - "type": "string", - "default": "PT0H10M0S", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "healthCheckStableDuration": { - "type": "string", - "default": "PT0H2M0S", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "healthCheckWaitDuration": { - "type": "string", - "default": "0", - "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "upgradeDomainTimeout": { - "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "upgradeTimeout": { - "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - } - }, - "description": "The policy used for monitoring the application upgrade" - }, - "ArmServiceTypeHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyPartitionsPerService": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of partitions per service allowed to be unhealthy before your application is considered in error.\n" - }, - "maxPercentUnhealthyReplicasPerPartition": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of replicas per partition allowed to be unhealthy before your application is considered in error.\n" - }, - "maxPercentUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" - } - }, - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "AzureActiveDirectory": { - "type": "object", - "properties": { - "clientApplication": { - "type": "string", - "description": "Azure active directory client application id." - }, - "clusterApplication": { - "type": "string", - "description": "Azure active directory cluster application id." - }, - "tenantId": { - "type": "string", - "description": "Azure active directory tenant id." - } - }, - "description": "The settings to enable AAD authentication on the cluster." - }, - "CertificateDescription": { - "type": "object", - "properties": { - "thumbprint": { - "type": "string", - "description": "Thumbprint of the primary certificate." - }, - "thumbprintSecondary": { - "type": "string", - "description": "Thumbprint of the secondary certificate." - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "required": [ - "thumbprint" - ], - "description": "Describes the certificate details." - }, - "ClientCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the client certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using common name." - }, - "ClientCertificateThumbprint": { - "type": "object", - "properties": { - "certificateThumbprint": { - "type": "string", - "description": "The thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using thumbprint." - }, - "ClusterHealthPolicy": { - "type": "object", - "properties": { - "applicationHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" - }, - "maxPercentUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of applications that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy application, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy applications over the total number of application instances in the cluster, excluding applications of application types that are included in the ApplicationTypeHealthPolicyMap.\nThe computation rounds up to tolerate one failure on small numbers of applications. Default percentage is zero.\n" - }, - "maxPercentUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of nodes that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy node, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy nodes over the total number of nodes in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n\nIn large clusters, some nodes will always be down or out for repairs, so this percentage should be configured to tolerate that.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" - }, - "ClusterProperties": { - "type": "object", - "properties": { - "addOnFeatures": { - "oneOf": [ - { - "type": "array", - "items": { - "type": "string", - "enum": [ - "RepairManager", - "DnsService", - "BackupRestoreService", - "ResourceMonitorService" - ] - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of add-on features to enable in the cluster." - }, - "azureActiveDirectory": { - "oneOf": [ - { - "$ref": "#/definitions/AzureActiveDirectory" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The settings to enable AAD authentication on the cluster." - }, - "certificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "certificateCommonNames": { - "oneOf": [ - { - "$ref": "#/definitions/ServerCertificateCommonNames" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "clientCertificateCommonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by common name that are allowed to manage the cluster." - }, - "clientCertificateThumbprints": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateThumbprint" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster." - }, - "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**." - }, - "diagnosticsStorageAccountConfig": { - "oneOf": [ - { - "$ref": "#/definitions/DiagnosticsStorageAccountConfig" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "eventStoreServiceEnabled": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the event store service is enabled." - }, - "fabricSettings": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsSectionDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of custom fabric settings to configure the cluster." - }, - "managementEndpoint": { - "type": "string", - "description": "The http management endpoint of the cluster." - }, - "nodeTypes": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/NodeTypeDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of node types in the cluster." - }, - "reliabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "None", - "Bronze", - "Silver", - "Gold", - "Platinum" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n." - }, - "reverseProxyCertificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "reverseProxyCertificateCommonNames": { - "oneOf": [ - { - "$ref": "#/definitions/ServerCertificateCommonNames" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "upgradeDescription": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "upgradeMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Automatic", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "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 as soon as it is 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." - }, - "vmImage": { - "type": "string", - "description": "The VM image VMSS has been configured with. Generic names such as Windows or Linux can be used." - } - }, - "required": [ - "managementEndpoint", - "nodeTypes" - ], - "description": "Describes the cluster resource properties." - }, - "clusters_applications_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "applications" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications" - }, - "clusters_applications_services_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the service resource in the format of {applicationName}~{serviceName}." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "services" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" - }, - "clusters_applicationTypes_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application type name resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application type name properties" - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "applicationTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" - }, - "clusters_applicationTypes_versions_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-03-01" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The application type version." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of the application type version resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "versions" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - }, - "ClusterUpgradeDeltaHealthPolicy": { - "type": "object", - "properties": { - "applicationDeltaHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationDeltaHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific application delta health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationDeltaHealthPolicy used to evaluate the application health when upgrading the cluster.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" - }, - "maxPercentDeltaUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of applications health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the applications at the beginning of upgrade and the state of the applications at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits. System services are not included in this.\n" - }, - "maxPercentDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the nodes at the beginning of upgrade and the state of the nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" - }, - "maxPercentUpgradeDomainDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of upgrade domain nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the upgrade domain nodes at the beginning of upgrade and the state of the upgrade domain nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion for all completed upgrade domains to make sure the state of the upgrade domains is within tolerated limits.\n" - } - }, - "required": [ - "maxPercentDeltaUnhealthyApplications", - "maxPercentDeltaUnhealthyNodes", - "maxPercentUpgradeDomainDeltaUnhealthyNodes" - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "ClusterUpgradePolicy": { - "type": "object", - "properties": { - "deltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "healthCheckRetryTimeout": { - "type": "string", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckStableDuration": { - "type": "string", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckWaitDuration": { - "type": "string", - "description": "The length of time to wait after completing an upgrade domain before performing health checks. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" - }, - "upgradeDomainTimeout": { - "type": "string", - "description": "The amount of time each upgrade domain has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeTimeout": { - "type": "string", - "description": "The amount of time the overall upgrade has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - } - }, - "required": [ - "healthCheckRetryTimeout", - "healthCheckStableDuration", - "healthCheckWaitDuration", - "healthPolicy", - "upgradeDomainTimeout", - "upgradeReplicaSetCheckTimeout", - "upgradeTimeout" - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "DiagnosticsStorageAccountConfig": { - "type": "object", - "properties": { - "blobEndpoint": { - "type": "string", - "description": "The blob endpoint of the azure storage account." - }, - "protectedAccountKeyName": { - "type": "string", - "description": "The protected diagnostics storage key name." - }, - "queueEndpoint": { - "type": "string", - "description": "The queue endpoint of the azure storage account." - }, - "storageAccountName": { - "type": "string", - "description": "The Azure storage account name." - }, - "tableEndpoint": { - "type": "string", - "description": "The table endpoint of the azure storage account." - } - }, - "required": [ - "blobEndpoint", - "protectedAccountKeyName", - "queueEndpoint", - "storageAccountName", - "tableEndpoint" - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "EndpointRangeDescription": { - "type": "object", - "properties": { - "endPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "End port of a range of ports" - }, - "startPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Starting port of a range of ports" - } - }, - "required": [ - "endPort", - "startPort" - ], - "description": "Port range details" - }, - "NodeTypeDescription": { - "type": "object", - "properties": { - "applicationPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "capacities": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has." - }, - "clientConnectionEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The TCP cluster management endpoint port." - }, - "durabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Bronze", - "Silver", - "Gold" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The durability level of the node type. Learn about [DurabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - Bronze - No privileges. This is the default.\n - Silver - The infrastructure jobs can be paused for a duration of 10 minutes per UD.\n - Gold - The infrastructure jobs can be paused for a duration of 2 hours per UD. Gold durability can be enabled only on full node VM skus like D15_V2, G5 etc.\n." - }, - "ephemeralPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "httpGatewayEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The HTTP cluster management endpoint port." - }, - "isPrimary": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters." - }, - "name": { - "type": "string", - "description": "The name of the node type." - }, - "placementProperties": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run." - }, - "reverseProxyEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The endpoint used by reverse proxy." - }, - "vmInstanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": 1, - "maximum": 2147483647 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The number of nodes in the node type. This count should match the capacity property in the corresponding VirtualMachineScaleSet resource." - } - }, - "required": [ - "clientConnectionEndpointPort", - "httpGatewayEndpointPort", - "isPrimary", - "name", - "vmInstanceCount" - ], - "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." - }, - "PartitionSchemeDescription": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/SingletonPartitionSchemeDescription" - } - ], - "properties": {}, - "description": "Describes how the service is partitioned." - }, - "ServerCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the server certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the server certificate." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint" - ], - "description": "Describes the server certificate details using common name." - }, - "ServerCertificateCommonNames": { - "type": "object", - "properties": { - "commonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServerCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of server certificates referenced by common name that are used to secure the cluster." - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "ServiceCorrelationDescription": { - "type": "object", - "properties": { - "scheme": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Invalid", - "Affinity", - "AlignedAffinity", - "NonAlignedAffinity" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The ServiceCorrelationScheme which describes the relationship between this service and the service specified via ServiceName." - }, - "serviceName": { - "type": "string", - "description": "The full name of the service with 'fabric:' URI scheme." - } - }, - "required": [ - "scheme", - "serviceName" - ], - "description": "Creates a particular correlation between services." - }, - "ServiceLoadMetricDescription": { - "type": "object", - "properties": { - "defaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateless services. The default amount of load, as a number, that this service creates for this metric." - }, - "name": { - "type": "string", - "description": "The name of the metric. If the service chooses to report load during runtime, the load metric name should match the name that is specified in Name exactly. Note that metric names are case sensitive." - }, - "primaryDefaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Primary replica." - }, - "secondaryDefaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Secondary replica." - }, - "weight": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Zero", - "Low", - "Medium", - "High" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service load metric relative weight, compared to other metrics configured for this service, as a number." - } - }, - "required": [ - "name" - ], - "description": "Specifies a metric to load balance a service during runtime." - }, - "ServicePlacementPolicyDescription": { - "type": "object", - "properties": {}, - "description": "Describes the policy to be used for placement of a Service Fabric service." - }, - "ServiceResourceProperties": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/StatefulServiceProperties" - }, - { - "$ref": "#/definitions/StatelessServiceProperties" - } - ], - "properties": { - "correlationScheme": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceCorrelationDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A list that describes the correlation of the service with other services." - }, - "defaultMoveCost": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Zero", - "Low", - "Medium", - "High" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Specifies the move cost for the service." - }, - "partitionDescription": { - "oneOf": [ - { - "$ref": "#/definitions/PartitionSchemeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes how the service is partitioned." - }, - "placementConstraints": { - "type": "string", - "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." - }, - "serviceLoadMetrics": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceLoadMetricDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." - }, - "servicePackageActivationMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "SharedProcess", - "ExclusiveProcess" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The activation Mode of the service package." - }, - "servicePlacementPolicies": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServicePlacementPolicyDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A list that describes the correlation of the service with other services." - }, - "serviceTypeName": { - "type": "string", - "description": "The name of the service type" - } - }, - "description": "The service resource properties." - }, - "ServiceTypeDeltaHealthPolicy": { - "type": "object", - "properties": { - "maxPercentDeltaUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of services health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the services at the beginning of upgrade and the state of the services at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" - } - }, - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" - }, - "ServiceTypeHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" - } - }, - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "SettingsParameterDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The parameter name of fabric setting." - }, - "value": { - "type": "string", - "description": "The parameter value of fabric setting." - } - }, - "required": [ - "name", - "value" - ], - "description": "Describes a parameter in fabric settings of the cluster." - }, - "SettingsSectionDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The section name of the fabric settings." - }, - "parameters": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsParameterDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The collection of parameters in the section." - } - }, - "required": [ - "name", - "parameters" - ], - "description": "Describes a section in the fabric settings of the cluster." - }, - "SingletonPartitionSchemeDescription": { - "type": "object", - "properties": { - "partitionScheme": { - "type": "string", - "enum": [ - "Singleton" - ] - } - }, - "required": [ - "partitionScheme" - ], - "description": "SingletonPartitionSchemeDescription" - }, - "StatefulServiceProperties": { - "type": "object", - "properties": { - "hasPersistedState": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." - }, - "minReplicaSetSize": { - "oneOf": [ - { - "type": "integer", - "minimum": 1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The minimum replica set size as a number." - }, - "quorumLossWaitDuration": { - "type": "string", - "format": "date-time", - "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "replicaRestartWaitDuration": { - "type": "string", - "format": "date-time", - "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "serviceKind": { - "type": "string", - "enum": [ - "Stateful" - ] - }, - "standByReplicaKeepDuration": { - "type": "string", - "format": "date-time", - "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "targetReplicaSetSize": { - "oneOf": [ - { - "type": "integer", - "minimum": 1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The target replica set size as a number." - } - }, - "required": [ - "serviceKind" - ], - "description": "The properties of a stateful service resource." - }, - "StatelessServiceProperties": { - "type": "object", - "properties": { - "instanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": -1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The instance count." - }, - "serviceKind": { - "type": "string", - "enum": [ - "Stateless" - ] - } - }, - "required": [ - "serviceKind" - ], - "description": "The properties of a stateless service resource." - } - } -} \ No newline at end of file diff --git a/schemas/2019-06-01-preview/Microsoft.ServiceFabric.json b/schemas/2019-06-01-preview/Microsoft.ServiceFabric.json deleted file mode 100644 index 7164a62211..0000000000 --- a/schemas/2019-06-01-preview/Microsoft.ServiceFabric.json +++ /dev/null @@ -1,2265 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2019-06-01-preview/Microsoft.ServiceFabric.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "Microsoft.ServiceFabric", - "description": "Microsoft ServiceFabric Resource Types", - "resourceDefinitions": { - "clusters": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-06-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the cluster resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the cluster resource properties." - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applicationTypes_childResource" - }, - { - "$ref": "#/definitions/clusters_applications_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters" - ] - } - }, - "required": [ - "apiVersion", - "location", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters" - }, - "clusters_applications": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-06-01-preview" - ] - }, - "identity": { - "oneOf": [ - { - "$ref": "#/definitions/ManagedIdentity" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the managed identities for an Azure resource." - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application resource properties." - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applications_services_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applications" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications" - }, - "clusters_applications_services": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-06-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the service resource in the format of {applicationName}~{serviceName}." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applications/services" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" - }, - "clusters_applicationTypes": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-06-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application type name resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application type name properties" - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applicationTypes_versions_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" - }, - "clusters_applicationTypes_versions": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-06-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The application type version." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of the application type version resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - } - }, - "definitions": { - "ApplicationDeltaHealthPolicy": { - "type": "object", - "properties": { - "defaultServiceTypeDeltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" - }, - "serviceTypeDeltaHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific delta health policies for different service types.\nEach entry specifies as key the service type name and as value a ServiceTypeDeltaHealthPolicy used to evaluate the service health when upgrading the cluster.\nThe map is empty by default.\n" - } - }, - "description": "Defines a delta health policy used to evaluate the health of an application or one of its child entities when upgrading the cluster.\n" - }, - "ApplicationHealthPolicy": { - "type": "object", - "properties": { - "defaultServiceTypeHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceTypeHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "serviceTypeHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ServiceTypeHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "ApplicationMetricDescription": { - "type": "object", - "properties": { - "maximumCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum node capacity for Service Fabric application.\nThis is the maximum Load for an instance of this application on a single node. Even if the capacity of node is greater than this value, Service Fabric will limit the total load of services within the application on each node to this value.\nIf set to zero, capacity for this metric is unlimited on each node.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\nWhen updating existing application with application capacity, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\n" - }, - "name": { - "type": "string", - "description": "The name of the metric." - }, - "reservationCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node reservation capacity for Service Fabric application.\nThis is the amount of load which is reserved on nodes which have instances of this application.\nIf MinimumNodes is specified, then the product of these values will be the capacity reserved in the cluster for the application.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity; this value must be smaller than or equal to MaximumCapacity for each metric.\n" - }, - "totalApplicationCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The total metric capacity for Service Fabric application.\nThis is the total metric capacity for this application in the cluster. Service Fabric will try to limit the sum of loads of services within the application to this value.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and MaximumCapacity must always be smaller than or equal to this value.\n" - } - }, - "description": "Describes capacity information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.\n" - }, - "ApplicationResourceProperties": { - "type": "object", - "properties": { - "managedIdentities": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ApplicationUserAssignedIdentity" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of user assigned identities for the application, each mapped to a friendly name." - }, - "maximumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. By default, the value of this property is zero and it means that the services can be placed on any node." - }, - "metrics": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ApplicationMetricDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of application capacity metric description." - }, - "minimumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The minimum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. If this property is set to zero, no capacity will be reserved. The value of this property cannot be more than the value of the MaximumNodes property." - }, - "parameters": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of application parameters with overridden values from their default values specified in the application manifest." - }, - "removeApplicationCapacity": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Remove the current application capacity settings." - }, - "typeName": { - "type": "string", - "description": "The application type name as defined in the application manifest." - }, - "typeVersion": { - "type": "string", - "description": "The version of the application type as defined in the application manifest." - }, - "upgradePolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the policy for a monitored application upgrade." - } - }, - "description": "The application resource properties." - }, - "ApplicationTypeResourceProperties": { - "type": "object", - "properties": {}, - "description": "The application type name properties" - }, - "ApplicationTypeVersionResourceProperties": { - "type": "object", - "properties": { - "appPackageUrl": { - "type": "string", - "description": "The URL to the application package" - } - }, - "required": [ - "appPackageUrl" - ], - "description": "The properties of the application type version resource." - }, - "ApplicationUpgradePolicy": { - "type": "object", - "properties": { - "applicationHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmApplicationHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "rollingUpgradeMonitoringPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmRollingUpgradeMonitoringPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The policy used for monitoring the application upgrade" - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." - } - }, - "description": "Describes the policy for a monitored application upgrade." - }, - "ApplicationUserAssignedIdentity": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The friendly name of user assigned identity." - }, - "principalId": { - "type": "string", - "description": "The principal id of user assigned identity." - } - }, - "required": [ - "name", - "principalId" - ] - }, - "ArmApplicationHealthPolicy": { - "type": "object", - "properties": { - "considerWarningAsError": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates whether warnings are treated with the same severity as errors." - }, - "defaultServiceTypeHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "maxPercentUnhealthyDeployedApplications": { - "oneOf": [ - { - "type": "integer", - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n" - }, - "serviceTypeHealthPolicyMap": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "ArmRollingUpgradeMonitoringPolicy": { - "type": "object", - "properties": { - "failureAction": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Rollback", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The activation Mode of the service package." - }, - "healthCheckRetryTimeout": { - "type": "string", - "default": "PT0H10M0S", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "healthCheckStableDuration": { - "type": "string", - "default": "PT0H2M0S", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "healthCheckWaitDuration": { - "type": "string", - "default": "0", - "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "upgradeDomainTimeout": { - "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "upgradeTimeout": { - "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - } - }, - "description": "The policy used for monitoring the application upgrade" - }, - "ArmServiceTypeHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyPartitionsPerService": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of partitions per service allowed to be unhealthy before your application is considered in error.\n" - }, - "maxPercentUnhealthyReplicasPerPartition": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of replicas per partition allowed to be unhealthy before your application is considered in error.\n" - }, - "maxPercentUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" - } - }, - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "AzureActiveDirectory": { - "type": "object", - "properties": { - "clientApplication": { - "type": "string", - "description": "Azure active directory client application id." - }, - "clusterApplication": { - "type": "string", - "description": "Azure active directory cluster application id." - }, - "tenantId": { - "type": "string", - "description": "Azure active directory tenant id." - } - }, - "description": "The settings to enable AAD authentication on the cluster." - }, - "CertificateDescription": { - "type": "object", - "properties": { - "thumbprint": { - "type": "string", - "description": "Thumbprint of the primary certificate." - }, - "thumbprintSecondary": { - "type": "string", - "description": "Thumbprint of the secondary certificate." - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "required": [ - "thumbprint" - ], - "description": "Describes the certificate details." - }, - "ClientCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the client certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using common name." - }, - "ClientCertificateThumbprint": { - "type": "object", - "properties": { - "certificateThumbprint": { - "type": "string", - "description": "The thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using thumbprint." - }, - "ClusterHealthPolicy": { - "type": "object", - "properties": { - "applicationHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" - }, - "maxPercentUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of applications that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy application, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy applications over the total number of application instances in the cluster, excluding applications of application types that are included in the ApplicationTypeHealthPolicyMap.\nThe computation rounds up to tolerate one failure on small numbers of applications. Default percentage is zero.\n" - }, - "maxPercentUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of nodes that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy node, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy nodes over the total number of nodes in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n\nIn large clusters, some nodes will always be down or out for repairs, so this percentage should be configured to tolerate that.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" - }, - "ClusterProperties": { - "type": "object", - "properties": { - "addOnFeatures": { - "oneOf": [ - { - "type": "array", - "items": { - "type": "string", - "enum": [ - "RepairManager", - "DnsService", - "BackupRestoreService", - "ResourceMonitorService" - ] - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of add-on features to enable in the cluster." - }, - "azureActiveDirectory": { - "oneOf": [ - { - "$ref": "#/definitions/AzureActiveDirectory" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The settings to enable AAD authentication on the cluster." - }, - "certificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "certificateCommonNames": { - "oneOf": [ - { - "$ref": "#/definitions/ServerCertificateCommonNames" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "clientCertificateCommonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by common name that are allowed to manage the cluster." - }, - "clientCertificateThumbprints": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateThumbprint" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster." - }, - "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**." - }, - "diagnosticsStorageAccountConfig": { - "oneOf": [ - { - "$ref": "#/definitions/DiagnosticsStorageAccountConfig" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "eventStoreServiceEnabled": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the event store service is enabled." - }, - "fabricSettings": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsSectionDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of custom fabric settings to configure the cluster." - }, - "managementEndpoint": { - "type": "string", - "description": "The http management endpoint of the cluster." - }, - "nodeTypes": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/NodeTypeDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of node types in the cluster." - }, - "reliabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "None", - "Bronze", - "Silver", - "Gold", - "Platinum" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n." - }, - "reverseProxyCertificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "reverseProxyCertificateCommonNames": { - "oneOf": [ - { - "$ref": "#/definitions/ServerCertificateCommonNames" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "upgradeDescription": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "upgradeMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Automatic", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "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 as soon as it is 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." - }, - "vmImage": { - "type": "string", - "description": "The VM image VMSS has been configured with. Generic names such as Windows or Linux can be used." - } - }, - "required": [ - "managementEndpoint", - "nodeTypes" - ], - "description": "Describes the cluster resource properties." - }, - "clusters_applications_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-06-01-preview" - ] - }, - "identity": { - "oneOf": [ - { - "$ref": "#/definitions/ManagedIdentity" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the managed identities for an Azure resource." - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "applications" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications" - }, - "clusters_applications_services_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-06-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the service resource in the format of {applicationName}~{serviceName}." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "services" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" - }, - "clusters_applicationTypes_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-06-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application type name resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application type name properties" - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "applicationTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" - }, - "clusters_applicationTypes_versions_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-06-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The application type version." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of the application type version resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "versions" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - }, - "ClusterUpgradeDeltaHealthPolicy": { - "type": "object", - "properties": { - "applicationDeltaHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationDeltaHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific application delta health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationDeltaHealthPolicy used to evaluate the application health when upgrading the cluster.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" - }, - "maxPercentDeltaUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of applications health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the applications at the beginning of upgrade and the state of the applications at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits. System services are not included in this.\n" - }, - "maxPercentDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the nodes at the beginning of upgrade and the state of the nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" - }, - "maxPercentUpgradeDomainDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of upgrade domain nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the upgrade domain nodes at the beginning of upgrade and the state of the upgrade domain nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion for all completed upgrade domains to make sure the state of the upgrade domains is within tolerated limits.\n" - } - }, - "required": [ - "maxPercentDeltaUnhealthyApplications", - "maxPercentDeltaUnhealthyNodes", - "maxPercentUpgradeDomainDeltaUnhealthyNodes" - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "ClusterUpgradePolicy": { - "type": "object", - "properties": { - "deltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "healthCheckRetryTimeout": { - "type": "string", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckStableDuration": { - "type": "string", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckWaitDuration": { - "type": "string", - "description": "The length of time to wait after completing an upgrade domain before performing health checks. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" - }, - "upgradeDomainTimeout": { - "type": "string", - "description": "The amount of time each upgrade domain has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeTimeout": { - "type": "string", - "description": "The amount of time the overall upgrade has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - } - }, - "required": [ - "healthCheckRetryTimeout", - "healthCheckStableDuration", - "healthCheckWaitDuration", - "healthPolicy", - "upgradeDomainTimeout", - "upgradeReplicaSetCheckTimeout", - "upgradeTimeout" - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "DiagnosticsStorageAccountConfig": { - "type": "object", - "properties": { - "blobEndpoint": { - "type": "string", - "description": "The blob endpoint of the azure storage account." - }, - "protectedAccountKeyName": { - "type": "string", - "description": "The protected diagnostics storage key name." - }, - "protectedAccountKeyName2": { - "type": "string", - "description": "The protected diagnostics storage key name." - }, - "queueEndpoint": { - "type": "string", - "description": "The queue endpoint of the azure storage account." - }, - "storageAccountName": { - "type": "string", - "description": "The Azure storage account name." - }, - "tableEndpoint": { - "type": "string", - "description": "The table endpoint of the azure storage account." - } - }, - "required": [ - "blobEndpoint", - "protectedAccountKeyName", - "queueEndpoint", - "storageAccountName", - "tableEndpoint" - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "EndpointRangeDescription": { - "type": "object", - "properties": { - "endPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "End port of a range of ports" - }, - "startPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Starting port of a range of ports" - } - }, - "required": [ - "endPort", - "startPort" - ], - "description": "Port range details" - }, - "ManagedIdentity": { - "type": "object", - "properties": { - "type": { - "oneOf": [ - { - "type": "string", - "enum": [ - "SystemAssigned", - "UserAssigned", - "SystemAssigned, UserAssigned", - "None" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The type of managed identity for the resource." - }, - "userAssignedIdentities": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/UserAssignedIdentity" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\n" - } - }, - "description": "Describes the managed identities for an Azure resource." - }, - "NodeTypeDescription": { - "type": "object", - "properties": { - "applicationPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "capacities": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has." - }, - "clientConnectionEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The TCP cluster management endpoint port." - }, - "durabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Bronze", - "Silver", - "Gold" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The durability level of the node type. Learn about [DurabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - Bronze - No privileges. This is the default.\n - Silver - The infrastructure jobs can be paused for a duration of 10 minutes per UD.\n - Gold - The infrastructure jobs can be paused for a duration of 2 hours per UD. Gold durability can be enabled only on full node VM skus like D15_V2, G5 etc.\n." - }, - "ephemeralPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "httpGatewayEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The HTTP cluster management endpoint port." - }, - "isPrimary": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters." - }, - "name": { - "type": "string", - "description": "The name of the node type." - }, - "placementProperties": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run." - }, - "reverseProxyEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The endpoint used by reverse proxy." - }, - "vmInstanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": 1, - "maximum": 2147483647 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The number of nodes in the node type. This count should match the capacity property in the corresponding VirtualMachineScaleSet resource." - } - }, - "required": [ - "clientConnectionEndpointPort", - "httpGatewayEndpointPort", - "isPrimary", - "name", - "vmInstanceCount" - ], - "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." - }, - "PartitionSchemeDescription": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/SingletonPartitionSchemeDescription" - } - ], - "properties": {}, - "description": "Describes how the service is partitioned." - }, - "ServerCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the server certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the server certificate." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint" - ], - "description": "Describes the server certificate details using common name." - }, - "ServerCertificateCommonNames": { - "type": "object", - "properties": { - "commonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServerCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of server certificates referenced by common name that are used to secure the cluster." - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "ServiceCorrelationDescription": { - "type": "object", - "properties": { - "scheme": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Invalid", - "Affinity", - "AlignedAffinity", - "NonAlignedAffinity" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The ServiceCorrelationScheme which describes the relationship between this service and the service specified via ServiceName." - }, - "serviceName": { - "type": "string", - "description": "The full name of the service with 'fabric:' URI scheme." - } - }, - "required": [ - "scheme", - "serviceName" - ], - "description": "Creates a particular correlation between services." - }, - "ServiceLoadMetricDescription": { - "type": "object", - "properties": { - "defaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateless services. The default amount of load, as a number, that this service creates for this metric." - }, - "name": { - "type": "string", - "description": "The name of the metric. If the service chooses to report load during runtime, the load metric name should match the name that is specified in Name exactly. Note that metric names are case sensitive." - }, - "primaryDefaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Primary replica." - }, - "secondaryDefaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Secondary replica." - }, - "weight": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Zero", - "Low", - "Medium", - "High" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service load metric relative weight, compared to other metrics configured for this service, as a number." - } - }, - "required": [ - "name" - ], - "description": "Specifies a metric to load balance a service during runtime." - }, - "ServicePlacementPolicyDescription": { - "type": "object", - "properties": {}, - "description": "Describes the policy to be used for placement of a Service Fabric service." - }, - "ServiceResourceProperties": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/StatefulServiceProperties" - }, - { - "$ref": "#/definitions/StatelessServiceProperties" - } - ], - "properties": { - "correlationScheme": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceCorrelationDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A list that describes the correlation of the service with other services." - }, - "defaultMoveCost": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Zero", - "Low", - "Medium", - "High" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Specifies the move cost for the service." - }, - "partitionDescription": { - "oneOf": [ - { - "$ref": "#/definitions/PartitionSchemeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes how the service is partitioned." - }, - "placementConstraints": { - "type": "string", - "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." - }, - "serviceLoadMetrics": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceLoadMetricDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." - }, - "servicePackageActivationMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "SharedProcess", - "ExclusiveProcess" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The activation Mode of the service package." - }, - "servicePlacementPolicies": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServicePlacementPolicyDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A list that describes the correlation of the service with other services." - }, - "serviceTypeName": { - "type": "string", - "description": "The name of the service type" - } - }, - "description": "The service resource properties." - }, - "ServiceTypeDeltaHealthPolicy": { - "type": "object", - "properties": { - "maxPercentDeltaUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of services health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the services at the beginning of upgrade and the state of the services at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" - } - }, - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" - }, - "ServiceTypeHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" - } - }, - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "SettingsParameterDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The parameter name of fabric setting." - }, - "value": { - "type": "string", - "description": "The parameter value of fabric setting." - } - }, - "required": [ - "name", - "value" - ], - "description": "Describes a parameter in fabric settings of the cluster." - }, - "SettingsSectionDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The section name of the fabric settings." - }, - "parameters": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsParameterDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The collection of parameters in the section." - } - }, - "required": [ - "name", - "parameters" - ], - "description": "Describes a section in the fabric settings of the cluster." - }, - "SingletonPartitionSchemeDescription": { - "type": "object", - "properties": { - "partitionScheme": { - "type": "string", - "enum": [ - "Singleton" - ] - } - }, - "required": [ - "partitionScheme" - ], - "description": "SingletonPartitionSchemeDescription" - }, - "StatefulServiceProperties": { - "type": "object", - "properties": { - "hasPersistedState": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." - }, - "minReplicaSetSize": { - "oneOf": [ - { - "type": "integer", - "minimum": 1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The minimum replica set size as a number." - }, - "quorumLossWaitDuration": { - "type": "string", - "format": "date-time", - "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "replicaRestartWaitDuration": { - "type": "string", - "format": "date-time", - "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "serviceKind": { - "type": "string", - "enum": [ - "Stateful" - ] - }, - "standByReplicaKeepDuration": { - "type": "string", - "format": "date-time", - "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "targetReplicaSetSize": { - "oneOf": [ - { - "type": "integer", - "minimum": 1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The target replica set size as a number." - } - }, - "required": [ - "serviceKind" - ], - "description": "The properties of a stateful service resource." - }, - "StatelessServiceProperties": { - "type": "object", - "properties": { - "instanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": -1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The instance count." - }, - "serviceKind": { - "type": "string", - "enum": [ - "Stateless" - ] - } - }, - "required": [ - "serviceKind" - ], - "description": "The properties of a stateless service resource." - }, - "UserAssignedIdentity": { - "type": "object", - "properties": {} - } - } -} \ No newline at end of file diff --git a/schemas/2019-11-01-preview/Microsoft.ServiceFabric.json b/schemas/2019-11-01-preview/Microsoft.ServiceFabric.json deleted file mode 100644 index 589858c9fe..0000000000 --- a/schemas/2019-11-01-preview/Microsoft.ServiceFabric.json +++ /dev/null @@ -1,2331 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2019-11-01-preview/Microsoft.ServiceFabric.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "Microsoft.ServiceFabric", - "description": "Microsoft ServiceFabric Resource Types", - "resourceDefinitions": { - "clusters": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-11-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the cluster resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the cluster resource properties." - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applicationTypes_childResource" - }, - { - "$ref": "#/definitions/clusters_applications_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters" - ] - } - }, - "required": [ - "apiVersion", - "location", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters" - }, - "clusters_applications": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-11-01-preview" - ] - }, - "identity": { - "oneOf": [ - { - "$ref": "#/definitions/ManagedIdentity" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the managed identities for an Azure resource." - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application resource properties." - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applications_services_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applications" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications" - }, - "clusters_applications_services": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-11-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the service resource in the format of {applicationName}~{serviceName}." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applications/services" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" - }, - "clusters_applicationTypes": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-11-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application type name resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application type name properties" - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applicationTypes_versions_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" - }, - "clusters_applicationTypes_versions": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-11-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The application type version." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of the application type version resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - } - }, - "definitions": { - "ApplicationDeltaHealthPolicy": { - "type": "object", - "properties": { - "defaultServiceTypeDeltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" - }, - "serviceTypeDeltaHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific delta health policies for different service types.\nEach entry specifies as key the service type name and as value a ServiceTypeDeltaHealthPolicy used to evaluate the service health when upgrading the cluster.\nThe map is empty by default.\n" - } - }, - "description": "Defines a delta health policy used to evaluate the health of an application or one of its child entities when upgrading the cluster.\n" - }, - "ApplicationHealthPolicy": { - "type": "object", - "properties": { - "defaultServiceTypeHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceTypeHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "serviceTypeHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ServiceTypeHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "ApplicationMetricDescription": { - "type": "object", - "properties": { - "maximumCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum node capacity for Service Fabric application.\nThis is the maximum Load for an instance of this application on a single node. Even if the capacity of node is greater than this value, Service Fabric will limit the total load of services within the application on each node to this value.\nIf set to zero, capacity for this metric is unlimited on each node.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\nWhen updating existing application with application capacity, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\n" - }, - "name": { - "type": "string", - "description": "The name of the metric." - }, - "reservationCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node reservation capacity for Service Fabric application.\nThis is the amount of load which is reserved on nodes which have instances of this application.\nIf MinimumNodes is specified, then the product of these values will be the capacity reserved in the cluster for the application.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity; this value must be smaller than or equal to MaximumCapacity for each metric.\n" - }, - "totalApplicationCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The total metric capacity for Service Fabric application.\nThis is the total metric capacity for this application in the cluster. Service Fabric will try to limit the sum of loads of services within the application to this value.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and MaximumCapacity must always be smaller than or equal to this value.\n" - } - }, - "description": "Describes capacity information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.\n" - }, - "ApplicationResourceProperties": { - "type": "object", - "properties": { - "managedIdentities": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ApplicationUserAssignedIdentity" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of user assigned identities for the application, each mapped to a friendly name." - }, - "maximumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. By default, the value of this property is zero and it means that the services can be placed on any node." - }, - "metrics": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ApplicationMetricDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of application capacity metric description." - }, - "minimumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The minimum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. If this property is set to zero, no capacity will be reserved. The value of this property cannot be more than the value of the MaximumNodes property." - }, - "parameters": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of application parameters with overridden values from their default values specified in the application manifest." - }, - "removeApplicationCapacity": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Remove the current application capacity settings." - }, - "typeName": { - "type": "string", - "description": "The application type name as defined in the application manifest." - }, - "typeVersion": { - "type": "string", - "description": "The version of the application type as defined in the application manifest." - }, - "upgradePolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the policy for a monitored application upgrade." - } - }, - "description": "The application resource properties." - }, - "ApplicationTypeResourceProperties": { - "type": "object", - "properties": {}, - "description": "The application type name properties" - }, - "ApplicationTypeVersionResourceProperties": { - "type": "object", - "properties": { - "appPackageUrl": { - "type": "string", - "description": "The URL to the application package" - } - }, - "required": [ - "appPackageUrl" - ], - "description": "The properties of the application type version resource." - }, - "ApplicationTypeVersionsCleanupPolicy": { - "type": "object", - "properties": { - "maxUnusedVersionsToKeep": { - "oneOf": [ - { - "type": "integer", - "minimum": 0 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Number of unused versions per application type to keep." - } - }, - "required": [ - "maxUnusedVersionsToKeep" - ] - }, - "ApplicationUpgradePolicy": { - "type": "object", - "properties": { - "applicationHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmApplicationHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "recreateApplication": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Determines whether the application should be recreated on update. If value=true, the rest of the upgrade policy parameters are not allowed and it will result in availability loss." - }, - "rollingUpgradeMonitoringPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmRollingUpgradeMonitoringPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The policy used for monitoring the application upgrade" - }, - "upgradeMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Invalid", - "UnmonitoredAuto", - "UnmonitoredManual", - "Monitored" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." - } - }, - "description": "Describes the policy for a monitored application upgrade." - }, - "ApplicationUserAssignedIdentity": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The friendly name of user assigned identity." - }, - "principalId": { - "type": "string", - "description": "The principal id of user assigned identity." - } - }, - "required": [ - "name", - "principalId" - ] - }, - "ArmApplicationHealthPolicy": { - "type": "object", - "properties": { - "considerWarningAsError": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates whether warnings are treated with the same severity as errors." - }, - "defaultServiceTypeHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "maxPercentUnhealthyDeployedApplications": { - "oneOf": [ - { - "type": "integer", - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n" - }, - "serviceTypeHealthPolicyMap": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "ArmRollingUpgradeMonitoringPolicy": { - "type": "object", - "properties": { - "failureAction": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Rollback", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The activation Mode of the service package." - }, - "healthCheckRetryTimeout": { - "type": "string", - "default": "PT0H10M0S", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "healthCheckStableDuration": { - "type": "string", - "default": "PT0H2M0S", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "healthCheckWaitDuration": { - "type": "string", - "default": "0", - "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "upgradeDomainTimeout": { - "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "upgradeTimeout": { - "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - } - }, - "description": "The policy used for monitoring the application upgrade" - }, - "ArmServiceTypeHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyPartitionsPerService": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of partitions per service allowed to be unhealthy before your application is considered in error.\n" - }, - "maxPercentUnhealthyReplicasPerPartition": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of replicas per partition allowed to be unhealthy before your application is considered in error.\n" - }, - "maxPercentUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" - } - }, - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "AzureActiveDirectory": { - "type": "object", - "properties": { - "clientApplication": { - "type": "string", - "description": "Azure active directory client application id." - }, - "clusterApplication": { - "type": "string", - "description": "Azure active directory cluster application id." - }, - "tenantId": { - "type": "string", - "description": "Azure active directory tenant id." - } - }, - "description": "The settings to enable AAD authentication on the cluster." - }, - "CertificateDescription": { - "type": "object", - "properties": { - "thumbprint": { - "type": "string", - "description": "Thumbprint of the primary certificate." - }, - "thumbprintSecondary": { - "type": "string", - "description": "Thumbprint of the secondary certificate." - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "required": [ - "thumbprint" - ], - "description": "Describes the certificate details." - }, - "ClientCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the client certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using common name." - }, - "ClientCertificateThumbprint": { - "type": "object", - "properties": { - "certificateThumbprint": { - "type": "string", - "description": "The thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using thumbprint." - }, - "ClusterHealthPolicy": { - "type": "object", - "properties": { - "applicationHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" - }, - "maxPercentUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of applications that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy application, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy applications over the total number of application instances in the cluster, excluding applications of application types that are included in the ApplicationTypeHealthPolicyMap.\nThe computation rounds up to tolerate one failure on small numbers of applications. Default percentage is zero.\n" - }, - "maxPercentUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of nodes that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy node, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy nodes over the total number of nodes in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n\nIn large clusters, some nodes will always be down or out for repairs, so this percentage should be configured to tolerate that.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" - }, - "ClusterProperties": { - "type": "object", - "properties": { - "addOnFeatures": { - "oneOf": [ - { - "type": "array", - "items": { - "type": "string", - "enum": [ - "RepairManager", - "DnsService", - "BackupRestoreService", - "ResourceMonitorService" - ] - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of add-on features to enable in the cluster." - }, - "applicationTypeVersionsCleanupPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "azureActiveDirectory": { - "oneOf": [ - { - "$ref": "#/definitions/AzureActiveDirectory" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The settings to enable AAD authentication on the cluster." - }, - "certificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "certificateCommonNames": { - "oneOf": [ - { - "$ref": "#/definitions/ServerCertificateCommonNames" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "clientCertificateCommonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by common name that are allowed to manage the cluster." - }, - "clientCertificateThumbprints": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateThumbprint" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster." - }, - "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**." - }, - "diagnosticsStorageAccountConfig": { - "oneOf": [ - { - "$ref": "#/definitions/DiagnosticsStorageAccountConfig" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "eventStoreServiceEnabled": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the event store service is enabled." - }, - "fabricSettings": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsSectionDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of custom fabric settings to configure the cluster." - }, - "managementEndpoint": { - "type": "string", - "description": "The http management endpoint of the cluster." - }, - "nodeTypes": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/NodeTypeDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of node types in the cluster." - }, - "reliabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "None", - "Bronze", - "Silver", - "Gold", - "Platinum" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n." - }, - "reverseProxyCertificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "reverseProxyCertificateCommonNames": { - "oneOf": [ - { - "$ref": "#/definitions/ServerCertificateCommonNames" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "upgradeDescription": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "upgradeMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Automatic", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "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 as soon as it is 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." - }, - "vmImage": { - "type": "string", - "description": "The VM image VMSS has been configured with. Generic names such as Windows or Linux can be used." - } - }, - "required": [ - "managementEndpoint", - "nodeTypes" - ], - "description": "Describes the cluster resource properties." - }, - "clusters_applications_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-11-01-preview" - ] - }, - "identity": { - "oneOf": [ - { - "$ref": "#/definitions/ManagedIdentity" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the managed identities for an Azure resource." - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "applications" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications" - }, - "clusters_applications_services_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-11-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the service resource in the format of {applicationName}~{serviceName}." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "services" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" - }, - "clusters_applicationTypes_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-11-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application type name resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application type name properties" - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "applicationTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" - }, - "clusters_applicationTypes_versions_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2019-11-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The application type version." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of the application type version resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "versions" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - }, - "ClusterUpgradeDeltaHealthPolicy": { - "type": "object", - "properties": { - "applicationDeltaHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationDeltaHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific application delta health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationDeltaHealthPolicy used to evaluate the application health when upgrading the cluster.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" - }, - "maxPercentDeltaUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of applications health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the applications at the beginning of upgrade and the state of the applications at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits. System services are not included in this.\n" - }, - "maxPercentDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the nodes at the beginning of upgrade and the state of the nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" - }, - "maxPercentUpgradeDomainDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of upgrade domain nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the upgrade domain nodes at the beginning of upgrade and the state of the upgrade domain nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion for all completed upgrade domains to make sure the state of the upgrade domains is within tolerated limits.\n" - } - }, - "required": [ - "maxPercentDeltaUnhealthyApplications", - "maxPercentDeltaUnhealthyNodes", - "maxPercentUpgradeDomainDeltaUnhealthyNodes" - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "ClusterUpgradePolicy": { - "type": "object", - "properties": { - "deltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "healthCheckRetryTimeout": { - "type": "string", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckStableDuration": { - "type": "string", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckWaitDuration": { - "type": "string", - "description": "The length of time to wait after completing an upgrade domain before performing health checks. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" - }, - "upgradeDomainTimeout": { - "type": "string", - "description": "The amount of time each upgrade domain has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeTimeout": { - "type": "string", - "description": "The amount of time the overall upgrade has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - } - }, - "required": [ - "healthCheckRetryTimeout", - "healthCheckStableDuration", - "healthCheckWaitDuration", - "healthPolicy", - "upgradeDomainTimeout", - "upgradeReplicaSetCheckTimeout", - "upgradeTimeout" - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "DiagnosticsStorageAccountConfig": { - "type": "object", - "properties": { - "blobEndpoint": { - "type": "string", - "description": "The blob endpoint of the azure storage account." - }, - "protectedAccountKeyName": { - "type": "string", - "description": "The protected diagnostics storage key name." - }, - "protectedAccountKeyName2": { - "type": "string", - "description": "The protected diagnostics storage key name." - }, - "queueEndpoint": { - "type": "string", - "description": "The queue endpoint of the azure storage account." - }, - "storageAccountName": { - "type": "string", - "description": "The Azure storage account name." - }, - "tableEndpoint": { - "type": "string", - "description": "The table endpoint of the azure storage account." - } - }, - "required": [ - "blobEndpoint", - "protectedAccountKeyName", - "queueEndpoint", - "storageAccountName", - "tableEndpoint" - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "EndpointRangeDescription": { - "type": "object", - "properties": { - "endPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "End port of a range of ports" - }, - "startPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Starting port of a range of ports" - } - }, - "required": [ - "endPort", - "startPort" - ], - "description": "Port range details" - }, - "ManagedIdentity": { - "type": "object", - "properties": { - "type": { - "oneOf": [ - { - "type": "string", - "enum": [ - "SystemAssigned", - "UserAssigned", - "SystemAssigned, UserAssigned", - "None" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The type of managed identity for the resource." - }, - "userAssignedIdentities": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/UserAssignedIdentity" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\n" - } - }, - "description": "Describes the managed identities for an Azure resource." - }, - "NodeTypeDescription": { - "type": "object", - "properties": { - "applicationPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "capacities": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has." - }, - "clientConnectionEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The TCP cluster management endpoint port." - }, - "durabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Bronze", - "Silver", - "Gold" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The durability level of the node type. Learn about [DurabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - Bronze - No privileges. This is the default.\n - Silver - The infrastructure jobs can be paused for a duration of 10 minutes per UD.\n - Gold - The infrastructure jobs can be paused for a duration of 2 hours per UD. Gold durability can be enabled only on full node VM skus like D15_V2, G5 etc.\n." - }, - "ephemeralPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "httpGatewayEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The HTTP cluster management endpoint port." - }, - "isPrimary": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters." - }, - "name": { - "type": "string", - "description": "The name of the node type." - }, - "placementProperties": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run." - }, - "reverseProxyEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The endpoint used by reverse proxy." - }, - "vmInstanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": 1, - "maximum": 2147483647 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The number of nodes in the node type. This count should match the capacity property in the corresponding VirtualMachineScaleSet resource." - } - }, - "required": [ - "clientConnectionEndpointPort", - "httpGatewayEndpointPort", - "isPrimary", - "name", - "vmInstanceCount" - ], - "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." - }, - "PartitionSchemeDescription": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/SingletonPartitionSchemeDescription" - } - ], - "properties": {}, - "description": "Describes how the service is partitioned." - }, - "ServerCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the server certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the server certificate." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint" - ], - "description": "Describes the server certificate details using common name." - }, - "ServerCertificateCommonNames": { - "type": "object", - "properties": { - "commonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServerCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of server certificates referenced by common name that are used to secure the cluster." - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "ServiceCorrelationDescription": { - "type": "object", - "properties": { - "scheme": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Invalid", - "Affinity", - "AlignedAffinity", - "NonAlignedAffinity" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The ServiceCorrelationScheme which describes the relationship between this service and the service specified via ServiceName." - }, - "serviceName": { - "type": "string", - "description": "The full name of the service with 'fabric:' URI scheme." - } - }, - "required": [ - "scheme", - "serviceName" - ], - "description": "Creates a particular correlation between services." - }, - "ServiceLoadMetricDescription": { - "type": "object", - "properties": { - "defaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateless services. The default amount of load, as a number, that this service creates for this metric." - }, - "name": { - "type": "string", - "description": "The name of the metric. If the service chooses to report load during runtime, the load metric name should match the name that is specified in Name exactly. Note that metric names are case sensitive." - }, - "primaryDefaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Primary replica." - }, - "secondaryDefaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Secondary replica." - }, - "weight": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Zero", - "Low", - "Medium", - "High" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service load metric relative weight, compared to other metrics configured for this service, as a number." - } - }, - "required": [ - "name" - ], - "description": "Specifies a metric to load balance a service during runtime." - }, - "ServicePlacementPolicyDescription": { - "type": "object", - "properties": {}, - "description": "Describes the policy to be used for placement of a Service Fabric service." - }, - "ServiceResourceProperties": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/StatefulServiceProperties" - }, - { - "$ref": "#/definitions/StatelessServiceProperties" - } - ], - "properties": { - "correlationScheme": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceCorrelationDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A list that describes the correlation of the service with other services." - }, - "defaultMoveCost": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Zero", - "Low", - "Medium", - "High" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Specifies the move cost for the service." - }, - "partitionDescription": { - "oneOf": [ - { - "$ref": "#/definitions/PartitionSchemeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes how the service is partitioned." - }, - "placementConstraints": { - "type": "string", - "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." - }, - "serviceDnsName": { - "type": "string", - "description": "Dns name used for the service. If this is specified, then the service can be accessed via its DNS name instead of service name." - }, - "serviceLoadMetrics": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceLoadMetricDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." - }, - "servicePackageActivationMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "SharedProcess", - "ExclusiveProcess" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The activation Mode of the service package." - }, - "servicePlacementPolicies": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServicePlacementPolicyDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A list that describes the correlation of the service with other services." - }, - "serviceTypeName": { - "type": "string", - "description": "The name of the service type" - } - }, - "description": "The service resource properties." - }, - "ServiceTypeDeltaHealthPolicy": { - "type": "object", - "properties": { - "maxPercentDeltaUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of services health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the services at the beginning of upgrade and the state of the services at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" - } - }, - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" - }, - "ServiceTypeHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" - } - }, - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "SettingsParameterDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The parameter name of fabric setting." - }, - "value": { - "type": "string", - "description": "The parameter value of fabric setting." - } - }, - "required": [ - "name", - "value" - ], - "description": "Describes a parameter in fabric settings of the cluster." - }, - "SettingsSectionDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The section name of the fabric settings." - }, - "parameters": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsParameterDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The collection of parameters in the section." - } - }, - "required": [ - "name", - "parameters" - ], - "description": "Describes a section in the fabric settings of the cluster." - }, - "SingletonPartitionSchemeDescription": { - "type": "object", - "properties": { - "partitionScheme": { - "type": "string", - "enum": [ - "Singleton" - ] - } - }, - "required": [ - "partitionScheme" - ], - "description": "SingletonPartitionSchemeDescription" - }, - "StatefulServiceProperties": { - "type": "object", - "properties": { - "hasPersistedState": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." - }, - "minReplicaSetSize": { - "oneOf": [ - { - "type": "integer", - "minimum": 1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The minimum replica set size as a number." - }, - "quorumLossWaitDuration": { - "type": "string", - "format": "date-time", - "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "replicaRestartWaitDuration": { - "type": "string", - "format": "date-time", - "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "serviceKind": { - "type": "string", - "enum": [ - "Stateful" - ] - }, - "standByReplicaKeepDuration": { - "type": "string", - "format": "date-time", - "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "targetReplicaSetSize": { - "oneOf": [ - { - "type": "integer", - "minimum": 1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The target replica set size as a number." - } - }, - "required": [ - "serviceKind" - ], - "description": "The properties of a stateful service resource." - }, - "StatelessServiceProperties": { - "type": "object", - "properties": { - "instanceCloseDelayDuration": { - "type": "string", - "description": "Delay duration for RequestDrain feature to ensures that the endpoint advertised by the stateless instance is removed before the delay starts prior to closing the instance. This delay enables existing requests to drain gracefully before the instance actually goes down (https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-application-upgrade-advanced#avoid-connection-drops-during-stateless-service-planned-downtime-preview). It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "instanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": -1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The instance count." - }, - "serviceKind": { - "type": "string", - "enum": [ - "Stateless" - ] - } - }, - "required": [ - "serviceKind" - ], - "description": "The properties of a stateless service resource." - }, - "UserAssignedIdentity": { - "type": "object", - "properties": {} - } - } -} \ No newline at end of file diff --git a/schemas/2020-01-01-preview/Microsoft.ServiceFabric.json b/schemas/2020-01-01-preview/Microsoft.ServiceFabric.json deleted file mode 100644 index 0764493274..0000000000 --- a/schemas/2020-01-01-preview/Microsoft.ServiceFabric.json +++ /dev/null @@ -1,842 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2020-01-01-preview/Microsoft.ServiceFabric.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "Microsoft.ServiceFabric", - "description": "Microsoft ServiceFabric Resource Types", - "resourceDefinitions": { - "managedClusters": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-01-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the cluster resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ManagedClusterProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the managed cluster resource properties." - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/managedClusters_nodeTypes_childResource" - } - ] - } - }, - "sku": { - "oneOf": [ - { - "$ref": "#/definitions/Sku" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Sku definition" - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/managedClusters" - ] - } - }, - "required": [ - "apiVersion", - "location", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/managedClusters" - }, - "managedClusters_nodeTypes": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-01-01-preview" - ] - }, - "name": { - "type": "string", - "description": "The name of the node type." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/NodeTypeProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/managedClusters/nodeTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/managedClusters/nodeTypes" - } - }, - "definitions": { - "AzureActiveDirectory": { - "type": "object", - "properties": { - "clientApplication": { - "type": "string", - "description": "Azure active directory client application id." - }, - "clusterApplication": { - "type": "string", - "description": "Azure active directory cluster application id." - }, - "tenantId": { - "type": "string", - "description": "Azure active directory tenant id." - } - }, - "description": "The settings to enable AAD authentication on the cluster." - }, - "ClientCertificate": { - "type": "object", - "properties": { - "commonName": { - "type": "string", - "description": "Certificate Common name." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Whether the certificate is admin or not." - }, - "issuerThumbprint": { - "type": "string", - "description": "Issuer thumbprint for the certificate. Only used together with CommonName." - }, - "thumbprint": { - "type": "string", - "description": "Certificate Thumbprint." - } - }, - "required": [ - "isAdmin" - ], - "description": "Client Certificate definition." - }, - "EndpointRangeDescription": { - "type": "object", - "properties": { - "endPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "End port of a range of ports" - }, - "startPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Starting port of a range of ports" - } - }, - "required": [ - "endPort", - "startPort" - ], - "description": "Port range details" - }, - "LoadBalancingRule": { - "type": "object", - "properties": { - "backendPort": { - "oneOf": [ - { - "type": "integer", - "minimum": 1, - "maximum": 65534 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535." - }, - "frontendPort": { - "oneOf": [ - { - "type": "integer", - "minimum": 1, - "maximum": 65534 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 1 and 65534." - }, - "probeProtocol": { - "oneOf": [ - { - "type": "string", - "enum": [ - "tcp", - "http", - "https" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "the reference to the load balancer probe used by the load balancing rule." - }, - "probeRequestPath": { - "type": "string", - "description": "The probe request path. Only supported for HTTP/HTTPS probes." - }, - "protocol": { - "oneOf": [ - { - "type": "string", - "enum": [ - "tcp", - "udp" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The reference to the transport protocol used by the load balancing rule." - } - }, - "required": [ - "backendPort", - "frontendPort", - "probeProtocol", - "protocol" - ], - "description": "Describes a load balancing rule." - }, - "ManagedClusterProperties": { - "type": "object", - "properties": { - "addonFeatures": { - "oneOf": [ - { - "type": "array", - "items": { - "type": "string", - "enum": [ - "DnsService", - "BackupRestoreService", - "ResourceMonitorService" - ] - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "client certificates for the cluster." - }, - "adminPassword": { - "type": "string", - "format": "password", - "description": "vm admin user password." - }, - "adminUserName": { - "type": "string", - "description": "vm admin user name." - }, - "azureActiveDirectory": { - "oneOf": [ - { - "$ref": "#/definitions/AzureActiveDirectory" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The settings to enable AAD authentication on the cluster." - }, - "clientConnectionPort": { - "oneOf": [ - { - "type": "integer", - "default": "19000" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The port used for client connections to the cluster." - }, - "clients": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificate" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "client certificates for the cluster." - }, - "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**." - }, - "dnsName": { - "type": "string", - "description": "The cluster dns name." - }, - "fabricSettings": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsSectionDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of custom fabric settings to configure the cluster." - }, - "httpGatewayConnectionPort": { - "oneOf": [ - { - "type": "integer", - "default": "19080" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The port used for http connections to the cluster." - }, - "loadBalancingRules": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/LoadBalancingRule" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes load balancing rules." - } - }, - "required": [ - "adminUserName", - "dnsName" - ], - "description": "Describes the managed cluster resource properties." - }, - "managedClusters_nodeTypes_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-01-01-preview" - ] - }, - "name": { - "type": "string", - "description": "The name of the node type." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/NodeTypeProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "nodeTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/managedClusters/nodeTypes" - }, - "NodeTypeProperties": { - "type": "object", - "properties": { - "applicationPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "capacities": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has." - }, - "dataDiskSizeGB": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Disk size for each vm in the node type in GBs." - }, - "ephemeralPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "isPrimary": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters." - }, - "placementProperties": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run." - }, - "vmExtensions": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/VMSSExtension" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Set of extensions that should be installed onto the virtual machines." - }, - "vmImageOffer": { - "type": "string", - "description": "The offer type of the Azure Virtual Machines Marketplace image. For example, UbuntuServer or WindowsServer." - }, - "vmImagePublisher": { - "type": "string", - "description": "The publisher of the Azure Virtual Machines Marketplace image. For example, Canonical or MicrosoftWindowsServer." - }, - "vmImageSku": { - "type": "string", - "description": "The SKU of the Azure Virtual Machines Marketplace image. For example, 14.04.0-LTS or 2012-R2-Datacenter." - }, - "vmImageVersion": { - "type": "string", - "description": "The version of the Azure Virtual Machines Marketplace image. A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'." - }, - "vmInstanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": 1, - "maximum": 2147483647 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The number of nodes in the node type." - }, - "vmSecrets": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/VaultSecretGroup" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The secrets to install in the virtual machines." - }, - "vmSize": { - "type": "string", - "description": "The size of virtual machines in the pool. All virtual machines in a pool are the same size. For example, Standard_D3." - } - }, - "required": [ - "dataDiskSizeGB", - "isPrimary", - "vmInstanceCount" - ], - "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." - }, - "SettingsParameterDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The parameter name of fabric setting." - }, - "value": { - "type": "string", - "description": "The parameter value of fabric setting." - } - }, - "required": [ - "name", - "value" - ], - "description": "Describes a parameter in fabric settings of the cluster." - }, - "SettingsSectionDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The section name of the fabric settings." - }, - "parameters": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsParameterDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The collection of parameters in the section." - } - }, - "required": [ - "name", - "parameters" - ], - "description": "Describes a section in the fabric settings of the cluster." - }, - "Sku": { - "type": "object", - "properties": { - "name": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Basic", - "Standard" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Sku Name." - } - }, - "required": [ - "name" - ], - "description": "Sku definition" - }, - "SubResource": { - "type": "object", - "properties": { - "id": { - "type": "string", - "description": "Azure resource identifier." - } - }, - "description": "Azure resource identifier." - }, - "VaultCertificate": { - "type": "object", - "properties": { - "certificateStore": { - "type": "string", - "description": "For Windows VMs, specifies the certificate store on the Virtual Machine to which the certificate should be added. The specified certificate store is implicitly in the LocalMachine account.

For Linux VMs, the certificate file is placed under the /var/lib/waagent directory, with the file name .crt for the X509 certificate file and .prv for private key. Both of these files are .pem formatted." - }, - "certificateUrl": { - "type": "string", - "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8:

{
\"data\":\"\",
\"dataType\":\"pfx\",
\"password\":\"\"
}" - } - }, - "required": [ - "certificateStore", - "certificateUrl" - ], - "description": "Describes a single certificate reference in a Key Vault, and where the certificate should reside on the VM." - }, - "VaultSecretGroup": { - "type": "object", - "properties": { - "sourceVault": { - "oneOf": [ - { - "$ref": "#/definitions/SubResource" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource identifier." - }, - "vaultCertificates": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/VaultCertificate" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of key vault references in SourceVault which contain certificates." - } - }, - "required": [ - "sourceVault", - "vaultCertificates" - ], - "description": "Specifies set of certificates that should be installed onto the virtual machines." - }, - "VMSSExtension": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The name of the extension." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/VMSSExtensionProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the properties of a Virtual Machine Scale Set Extension." - } - }, - "required": [ - "name", - "properties" - ], - "description": "Specifies set of extensions that should be installed onto the virtual machines." - }, - "VMSSExtensionProperties": { - "type": "object", - "properties": { - "autoUpgradeMinorVersion": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." - }, - "forceUpdateTag": { - "type": "string", - "description": "If a value is provided and is different from the previous value, the extension handler will be forced to update even if the extension configuration has not changed." - }, - "protectedSettings": { - "type": "object", - "properties": {}, - "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." - }, - "provisionAfterExtensions": { - "oneOf": [ - { - "type": "array", - "items": { - "type": "string" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Collection of extension names after which this extension needs to be provisioned." - }, - "publisher": { - "type": "string", - "description": "The name of the extension handler publisher." - }, - "settings": { - "type": "object", - "properties": {}, - "description": "Json formatted public settings for the extension." - }, - "type": { - "type": "string", - "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." - }, - "typeHandlerVersion": { - "type": "string", - "description": "Specifies the version of the script handler." - } - }, - "required": [ - "publisher", - "type", - "typeHandlerVersion" - ], - "description": "Describes the properties of a Virtual Machine Scale Set Extension." - } - } -} \ No newline at end of file diff --git a/schemas/2020-03-01/Microsoft.ServiceFabric.json b/schemas/2020-03-01/Microsoft.ServiceFabric.json deleted file mode 100644 index b5daf8c6f5..0000000000 --- a/schemas/2020-03-01/Microsoft.ServiceFabric.json +++ /dev/null @@ -1,2331 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2020-03-01/Microsoft.ServiceFabric.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "Microsoft.ServiceFabric", - "description": "Microsoft ServiceFabric Resource Types", - "resourceDefinitions": { - "clusters": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-03-01" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the cluster resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the cluster resource properties." - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applicationTypes_childResource" - }, - { - "$ref": "#/definitions/clusters_applications_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters" - ] - } - }, - "required": [ - "apiVersion", - "location", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters" - }, - "clusters_applications": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-03-01" - ] - }, - "identity": { - "oneOf": [ - { - "$ref": "#/definitions/ManagedIdentity" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the managed identities for an Azure resource." - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application resource properties." - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applications_services_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applications" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications" - }, - "clusters_applications_services": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-03-01" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the service resource in the format of {applicationName}~{serviceName}." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applications/services" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" - }, - "clusters_applicationTypes": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-03-01" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application type name resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application type name properties" - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applicationTypes_versions_childResource" - } - ] - } - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" - }, - "clusters_applicationTypes_versions": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-03-01" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The application type version." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of the application type version resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - } - }, - "definitions": { - "ApplicationDeltaHealthPolicy": { - "type": "object", - "properties": { - "defaultServiceTypeDeltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" - }, - "serviceTypeDeltaHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific delta health policies for different service types.\nEach entry specifies as key the service type name and as value a ServiceTypeDeltaHealthPolicy used to evaluate the service health when upgrading the cluster.\nThe map is empty by default.\n" - } - }, - "description": "Defines a delta health policy used to evaluate the health of an application or one of its child entities when upgrading the cluster.\n" - }, - "ApplicationHealthPolicy": { - "type": "object", - "properties": { - "defaultServiceTypeHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceTypeHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "serviceTypeHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ServiceTypeHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "ApplicationMetricDescription": { - "type": "object", - "properties": { - "maximumCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum node capacity for Service Fabric application.\nThis is the maximum Load for an instance of this application on a single node. Even if the capacity of node is greater than this value, Service Fabric will limit the total load of services within the application on each node to this value.\nIf set to zero, capacity for this metric is unlimited on each node.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\nWhen updating existing application with application capacity, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\n" - }, - "name": { - "type": "string", - "description": "The name of the metric." - }, - "reservationCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node reservation capacity for Service Fabric application.\nThis is the amount of load which is reserved on nodes which have instances of this application.\nIf MinimumNodes is specified, then the product of these values will be the capacity reserved in the cluster for the application.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity; this value must be smaller than or equal to MaximumCapacity for each metric.\n" - }, - "totalApplicationCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The total metric capacity for Service Fabric application.\nThis is the total metric capacity for this application in the cluster. Service Fabric will try to limit the sum of loads of services within the application to this value.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and MaximumCapacity must always be smaller than or equal to this value.\n" - } - }, - "description": "Describes capacity information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.\n" - }, - "ApplicationResourceProperties": { - "type": "object", - "properties": { - "managedIdentities": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ApplicationUserAssignedIdentity" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of user assigned identities for the application, each mapped to a friendly name." - }, - "maximumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. By default, the value of this property is zero and it means that the services can be placed on any node." - }, - "metrics": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ApplicationMetricDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of application capacity metric description." - }, - "minimumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The minimum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. If this property is set to zero, no capacity will be reserved. The value of this property cannot be more than the value of the MaximumNodes property." - }, - "parameters": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of application parameters with overridden values from their default values specified in the application manifest." - }, - "removeApplicationCapacity": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Remove the current application capacity settings." - }, - "typeName": { - "type": "string", - "description": "The application type name as defined in the application manifest." - }, - "typeVersion": { - "type": "string", - "description": "The version of the application type as defined in the application manifest." - }, - "upgradePolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the policy for a monitored application upgrade." - } - }, - "description": "The application resource properties." - }, - "ApplicationTypeResourceProperties": { - "type": "object", - "properties": {}, - "description": "The application type name properties" - }, - "ApplicationTypeVersionResourceProperties": { - "type": "object", - "properties": { - "appPackageUrl": { - "type": "string", - "description": "The URL to the application package" - } - }, - "required": [ - "appPackageUrl" - ], - "description": "The properties of the application type version resource." - }, - "ApplicationTypeVersionsCleanupPolicy": { - "type": "object", - "properties": { - "maxUnusedVersionsToKeep": { - "oneOf": [ - { - "type": "integer", - "minimum": 0 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Number of unused versions per application type to keep." - } - }, - "required": [ - "maxUnusedVersionsToKeep" - ] - }, - "ApplicationUpgradePolicy": { - "type": "object", - "properties": { - "applicationHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmApplicationHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "recreateApplication": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Determines whether the application should be recreated on update. If value=true, the rest of the upgrade policy parameters are not allowed and it will result in availability loss." - }, - "rollingUpgradeMonitoringPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmRollingUpgradeMonitoringPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The policy used for monitoring the application upgrade" - }, - "upgradeMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Invalid", - "UnmonitoredAuto", - "UnmonitoredManual", - "Monitored" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." - } - }, - "description": "Describes the policy for a monitored application upgrade." - }, - "ApplicationUserAssignedIdentity": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The friendly name of user assigned identity." - }, - "principalId": { - "type": "string", - "description": "The principal id of user assigned identity." - } - }, - "required": [ - "name", - "principalId" - ] - }, - "ArmApplicationHealthPolicy": { - "type": "object", - "properties": { - "considerWarningAsError": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates whether warnings are treated with the same severity as errors." - }, - "defaultServiceTypeHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "maxPercentUnhealthyDeployedApplications": { - "oneOf": [ - { - "type": "integer", - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n" - }, - "serviceTypeHealthPolicyMap": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "ArmRollingUpgradeMonitoringPolicy": { - "type": "object", - "properties": { - "failureAction": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Rollback", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The activation Mode of the service package." - }, - "healthCheckRetryTimeout": { - "type": "string", - "default": "PT0H10M0S", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "healthCheckStableDuration": { - "type": "string", - "default": "PT0H2M0S", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "healthCheckWaitDuration": { - "type": "string", - "default": "0", - "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "upgradeDomainTimeout": { - "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "upgradeTimeout": { - "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - } - }, - "description": "The policy used for monitoring the application upgrade" - }, - "ArmServiceTypeHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyPartitionsPerService": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of partitions per service allowed to be unhealthy before your application is considered in error.\n" - }, - "maxPercentUnhealthyReplicasPerPartition": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of replicas per partition allowed to be unhealthy before your application is considered in error.\n" - }, - "maxPercentUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" - } - }, - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "AzureActiveDirectory": { - "type": "object", - "properties": { - "clientApplication": { - "type": "string", - "description": "Azure active directory client application id." - }, - "clusterApplication": { - "type": "string", - "description": "Azure active directory cluster application id." - }, - "tenantId": { - "type": "string", - "description": "Azure active directory tenant id." - } - }, - "description": "The settings to enable AAD authentication on the cluster." - }, - "CertificateDescription": { - "type": "object", - "properties": { - "thumbprint": { - "type": "string", - "description": "Thumbprint of the primary certificate." - }, - "thumbprintSecondary": { - "type": "string", - "description": "Thumbprint of the secondary certificate." - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "required": [ - "thumbprint" - ], - "description": "Describes the certificate details." - }, - "ClientCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the client certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using common name." - }, - "ClientCertificateThumbprint": { - "type": "object", - "properties": { - "certificateThumbprint": { - "type": "string", - "description": "The thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using thumbprint." - }, - "ClusterHealthPolicy": { - "type": "object", - "properties": { - "applicationHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" - }, - "maxPercentUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of applications that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy application, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy applications over the total number of application instances in the cluster, excluding applications of application types that are included in the ApplicationTypeHealthPolicyMap.\nThe computation rounds up to tolerate one failure on small numbers of applications. Default percentage is zero.\n" - }, - "maxPercentUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of nodes that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy node, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy nodes over the total number of nodes in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n\nIn large clusters, some nodes will always be down or out for repairs, so this percentage should be configured to tolerate that.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" - }, - "ClusterProperties": { - "type": "object", - "properties": { - "addOnFeatures": { - "oneOf": [ - { - "type": "array", - "items": { - "type": "string", - "enum": [ - "RepairManager", - "DnsService", - "BackupRestoreService", - "ResourceMonitorService" - ] - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of add-on features to enable in the cluster." - }, - "applicationTypeVersionsCleanupPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "azureActiveDirectory": { - "oneOf": [ - { - "$ref": "#/definitions/AzureActiveDirectory" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The settings to enable AAD authentication on the cluster." - }, - "certificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "certificateCommonNames": { - "oneOf": [ - { - "$ref": "#/definitions/ServerCertificateCommonNames" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "clientCertificateCommonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by common name that are allowed to manage the cluster." - }, - "clientCertificateThumbprints": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateThumbprint" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster." - }, - "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**." - }, - "diagnosticsStorageAccountConfig": { - "oneOf": [ - { - "$ref": "#/definitions/DiagnosticsStorageAccountConfig" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "eventStoreServiceEnabled": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the event store service is enabled." - }, - "fabricSettings": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsSectionDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of custom fabric settings to configure the cluster." - }, - "managementEndpoint": { - "type": "string", - "description": "The http management endpoint of the cluster." - }, - "nodeTypes": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/NodeTypeDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of node types in the cluster." - }, - "reliabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "None", - "Bronze", - "Silver", - "Gold", - "Platinum" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n." - }, - "reverseProxyCertificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "reverseProxyCertificateCommonNames": { - "oneOf": [ - { - "$ref": "#/definitions/ServerCertificateCommonNames" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "upgradeDescription": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "upgradeMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Automatic", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "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 as soon as it is 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." - }, - "vmImage": { - "type": "string", - "description": "The VM image VMSS has been configured with. Generic names such as Windows or Linux can be used." - } - }, - "required": [ - "managementEndpoint", - "nodeTypes" - ], - "description": "Describes the cluster resource properties." - }, - "clusters_applications_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-03-01" - ] - }, - "identity": { - "oneOf": [ - { - "$ref": "#/definitions/ManagedIdentity" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the managed identities for an Azure resource." - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "applications" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications" - }, - "clusters_applications_services_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-03-01" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the service resource in the format of {applicationName}~{serviceName}." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service resource properties." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "services" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" - }, - "clusters_applicationTypes_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-03-01" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application type name resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application type name properties" - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "applicationTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" - }, - "clusters_applicationTypes_versions_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-03-01" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The application type version." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of the application type version resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "versions" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - }, - "ClusterUpgradeDeltaHealthPolicy": { - "type": "object", - "properties": { - "applicationDeltaHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationDeltaHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific application delta health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationDeltaHealthPolicy used to evaluate the application health when upgrading the cluster.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" - }, - "maxPercentDeltaUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of applications health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the applications at the beginning of upgrade and the state of the applications at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits. System services are not included in this.\n" - }, - "maxPercentDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the nodes at the beginning of upgrade and the state of the nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" - }, - "maxPercentUpgradeDomainDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of upgrade domain nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the upgrade domain nodes at the beginning of upgrade and the state of the upgrade domain nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion for all completed upgrade domains to make sure the state of the upgrade domains is within tolerated limits.\n" - } - }, - "required": [ - "maxPercentDeltaUnhealthyApplications", - "maxPercentDeltaUnhealthyNodes", - "maxPercentUpgradeDomainDeltaUnhealthyNodes" - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "ClusterUpgradePolicy": { - "type": "object", - "properties": { - "deltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "healthCheckRetryTimeout": { - "type": "string", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckStableDuration": { - "type": "string", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckWaitDuration": { - "type": "string", - "description": "The length of time to wait after completing an upgrade domain before performing health checks. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" - }, - "upgradeDomainTimeout": { - "type": "string", - "description": "The amount of time each upgrade domain has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeTimeout": { - "type": "string", - "description": "The amount of time the overall upgrade has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - } - }, - "required": [ - "healthCheckRetryTimeout", - "healthCheckStableDuration", - "healthCheckWaitDuration", - "healthPolicy", - "upgradeDomainTimeout", - "upgradeReplicaSetCheckTimeout", - "upgradeTimeout" - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "DiagnosticsStorageAccountConfig": { - "type": "object", - "properties": { - "blobEndpoint": { - "type": "string", - "description": "The blob endpoint of the azure storage account." - }, - "protectedAccountKeyName": { - "type": "string", - "description": "The protected diagnostics storage key name." - }, - "protectedAccountKeyName2": { - "type": "string", - "description": "The protected diagnostics storage key name." - }, - "queueEndpoint": { - "type": "string", - "description": "The queue endpoint of the azure storage account." - }, - "storageAccountName": { - "type": "string", - "description": "The Azure storage account name." - }, - "tableEndpoint": { - "type": "string", - "description": "The table endpoint of the azure storage account." - } - }, - "required": [ - "blobEndpoint", - "protectedAccountKeyName", - "queueEndpoint", - "storageAccountName", - "tableEndpoint" - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "EndpointRangeDescription": { - "type": "object", - "properties": { - "endPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "End port of a range of ports" - }, - "startPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Starting port of a range of ports" - } - }, - "required": [ - "endPort", - "startPort" - ], - "description": "Port range details" - }, - "ManagedIdentity": { - "type": "object", - "properties": { - "type": { - "oneOf": [ - { - "type": "string", - "enum": [ - "SystemAssigned", - "UserAssigned", - "SystemAssigned, UserAssigned", - "None" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The type of managed identity for the resource." - }, - "userAssignedIdentities": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/UserAssignedIdentity" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\n" - } - }, - "description": "Describes the managed identities for an Azure resource." - }, - "NodeTypeDescription": { - "type": "object", - "properties": { - "applicationPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "capacities": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has." - }, - "clientConnectionEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The TCP cluster management endpoint port." - }, - "durabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Bronze", - "Silver", - "Gold" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The durability level of the node type. Learn about [DurabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - Bronze - No privileges. This is the default.\n - Silver - The infrastructure jobs can be paused for a duration of 10 minutes per UD.\n - Gold - The infrastructure jobs can be paused for a duration of 2 hours per UD. Gold durability can be enabled only on full node VM skus like D15_V2, G5 etc.\n." - }, - "ephemeralPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "httpGatewayEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The HTTP cluster management endpoint port." - }, - "isPrimary": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters." - }, - "name": { - "type": "string", - "description": "The name of the node type." - }, - "placementProperties": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run." - }, - "reverseProxyEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The endpoint used by reverse proxy." - }, - "vmInstanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": 1, - "maximum": 2147483647 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The number of nodes in the node type. This count should match the capacity property in the corresponding VirtualMachineScaleSet resource." - } - }, - "required": [ - "clientConnectionEndpointPort", - "httpGatewayEndpointPort", - "isPrimary", - "name", - "vmInstanceCount" - ], - "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." - }, - "PartitionSchemeDescription": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/SingletonPartitionSchemeDescription" - } - ], - "properties": {}, - "description": "Describes how the service is partitioned." - }, - "ServerCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the server certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the server certificate." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint" - ], - "description": "Describes the server certificate details using common name." - }, - "ServerCertificateCommonNames": { - "type": "object", - "properties": { - "commonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServerCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of server certificates referenced by common name that are used to secure the cluster." - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "ServiceCorrelationDescription": { - "type": "object", - "properties": { - "scheme": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Invalid", - "Affinity", - "AlignedAffinity", - "NonAlignedAffinity" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The ServiceCorrelationScheme which describes the relationship between this service and the service specified via ServiceName." - }, - "serviceName": { - "type": "string", - "description": "The full name of the service with 'fabric:' URI scheme." - } - }, - "required": [ - "scheme", - "serviceName" - ], - "description": "Creates a particular correlation between services." - }, - "ServiceLoadMetricDescription": { - "type": "object", - "properties": { - "defaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateless services. The default amount of load, as a number, that this service creates for this metric." - }, - "name": { - "type": "string", - "description": "The name of the metric. If the service chooses to report load during runtime, the load metric name should match the name that is specified in Name exactly. Note that metric names are case sensitive." - }, - "primaryDefaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Primary replica." - }, - "secondaryDefaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Secondary replica." - }, - "weight": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Zero", - "Low", - "Medium", - "High" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service load metric relative weight, compared to other metrics configured for this service, as a number." - } - }, - "required": [ - "name" - ], - "description": "Specifies a metric to load balance a service during runtime." - }, - "ServicePlacementPolicyDescription": { - "type": "object", - "properties": {}, - "description": "Describes the policy to be used for placement of a Service Fabric service." - }, - "ServiceResourceProperties": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/StatefulServiceProperties" - }, - { - "$ref": "#/definitions/StatelessServiceProperties" - } - ], - "properties": { - "correlationScheme": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceCorrelationDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A list that describes the correlation of the service with other services." - }, - "defaultMoveCost": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Zero", - "Low", - "Medium", - "High" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Specifies the move cost for the service." - }, - "partitionDescription": { - "oneOf": [ - { - "$ref": "#/definitions/PartitionSchemeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes how the service is partitioned." - }, - "placementConstraints": { - "type": "string", - "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." - }, - "serviceDnsName": { - "type": "string", - "description": "Dns name used for the service. If this is specified, then the service can be accessed via its DNS name instead of service name." - }, - "serviceLoadMetrics": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceLoadMetricDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." - }, - "servicePackageActivationMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "SharedProcess", - "ExclusiveProcess" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The activation Mode of the service package." - }, - "servicePlacementPolicies": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServicePlacementPolicyDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A list that describes the correlation of the service with other services." - }, - "serviceTypeName": { - "type": "string", - "description": "The name of the service type" - } - }, - "description": "The service resource properties." - }, - "ServiceTypeDeltaHealthPolicy": { - "type": "object", - "properties": { - "maxPercentDeltaUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of services health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the services at the beginning of upgrade and the state of the services at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" - } - }, - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" - }, - "ServiceTypeHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" - } - }, - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "SettingsParameterDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The parameter name of fabric setting." - }, - "value": { - "type": "string", - "description": "The parameter value of fabric setting." - } - }, - "required": [ - "name", - "value" - ], - "description": "Describes a parameter in fabric settings of the cluster." - }, - "SettingsSectionDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The section name of the fabric settings." - }, - "parameters": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsParameterDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The collection of parameters in the section." - } - }, - "required": [ - "name", - "parameters" - ], - "description": "Describes a section in the fabric settings of the cluster." - }, - "SingletonPartitionSchemeDescription": { - "type": "object", - "properties": { - "partitionScheme": { - "type": "string", - "enum": [ - "Singleton" - ] - } - }, - "required": [ - "partitionScheme" - ], - "description": "SingletonPartitionSchemeDescription" - }, - "StatefulServiceProperties": { - "type": "object", - "properties": { - "hasPersistedState": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." - }, - "minReplicaSetSize": { - "oneOf": [ - { - "type": "integer", - "minimum": 1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The minimum replica set size as a number." - }, - "quorumLossWaitDuration": { - "type": "string", - "format": "date-time", - "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "replicaRestartWaitDuration": { - "type": "string", - "format": "date-time", - "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "serviceKind": { - "type": "string", - "enum": [ - "Stateful" - ] - }, - "standByReplicaKeepDuration": { - "type": "string", - "format": "date-time", - "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "targetReplicaSetSize": { - "oneOf": [ - { - "type": "integer", - "minimum": 1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The target replica set size as a number." - } - }, - "required": [ - "serviceKind" - ], - "description": "The properties of a stateful service resource." - }, - "StatelessServiceProperties": { - "type": "object", - "properties": { - "instanceCloseDelayDuration": { - "type": "string", - "description": "Delay duration for RequestDrain feature to ensures that the endpoint advertised by the stateless instance is removed before the delay starts prior to closing the instance. This delay enables existing requests to drain gracefully before the instance actually goes down (https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-application-upgrade-advanced#avoid-connection-drops-during-stateless-service-planned-downtime-preview). It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "instanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": -1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The instance count." - }, - "serviceKind": { - "type": "string", - "enum": [ - "Stateless" - ] - } - }, - "required": [ - "serviceKind" - ], - "description": "The properties of a stateless service resource." - }, - "UserAssignedIdentity": { - "type": "object", - "properties": {} - } - } -} \ No newline at end of file diff --git a/schemas/2020-12-01-preview/Microsoft.ServiceFabric.json b/schemas/2020-12-01-preview/Microsoft.ServiceFabric.json deleted file mode 100644 index 0ef12d76c5..0000000000 --- a/schemas/2020-12-01-preview/Microsoft.ServiceFabric.json +++ /dev/null @@ -1,2488 +0,0 @@ -{ - "id": "https://schema.management.azure.com/schemas/2020-12-01-preview/Microsoft.ServiceFabric.json#", - "$schema": "http://json-schema.org/draft-04/schema#", - "title": "Microsoft.ServiceFabric", - "description": "Microsoft ServiceFabric Resource Types", - "resourceDefinitions": { - "clusters": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-12-01-preview" - ] - }, - "location": { - "type": "string", - "description": "Azure resource location." - }, - "name": { - "type": "string", - "description": "The name of the cluster resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the cluster resource properties." - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applicationTypes_childResource" - }, - { - "$ref": "#/definitions/clusters_applications_childResource" - } - ] - } - }, - "systemData": { - "oneOf": [ - { - "$ref": "#/definitions/SystemData" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Metadata pertaining to creation and last modification of the resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters" - ] - } - }, - "required": [ - "apiVersion", - "location", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters" - }, - "clusters_applications": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-12-01-preview" - ] - }, - "identity": { - "oneOf": [ - { - "$ref": "#/definitions/ManagedIdentity" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the managed identities for an Azure resource." - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application resource properties." - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applications_services_childResource" - } - ] - } - }, - "systemData": { - "oneOf": [ - { - "$ref": "#/definitions/SystemData" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Metadata pertaining to creation and last modification of the resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applications" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications" - }, - "clusters_applications_services": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-12-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the service resource in the format of {applicationName}~{serviceName}." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service resource properties." - }, - "systemData": { - "oneOf": [ - { - "$ref": "#/definitions/SystemData" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Metadata pertaining to creation and last modification of the resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applications/services" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" - }, - "clusters_applicationTypes": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-12-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application type name resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application type name properties" - }, - "resources": { - "type": "array", - "items": { - "oneOf": [ - { - "$ref": "#/definitions/clusters_applicationTypes_versions_childResource" - } - ] - } - }, - "systemData": { - "oneOf": [ - { - "$ref": "#/definitions/SystemData" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Metadata pertaining to creation and last modification of the resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" - }, - "clusters_applicationTypes_versions": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-12-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The application type version." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of the application type version resource." - }, - "systemData": { - "oneOf": [ - { - "$ref": "#/definitions/SystemData" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Metadata pertaining to creation and last modification of the resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - } - }, - "definitions": { - "ApplicationDeltaHealthPolicy": { - "type": "object", - "properties": { - "defaultServiceTypeDeltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" - }, - "serviceTypeDeltaHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific delta health policies for different service types.\nEach entry specifies as key the service type name and as value a ServiceTypeDeltaHealthPolicy used to evaluate the service health when upgrading the cluster.\nThe map is empty by default.\n" - } - }, - "description": "Defines a delta health policy used to evaluate the health of an application or one of its child entities when upgrading the cluster.\n" - }, - "ApplicationHealthPolicy": { - "type": "object", - "properties": { - "defaultServiceTypeHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceTypeHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "serviceTypeHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ServiceTypeHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "ApplicationMetricDescription": { - "type": "object", - "properties": { - "maximumCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum node capacity for Service Fabric application.\nThis is the maximum Load for an instance of this application on a single node. Even if the capacity of node is greater than this value, Service Fabric will limit the total load of services within the application on each node to this value.\nIf set to zero, capacity for this metric is unlimited on each node.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\nWhen updating existing application with application capacity, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\n" - }, - "name": { - "type": "string", - "description": "The name of the metric." - }, - "reservationCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node reservation capacity for Service Fabric application.\nThis is the amount of load which is reserved on nodes which have instances of this application.\nIf MinimumNodes is specified, then the product of these values will be the capacity reserved in the cluster for the application.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity; this value must be smaller than or equal to MaximumCapacity for each metric.\n" - }, - "totalApplicationCapacity": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The total metric capacity for Service Fabric application.\nThis is the total metric capacity for this application in the cluster. Service Fabric will try to limit the sum of loads of services within the application to this value.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and MaximumCapacity must always be smaller than or equal to this value.\n" - } - }, - "description": "Describes capacity information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.\n" - }, - "ApplicationResourceProperties": { - "type": "object", - "properties": { - "managedIdentities": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ApplicationUserAssignedIdentity" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of user assigned identities for the application, each mapped to a friendly name." - }, - "maximumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. By default, the value of this property is zero and it means that the services can be placed on any node." - }, - "metrics": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ApplicationMetricDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of application capacity metric description." - }, - "minimumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The minimum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. If this property is set to zero, no capacity will be reserved. The value of this property cannot be more than the value of the MaximumNodes property." - }, - "parameters": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of application parameters with overridden values from their default values specified in the application manifest." - }, - "removeApplicationCapacity": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Remove the current application capacity settings." - }, - "typeName": { - "type": "string", - "description": "The application type name as defined in the application manifest." - }, - "typeVersion": { - "type": "string", - "description": "The version of the application type as defined in the application manifest." - }, - "upgradePolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the policy for a monitored application upgrade." - } - }, - "description": "The application resource properties." - }, - "ApplicationTypeResourceProperties": { - "type": "object", - "properties": {}, - "description": "The application type name properties" - }, - "ApplicationTypeVersionResourceProperties": { - "type": "object", - "properties": { - "appPackageUrl": { - "type": "string", - "description": "The URL to the application package" - } - }, - "required": [ - "appPackageUrl" - ], - "description": "The properties of the application type version resource." - }, - "ApplicationTypeVersionsCleanupPolicy": { - "type": "object", - "properties": { - "maxUnusedVersionsToKeep": { - "oneOf": [ - { - "type": "integer", - "minimum": 0 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Number of unused versions per application type to keep." - } - }, - "required": [ - "maxUnusedVersionsToKeep" - ] - }, - "ApplicationUpgradePolicy": { - "type": "object", - "properties": { - "applicationHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmApplicationHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "recreateApplication": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Determines whether the application should be recreated on update. If value=true, the rest of the upgrade policy parameters are not allowed and it will result in availability loss." - }, - "rollingUpgradeMonitoringPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmRollingUpgradeMonitoringPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The policy used for monitoring the application upgrade" - }, - "upgradeMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Invalid", - "UnmonitoredAuto", - "UnmonitoredManual", - "Monitored" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The mode used to monitor health during a rolling upgrade. The values are UnmonitoredAuto, UnmonitoredManual, and Monitored." - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." - } - }, - "description": "Describes the policy for a monitored application upgrade." - }, - "ApplicationUserAssignedIdentity": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The friendly name of user assigned identity." - }, - "principalId": { - "type": "string", - "description": "The principal id of user assigned identity." - } - }, - "required": [ - "name", - "principalId" - ] - }, - "ArmApplicationHealthPolicy": { - "type": "object", - "properties": { - "considerWarningAsError": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates whether warnings are treated with the same severity as errors." - }, - "defaultServiceTypeHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "maxPercentUnhealthyDeployedApplications": { - "oneOf": [ - { - "type": "integer", - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n" - }, - "serviceTypeHealthPolicyMap": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "ArmRollingUpgradeMonitoringPolicy": { - "type": "object", - "properties": { - "failureAction": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Rollback", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The activation Mode of the service package." - }, - "healthCheckRetryTimeout": { - "type": "string", - "default": "PT0H10M0S", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "healthCheckStableDuration": { - "type": "string", - "default": "PT0H2M0S", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "healthCheckWaitDuration": { - "type": "string", - "default": "0", - "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "upgradeDomainTimeout": { - "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "upgradeTimeout": { - "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - } - }, - "description": "The policy used for monitoring the application upgrade" - }, - "ArmServiceTypeHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyPartitionsPerService": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of partitions per service allowed to be unhealthy before your application is considered in error.\n" - }, - "maxPercentUnhealthyReplicasPerPartition": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of replicas per partition allowed to be unhealthy before your application is considered in error.\n" - }, - "maxPercentUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" - } - }, - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "AzureActiveDirectory": { - "type": "object", - "properties": { - "clientApplication": { - "type": "string", - "description": "Azure active directory client application id." - }, - "clusterApplication": { - "type": "string", - "description": "Azure active directory cluster application id." - }, - "tenantId": { - "type": "string", - "description": "Azure active directory tenant id." - } - }, - "description": "The settings to enable AAD authentication on the cluster." - }, - "CertificateDescription": { - "type": "object", - "properties": { - "thumbprint": { - "type": "string", - "description": "Thumbprint of the primary certificate." - }, - "thumbprintSecondary": { - "type": "string", - "description": "Thumbprint of the secondary certificate." - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "required": [ - "thumbprint" - ], - "description": "Describes the certificate details." - }, - "ClientCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the client certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using common name." - }, - "ClientCertificateThumbprint": { - "type": "object", - "properties": { - "certificateThumbprint": { - "type": "string", - "description": "The thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using thumbprint." - }, - "ClusterHealthPolicy": { - "type": "object", - "properties": { - "applicationHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" - }, - "maxPercentUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of applications that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy application, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy applications over the total number of application instances in the cluster, excluding applications of application types that are included in the ApplicationTypeHealthPolicyMap.\nThe computation rounds up to tolerate one failure on small numbers of applications. Default percentage is zero.\n" - }, - "maxPercentUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of nodes that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy node, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy nodes over the total number of nodes in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n\nIn large clusters, some nodes will always be down or out for repairs, so this percentage should be configured to tolerate that.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" - }, - "ClusterProperties": { - "type": "object", - "properties": { - "addOnFeatures": { - "oneOf": [ - { - "type": "array", - "items": { - "type": "string", - "enum": [ - "RepairManager", - "DnsService", - "BackupRestoreService", - "ResourceMonitorService" - ] - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of add-on features to enable in the cluster." - }, - "applicationTypeVersionsCleanupPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "azureActiveDirectory": { - "oneOf": [ - { - "$ref": "#/definitions/AzureActiveDirectory" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The settings to enable AAD authentication on the cluster." - }, - "certificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "certificateCommonNames": { - "oneOf": [ - { - "$ref": "#/definitions/ServerCertificateCommonNames" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "clientCertificateCommonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by common name that are allowed to manage the cluster." - }, - "clientCertificateThumbprints": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateThumbprint" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster." - }, - "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**." - }, - "diagnosticsStorageAccountConfig": { - "oneOf": [ - { - "$ref": "#/definitions/DiagnosticsStorageAccountConfig" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "eventStoreServiceEnabled": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates if the event store service is enabled." - }, - "fabricSettings": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsSectionDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of custom fabric settings to configure the cluster." - }, - "managementEndpoint": { - "type": "string", - "description": "The http management endpoint of the cluster." - }, - "nodeTypes": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/NodeTypeDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of node types in the cluster." - }, - "reliabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "None", - "Bronze", - "Silver", - "Gold", - "Platinum" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The reliability level sets the replica set size of system services. Learn about [ReliabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - None - Run the System services with a target replica set count of 1. This should only be used for test clusters.\n - Bronze - Run the System services with a target replica set count of 3. This should only be used for test clusters.\n - Silver - Run the System services with a target replica set count of 5.\n - Gold - Run the System services with a target replica set count of 7.\n - Platinum - Run the System services with a target replica set count of 9.\n." - }, - "reverseProxyCertificate": { - "oneOf": [ - { - "$ref": "#/definitions/CertificateDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the certificate details." - }, - "reverseProxyCertificateCommonNames": { - "oneOf": [ - { - "$ref": "#/definitions/ServerCertificateCommonNames" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "upgradeDescription": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradePolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "upgradeMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Automatic", - "Manual" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "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 as soon as it is 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." - }, - "vmImage": { - "type": "string", - "description": "The VM image VMSS has been configured with. Generic names such as Windows or Linux can be used." - } - }, - "required": [ - "managementEndpoint", - "nodeTypes" - ], - "description": "Describes the cluster resource properties." - }, - "clusters_applications_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-12-01-preview" - ] - }, - "identity": { - "oneOf": [ - { - "$ref": "#/definitions/ManagedIdentity" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the managed identities for an Azure resource." - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application resource properties." - }, - "systemData": { - "oneOf": [ - { - "$ref": "#/definitions/SystemData" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Metadata pertaining to creation and last modification of the resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "applications" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications" - }, - "clusters_applications_services_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-12-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the service resource in the format of {applicationName}~{serviceName}." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServiceResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service resource properties." - }, - "systemData": { - "oneOf": [ - { - "$ref": "#/definitions/SystemData" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Metadata pertaining to creation and last modification of the resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "services" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" - }, - "clusters_applicationTypes_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-12-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The name of the application type name resource." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The application type name properties" - }, - "systemData": { - "oneOf": [ - { - "$ref": "#/definitions/SystemData" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Metadata pertaining to creation and last modification of the resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "applicationTypes" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" - }, - "clusters_applicationTypes_versions_childResource": { - "type": "object", - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2020-12-01-preview" - ] - }, - "location": { - "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." - }, - "name": { - "type": "string", - "description": "The application type version." - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ApplicationTypeVersionResourceProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of the application type version resource." - }, - "systemData": { - "oneOf": [ - { - "$ref": "#/definitions/SystemData" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Metadata pertaining to creation and last modification of the resource." - }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Azure resource tags." - }, - "type": { - "type": "string", - "enum": [ - "versions" - ] - } - }, - "required": [ - "apiVersion", - "name", - "properties", - "type" - ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - }, - "ClusterUpgradeDeltaHealthPolicy": { - "type": "object", - "properties": { - "applicationDeltaHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationDeltaHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific application delta health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationDeltaHealthPolicy used to evaluate the application health when upgrading the cluster.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" - }, - "maxPercentDeltaUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of applications health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the applications at the beginning of upgrade and the state of the applications at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits. System services are not included in this.\n" - }, - "maxPercentDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the nodes at the beginning of upgrade and the state of the nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" - }, - "maxPercentUpgradeDomainDeltaUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of upgrade domain nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the upgrade domain nodes at the beginning of upgrade and the state of the upgrade domain nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion for all completed upgrade domains to make sure the state of the upgrade domains is within tolerated limits.\n" - } - }, - "required": [ - "maxPercentDeltaUnhealthyApplications", - "maxPercentDeltaUnhealthyNodes", - "maxPercentUpgradeDomainDeltaUnhealthyNodes" - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "ClusterUpgradePolicy": { - "type": "object", - "properties": { - "deltaHealthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterUpgradeDeltaHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes the delta health policies for the cluster upgrade." - }, - "forceRestart": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "healthCheckRetryTimeout": { - "type": "string", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckStableDuration": { - "type": "string", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckWaitDuration": { - "type": "string", - "description": "The length of time to wait after completing an upgrade domain before performing health checks. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthPolicy": { - "oneOf": [ - { - "$ref": "#/definitions/ClusterHealthPolicy" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" - }, - "upgradeDomainTimeout": { - "type": "string", - "description": "The amount of time each upgrade domain has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeTimeout": { - "type": "string", - "description": "The amount of time the overall upgrade has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - } - }, - "required": [ - "healthCheckRetryTimeout", - "healthCheckStableDuration", - "healthCheckWaitDuration", - "healthPolicy", - "upgradeDomainTimeout", - "upgradeReplicaSetCheckTimeout", - "upgradeTimeout" - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "DiagnosticsStorageAccountConfig": { - "type": "object", - "properties": { - "blobEndpoint": { - "type": "string", - "description": "The blob endpoint of the azure storage account." - }, - "protectedAccountKeyName": { - "type": "string", - "description": "The protected diagnostics storage key name." - }, - "protectedAccountKeyName2": { - "type": "string", - "description": "The protected diagnostics storage key name." - }, - "queueEndpoint": { - "type": "string", - "description": "The queue endpoint of the azure storage account." - }, - "storageAccountName": { - "type": "string", - "description": "The Azure storage account name." - }, - "tableEndpoint": { - "type": "string", - "description": "The table endpoint of the azure storage account." - } - }, - "required": [ - "blobEndpoint", - "protectedAccountKeyName", - "queueEndpoint", - "storageAccountName", - "tableEndpoint" - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "EndpointRangeDescription": { - "type": "object", - "properties": { - "endPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "End port of a range of ports" - }, - "startPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Starting port of a range of ports" - } - }, - "required": [ - "endPort", - "startPort" - ], - "description": "Port range details" - }, - "ManagedIdentity": { - "type": "object", - "properties": { - "type": { - "oneOf": [ - { - "type": "string", - "enum": [ - "SystemAssigned", - "UserAssigned", - "SystemAssigned, UserAssigned", - "None" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The type of managed identity for the resource." - }, - "userAssignedIdentities": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/UserAssignedIdentity" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\n" - } - }, - "description": "Describes the managed identities for an Azure resource." - }, - "NodeTypeDescription": { - "type": "object", - "properties": { - "applicationPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "capacities": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has." - }, - "clientConnectionEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The TCP cluster management endpoint port." - }, - "durabilityLevel": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Bronze", - "Silver", - "Gold" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The durability level of the node type. Learn about [DurabilityLevel](https://docs.microsoft.com/azure/service-fabric/service-fabric-cluster-capacity).\n\n - Bronze - No privileges. This is the default.\n - Silver - The infrastructure jobs can be paused for a duration of 10 minutes per UD.\n - Gold - The infrastructure jobs can be paused for a duration of 2 hours per UD. Gold durability can be enabled only on full node VM skus like D15_V2, G5 etc.\n." - }, - "ephemeralPorts": { - "oneOf": [ - { - "$ref": "#/definitions/EndpointRangeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Port range details" - }, - "httpGatewayEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The HTTP cluster management endpoint port." - }, - "isPrimary": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters." - }, - "name": { - "type": "string", - "description": "The name of the node type." - }, - "placementProperties": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run." - }, - "reverseProxyEndpointPort": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The endpoint used by reverse proxy." - }, - "vmInstanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": 1, - "maximum": 2147483647 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The number of nodes in the node type. This count should match the capacity property in the corresponding VirtualMachineScaleSet resource." - } - }, - "required": [ - "clientConnectionEndpointPort", - "httpGatewayEndpointPort", - "isPrimary", - "name", - "vmInstanceCount" - ], - "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." - }, - "PartitionSchemeDescription": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/SingletonPartitionSchemeDescription" - } - ], - "properties": {}, - "description": "Describes how the service is partitioned." - }, - "ServerCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the server certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the server certificate." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint" - ], - "description": "Describes the server certificate details using common name." - }, - "ServerCertificateCommonNames": { - "type": "object", - "properties": { - "commonNames": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServerCertificateCommonName" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of server certificates referenced by common name that are used to secure the cluster." - }, - "x509StoreName": { - "oneOf": [ - { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The local certificate store location." - } - }, - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." - }, - "ServiceCorrelationDescription": { - "type": "object", - "properties": { - "scheme": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Invalid", - "Affinity", - "AlignedAffinity", - "NonAlignedAffinity" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The ServiceCorrelationScheme which describes the relationship between this service and the service specified via ServiceName." - }, - "serviceName": { - "type": "string", - "description": "The full name of the service with 'fabric:' URI scheme." - } - }, - "required": [ - "scheme", - "serviceName" - ], - "description": "Creates a particular correlation between services." - }, - "ServiceLoadMetricDescription": { - "type": "object", - "properties": { - "defaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateless services. The default amount of load, as a number, that this service creates for this metric." - }, - "name": { - "type": "string", - "description": "The name of the metric. If the service chooses to report load during runtime, the load metric name should match the name that is specified in Name exactly. Note that metric names are case sensitive." - }, - "primaryDefaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Primary replica." - }, - "secondaryDefaultLoad": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Used only for Stateful services. The default amount of load, as a number, that this service creates for this metric when it is a Secondary replica." - }, - "weight": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Zero", - "Low", - "Medium", - "High" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service load metric relative weight, compared to other metrics configured for this service, as a number." - } - }, - "required": [ - "name" - ], - "description": "Specifies a metric to load balance a service during runtime." - }, - "ServicePlacementPolicyDescription": { - "type": "object", - "properties": {}, - "description": "Describes the policy to be used for placement of a Service Fabric service." - }, - "ServiceResourceProperties": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/StatefulServiceProperties" - }, - { - "$ref": "#/definitions/StatelessServiceProperties" - } - ], - "properties": { - "correlationScheme": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceCorrelationDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A list that describes the correlation of the service with other services." - }, - "defaultMoveCost": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Zero", - "Low", - "Medium", - "High" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Specifies the move cost for the service." - }, - "partitionDescription": { - "oneOf": [ - { - "$ref": "#/definitions/PartitionSchemeDescription" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes how the service is partitioned." - }, - "placementConstraints": { - "type": "string", - "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." - }, - "serviceDnsName": { - "type": "string", - "description": "Dns name used for the service. If this is specified, then the service can be accessed via its DNS name instead of service name." - }, - "serviceLoadMetrics": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServiceLoadMetricDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." - }, - "servicePackageActivationMode": { - "oneOf": [ - { - "type": "string", - "enum": [ - "SharedProcess", - "ExclusiveProcess" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The activation Mode of the service package." - }, - "servicePlacementPolicies": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ServicePlacementPolicyDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A list that describes the correlation of the service with other services." - }, - "serviceTypeName": { - "type": "string", - "description": "The name of the service type" - } - }, - "description": "The service resource properties." - }, - "ServiceTypeDeltaHealthPolicy": { - "type": "object", - "properties": { - "maxPercentDeltaUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of services health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the services at the beginning of upgrade and the state of the services at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" - } - }, - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" - }, - "ServiceTypeHealthPolicy": { - "type": "object", - "properties": { - "maxPercentUnhealthyServices": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" - } - }, - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "SettingsParameterDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The parameter name of fabric setting." - }, - "value": { - "type": "string", - "description": "The parameter value of fabric setting." - } - }, - "required": [ - "name", - "value" - ], - "description": "Describes a parameter in fabric settings of the cluster." - }, - "SettingsSectionDescription": { - "type": "object", - "properties": { - "name": { - "type": "string", - "description": "The section name of the fabric settings." - }, - "parameters": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsParameterDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The collection of parameters in the section." - } - }, - "required": [ - "name", - "parameters" - ], - "description": "Describes a section in the fabric settings of the cluster." - }, - "SingletonPartitionSchemeDescription": { - "type": "object", - "properties": { - "partitionScheme": { - "type": "string", - "enum": [ - "Singleton" - ] - } - }, - "required": [ - "partitionScheme" - ], - "description": "SingletonPartitionSchemeDescription" - }, - "StatefulServiceProperties": { - "type": "object", - "properties": { - "hasPersistedState": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "A flag indicating whether this is a persistent service which stores states on the local disk. If it is then the value of this property is true, if not it is false." - }, - "minReplicaSetSize": { - "oneOf": [ - { - "type": "integer", - "minimum": 1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The minimum replica set size as a number." - }, - "quorumLossWaitDuration": { - "type": "string", - "format": "date-time", - "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "replicaRestartWaitDuration": { - "type": "string", - "format": "date-time", - "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "serviceKind": { - "type": "string", - "enum": [ - "Stateful" - ] - }, - "standByReplicaKeepDuration": { - "type": "string", - "format": "date-time", - "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." - }, - "targetReplicaSetSize": { - "oneOf": [ - { - "type": "integer", - "minimum": 1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The target replica set size as a number." - } - }, - "required": [ - "serviceKind" - ], - "description": "The properties of a stateful service resource." - }, - "StatelessServiceProperties": { - "type": "object", - "properties": { - "instanceCloseDelayDuration": { - "type": "string", - "description": "Delay duration for RequestDrain feature to ensures that the endpoint advertised by the stateless instance is removed before the delay starts prior to closing the instance. This delay enables existing requests to drain gracefully before the instance actually goes down (https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-application-upgrade-advanced#avoid-connection-drops-during-stateless-service-planned-downtime-preview). It is represented in ISO 8601 format (hh:mm:ss.s)." - }, - "instanceCount": { - "oneOf": [ - { - "type": "integer", - "minimum": -1 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The instance count." - }, - "serviceKind": { - "type": "string", - "enum": [ - "Stateless" - ] - } - }, - "required": [ - "serviceKind" - ], - "description": "The properties of a stateless service resource." - }, - "SystemData": { - "type": "object", - "properties": { - "createdAt": { - "type": "string", - "format": "date-time", - "description": "The timestamp of resource creation (UTC)." - }, - "createdBy": { - "type": "string", - "description": "The identity that created the resource." - }, - "createdByType": { - "oneOf": [ - { - "type": "string", - "enum": [ - "User", - "Application", - "ManagedIdentity", - "Key" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The type of identity that created the resource." - }, - "lastModifiedAt": { - "type": "string", - "format": "date-time", - "description": "The type of identity that last modified the resource." - }, - "lastModifiedBy": { - "type": "string", - "description": "The identity that last modified the resource." - }, - "lastModifiedByType": { - "oneOf": [ - { - "type": "string", - "enum": [ - "User", - "Application", - "ManagedIdentity", - "Key" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The type of identity that last modified the resource." - } - }, - "description": "Metadata pertaining to creation and last modification of the resource." - }, - "UserAssignedIdentity": { - "type": "object", - "properties": {} - } - } -} \ No newline at end of file diff --git a/schemas/2021-06-01/Microsoft.ServiceFabric.json b/schemas/2023-03-01-preview/Microsoft.ServiceFabric.json similarity index 57% rename from schemas/2021-06-01/Microsoft.ServiceFabric.json rename to schemas/2023-03-01-preview/Microsoft.ServiceFabric.json index b0e2b0071c..569462d520 100644 --- a/schemas/2021-06-01/Microsoft.ServiceFabric.json +++ b/schemas/2023-03-01-preview/Microsoft.ServiceFabric.json @@ -1,16 +1,16 @@ { - "id": "https://schema.management.azure.com/schemas/2021-06-01/Microsoft.ServiceFabric.json#", + "id": "https://schema.management.azure.com/schemas/2023-03-01-preview/Microsoft.ServiceFabric.json#", "$schema": "http://json-schema.org/draft-04/schema#", "title": "Microsoft.ServiceFabric", "description": "Microsoft ServiceFabric Resource Types", "resourceDefinitions": { - "clusters": { + "managedClusters": { "type": "object", "properties": { "apiVersion": { "type": "string", "enum": [ - "2021-06-01" + "2023-03-01-preview" ] }, "location": { @@ -24,27 +24,41 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ClusterProperties" + "$ref": "#/definitions/ManagedClusterProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Describes the cluster resource properties." + "description": "Describes the managed cluster resource properties." }, "resources": { "type": "array", "items": { "oneOf": [ { - "$ref": "#/definitions/clusters_applicationTypes_childResource" + "$ref": "#/definitions/managedclusters_applicationTypes_childResource" }, { - "$ref": "#/definitions/clusters_applications_childResource" + "$ref": "#/definitions/managedclusters_applications_childResource" + }, + { + "$ref": "#/definitions/managedClusters_nodeTypes_childResource" } ] } }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/Sku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Service Fabric managed cluster Sku definition" + }, "systemData": { "oneOf": [ { @@ -74,7 +88,7 @@ "type": { "type": "string", "enum": [ - "Microsoft.ServiceFabric/clusters" + "Microsoft.ServiceFabric/managedClusters" ] } }, @@ -83,17 +97,18 @@ "location", "name", "properties", + "sku", "type" ], - "description": "Microsoft.ServiceFabric/clusters" + "description": "Microsoft.ServiceFabric/managedClusters" }, - "clusters_applications": { + "managedclusters_applications": { "type": "object", "properties": { "apiVersion": { "type": "string", "enum": [ - "2021-06-01" + "2023-03-01-preview" ] }, "identity": { @@ -109,7 +124,7 @@ }, "location": { "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." + "description": "Resource location depends on the parent resource." }, "name": { "type": "string", @@ -131,7 +146,7 @@ "items": { "oneOf": [ { - "$ref": "#/definitions/clusters_applications_services_childResource" + "$ref": "#/definitions/managedclusters_applications_services_childResource" } ] } @@ -165,7 +180,7 @@ "type": { "type": "string", "enum": [ - "Microsoft.ServiceFabric/clusters/applications" + "Microsoft.ServiceFabric/managedclusters/applications" ] } }, @@ -175,20 +190,20 @@ "properties", "type" ], - "description": "Microsoft.ServiceFabric/clusters/applications" + "description": "Microsoft.ServiceFabric/managedclusters/applications" }, - "clusters_applications_services": { + "managedclusters_applications_services": { "type": "object", "properties": { "apiVersion": { "type": "string", "enum": [ - "2021-06-01" + "2023-03-01-preview" ] }, "location": { "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." + "description": "Resource location depends on the parent resource." }, "name": { "type": "string", @@ -234,7 +249,7 @@ "type": { "type": "string", "enum": [ - "Microsoft.ServiceFabric/clusters/applications/services" + "Microsoft.ServiceFabric/managedclusters/applications/services" ] } }, @@ -244,20 +259,20 @@ "properties", "type" ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" + "description": "Microsoft.ServiceFabric/managedclusters/applications/services" }, - "clusters_applicationTypes": { + "managedclusters_applicationTypes": { "type": "object", "properties": { "apiVersion": { "type": "string", "enum": [ - "2021-06-01" + "2023-03-01-preview" ] }, "location": { "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." + "description": "Resource location depends on the parent resource." }, "name": { "type": "string", @@ -279,7 +294,7 @@ "items": { "oneOf": [ { - "$ref": "#/definitions/clusters_applicationTypes_versions_childResource" + "$ref": "#/definitions/managedclusters_applicationTypes_versions_childResource" } ] } @@ -313,7 +328,7 @@ "type": { "type": "string", "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes" + "Microsoft.ServiceFabric/managedclusters/applicationTypes" ] } }, @@ -323,20 +338,20 @@ "properties", "type" ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" + "description": "Microsoft.ServiceFabric/managedclusters/applicationTypes" }, - "clusters_applicationTypes_versions": { + "managedclusters_applicationTypes_versions": { "type": "object", "properties": { "apiVersion": { "type": "string", "enum": [ - "2021-06-01" + "2023-03-01-preview" ] }, "location": { "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." + "description": "Resource location depends on the parent resource." }, "name": { "type": "string", @@ -382,7 +397,7 @@ "type": { "type": "string", "enum": [ - "Microsoft.ServiceFabric/clusters/applicationTypes/versions" + "Microsoft.ServiceFabric/managedclusters/applicationTypes/versions" ] } }, @@ -392,62 +407,60 @@ "properties", "type" ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" - } - }, - "definitions": { - "ApplicationDeltaHealthPolicy": { + "description": "Microsoft.ServiceFabric/managedclusters/applicationTypes/versions" + }, + "managedClusters_nodeTypes": { "type": "object", "properties": { - "defaultServiceTypeDeltaHealthPolicy": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-03-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the node type." + }, + "properties": { "oneOf": [ { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" + "$ref": "#/definitions/NodeTypeProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" + "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." }, - "serviceTypeDeltaHealthPolicies": { + "sku": { "oneOf": [ { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ServiceTypeDeltaHealthPolicy" - }, - "properties": {} + "$ref": "#/definitions/NodeTypeSku" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Defines a map that contains specific delta health policies for different service types.\nEach entry specifies as key the service type name and as value a ServiceTypeDeltaHealthPolicy used to evaluate the service health when upgrading the cluster.\nThe map is empty by default.\n" - } - }, - "description": "Defines a delta health policy used to evaluate the health of an application or one of its child entities when upgrading the cluster.\n" - }, - "ApplicationHealthPolicy": { - "type": "object", - "properties": { - "defaultServiceTypeHealthPolicy": { + "description": "Describes a node type sku." + }, + "systemData": { "oneOf": [ { - "$ref": "#/definitions/ServiceTypeHealthPolicy" + "$ref": "#/definitions/SystemData" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" + "description": "Metadata pertaining to creation and last modification of the resource." }, - "serviceTypeHealthPolicies": { + "tags": { "oneOf": [ { "type": "object", "additionalProperties": { - "$ref": "#/definitions/ServiceTypeHealthPolicy" + "type": "string" }, "properties": {} }, @@ -455,30 +468,51 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" + "description": "Azure resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ServiceFabric/managedClusters/nodeTypes" + ] } }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" - }, - "ApplicationMetricDescription": { + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedClusters/nodeTypes" + } + }, + "definitions": { + "ApplicationHealthPolicy": { "type": "object", "properties": { - "maximumCapacity": { + "considerWarningAsError": { "oneOf": [ { - "type": "integer" + "type": "boolean" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The maximum node capacity for Service Fabric application.\nThis is the maximum Load for an instance of this application on a single node. Even if the capacity of node is greater than this value, Service Fabric will limit the total load of services within the application on each node to this value.\nIf set to zero, capacity for this metric is unlimited on each node.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\nWhen updating existing application with application capacity, the product of MaximumNodes and this value must always be smaller than or equal to TotalApplicationCapacity.\n" + "description": "Indicates whether warnings are treated with the same severity as errors." }, - "name": { - "type": "string", - "description": "The name of the metric." + "defaultServiceTypeHealthPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/ServiceTypeHealthPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" }, - "reservationCapacity": { + "maxPercentUnhealthyDeployedApplications": { "oneOf": [ { "type": "integer" @@ -487,21 +521,29 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The node reservation capacity for Service Fabric application.\nThis is the amount of load which is reserved on nodes which have instances of this application.\nIf MinimumNodes is specified, then the product of these values will be the capacity reserved in the cluster for the application.\nIf set to zero, no capacity is reserved for this metric.\nWhen setting application capacity or when updating application capacity; this value must be smaller than or equal to MaximumCapacity for each metric.\n" + "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n" }, - "totalApplicationCapacity": { + "serviceTypeHealthPolicyMap": { "oneOf": [ { - "type": "integer" + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ServiceTypeHealthPolicy" + }, + "properties": {} }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The total metric capacity for Service Fabric application.\nThis is the total metric capacity for this application in the cluster. Service Fabric will try to limit the sum of loads of services within the application to this value.\nWhen creating a new application with application capacity defined, the product of MaximumNodes and MaximumCapacity must always be smaller than or equal to this value.\n" + "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" } }, - "description": "Describes capacity information for a custom resource balancing metric. This can be used to limit the total consumption of this metric by the services of this application.\n" + "required": [ + "considerWarningAsError", + "maxPercentUnhealthyDeployedApplications" + ], + "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" }, "ApplicationResourceProperties": { "type": "object", @@ -520,45 +562,6 @@ ], "description": "List of user assigned identities for the application, each mapped to a friendly name." }, - "maximumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. By default, the value of this property is zero and it means that the services can be placed on any node." - }, - "metrics": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/ApplicationMetricDescription" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of application capacity metric description." - }, - "minimumNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The minimum number of nodes where Service Fabric will reserve capacity for this application. Note that this does not mean that the services of this application will be placed on all of those nodes. If this property is set to zero, no capacity will be reserved. The value of this property cannot be more than the value of the MaximumNodes property." - }, "parameters": { "oneOf": [ { @@ -574,25 +577,6 @@ ], "description": "List of application parameters with overridden values from their default values specified in the application manifest." }, - "removeApplicationCapacity": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Remove the current application capacity settings." - }, - "typeName": { - "type": "string", - "description": "The application type name as defined in the application manifest." - }, - "typeVersion": { - "type": "string", - "description": "The version of the application type as defined in the application manifest." - }, "upgradePolicy": { "oneOf": [ { @@ -603,6 +587,10 @@ } ], "description": "Describes the policy for a monitored application upgrade." + }, + "version": { + "type": "string", + "description": "The version of the application type as defined in the application manifest.\nThis name must be the full Arm Resource ID for the referenced application type version.\n" } }, "description": "The application resource properties." @@ -643,7 +631,8 @@ }, "required": [ "maxUnusedVersionsToKeep" - ] + ], + "description": "The policy used to clean up unused versions. When the policy is not specified explicitly, the default unused application versions to keep will be 3." }, "ApplicationUpgradePolicy": { "type": "object", @@ -651,7 +640,7 @@ "applicationHealthPolicy": { "oneOf": [ { - "$ref": "#/definitions/ArmApplicationHealthPolicy" + "$ref": "#/definitions/ApplicationHealthPolicy" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -671,6 +660,17 @@ ], "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." }, + "instanceCloseDelayDuration": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Duration in seconds, to wait before a stateless instance is closed, to allow the active requests to drain gracefully. This would be effective when the instance is closing during the application/cluster upgrade, only for those instances which have a non-zero delay duration configured in the service description." + }, "recreateApplication": { "oneOf": [ { @@ -680,12 +680,12 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Determines whether the application should be recreated on update. If value=true, the rest of the upgrade policy parameters are not allowed and it will result in availability loss." + "description": "Determines whether the application should be recreated on update. If value=true, the rest of the upgrade policy parameters are not allowed." }, "rollingUpgradeMonitoringPolicy": { "oneOf": [ { - "$ref": "#/definitions/ArmRollingUpgradeMonitoringPolicy" + "$ref": "#/definitions/RollingUpgradeMonitoringPolicy" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -698,10 +698,8 @@ { "type": "string", "enum": [ - "Invalid", - "UnmonitoredAuto", - "UnmonitoredManual", - "Monitored" + "Monitored", + "UnmonitoredAuto" ] }, { @@ -710,7 +708,14 @@ ] }, "upgradeReplicaSetCheckTimeout": { - "type": "string", + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. Valid values are between 0 and 42949672925 inclusive. (unsigned 32-bit integer)." } }, @@ -733,326 +738,240 @@ "principalId" ] }, - "ArmApplicationHealthPolicy": { + "AzureActiveDirectory": { + "type": "object", + "properties": { + "clientApplication": { + "type": "string", + "description": "Azure active directory client application id." + }, + "clusterApplication": { + "type": "string", + "description": "Azure active directory cluster application id." + }, + "tenantId": { + "type": "string", + "description": "Azure active directory tenant id." + } + }, + "description": "The settings to enable AAD authentication on the cluster." + }, + "ClientCertificate": { "type": "object", "properties": { - "considerWarningAsError": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Indicates whether warnings are treated with the same severity as errors." + "commonName": { + "type": "string", + "description": "Certificate common name." }, - "defaultServiceTypeHealthPolicy": { + "isAdmin": { "oneOf": [ { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" + "type": "boolean" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" + "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." }, - "maxPercentUnhealthyDeployedApplications": { + "issuerThumbprint": { + "type": "string", + "description": "Issuer thumbprint for the certificate. Only used together with CommonName." + }, + "thumbprint": { + "type": "string", + "description": "Certificate thumbprint." + } + }, + "required": [ + "isAdmin" + ], + "description": "Client certificate definition." + }, + "EndpointRangeDescription": { + "type": "object", + "properties": { + "endPort": { "oneOf": [ { - "type": "integer", - "default": "0" + "type": "integer" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The maximum allowed percentage of unhealthy deployed applications. Allowed values are Byte values from zero to 100.\nThe percentage represents the maximum tolerated percentage of deployed applications that can be unhealthy before the application is considered in error.\nThis is calculated by dividing the number of unhealthy deployed applications over the number of nodes where the application is currently deployed on in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n" + "description": "End port of a range of ports" }, - "serviceTypeHealthPolicyMap": { + "startPort": { "oneOf": [ { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ArmServiceTypeHealthPolicy" - }, - "properties": {} + "type": "integer" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Defines a ServiceTypeHealthPolicy per service type name.\n\nThe entries in the map replace the default service type health policy for each specified service type.\nFor example, in an application that contains both a stateless gateway service type and a stateful engine service type, the health policies for the stateless and stateful services can be configured differently.\nWith policy per service type, there's more granular control of the health of the service.\n\nIf no policy is specified for a service type name, the DefaultServiceTypeHealthPolicy is used for evaluation.\n" + "description": "Starting port of a range of ports" } }, - "description": "Defines a health policy used to evaluate the health of an application or one of its children entities.\n" + "required": [ + "endPort", + "startPort" + ], + "description": "Port range details" }, - "ArmRollingUpgradeMonitoringPolicy": { + "FrontendConfiguration": { "type": "object", "properties": { - "failureAction": { + "applicationGatewayBackendAddressPoolId": { + "type": "string", + "format": "arm-id", + "description": "The resource Id of application gateway backend address pool. The format of the resource Id is '/subscriptions//resourceGroups//providers/Microsoft.Network/applicationGateways//backendAddressPools/'." + }, + "ipAddressType": { "oneOf": [ { "type": "string", "enum": [ - "Rollback", - "Manual" + "IPv4", + "IPv6" ] }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The activation Mode of the service package." - }, - "healthCheckRetryTimeout": { - "type": "string", - "default": "PT0H10M0S", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + "description": "The IP address type of this frontend configuration. If omitted the default value is IPv4." }, - "healthCheckStableDuration": { + "loadBalancerBackendAddressPoolId": { "type": "string", - "default": "PT0H2M0S", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + "description": "The resource Id of the Load Balancer backend address pool that the VM instances of the node type are associated with. The format of the resource Id is '/subscriptions//resourceGroups//providers/Microsoft.Network/loadBalancers//backendAddressPools/'." }, - "healthCheckWaitDuration": { + "loadBalancerInboundNatPoolId": { "type": "string", - "default": "0", - "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." - }, - "upgradeDomainTimeout": { + "description": "The resource Id of the Load Balancer inbound NAT pool that the VM instances of the node type are associated with. The format of the resource Id is '/subscriptions//resourceGroups//providers/Microsoft.Network/loadBalancers//inboundNatPools/'." + } + }, + "description": "Describes the frontend configurations for the node type." + }, + "IPTag": { + "type": "object", + "properties": { + "ipTagType": { "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + "description": "The IP tag type." }, - "upgradeTimeout": { + "tag": { "type": "string", - "default": "P10675199DT02H48M05.4775807S", - "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. It is first interpreted as a string representing an ISO 8601 duration. If that fails, then it is interpreted as a number representing the total number of milliseconds." + "description": "The value of the IP tag." } }, - "description": "The policy used for monitoring the application upgrade" + "required": [ + "ipTagType", + "tag" + ], + "description": "IPTag associated with the object." }, - "ArmServiceTypeHealthPolicy": { + "LoadBalancingRule": { "type": "object", "properties": { - "maxPercentUnhealthyPartitionsPerService": { + "backendPort": { "oneOf": [ { "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" + "minimum": 1, + "maximum": 65534 }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The maximum percentage of partitions per service allowed to be unhealthy before your application is considered in error.\n" + "description": "The port used for internal connections on the endpoint. Acceptable values are between 1 and 65535." }, - "maxPercentUnhealthyReplicasPerPartition": { + "frontendPort": { "oneOf": [ { "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" + "minimum": 1, + "maximum": 65534 }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The maximum percentage of replicas per partition allowed to be unhealthy before your application is considered in error.\n" + "description": "The port for the external endpoint. Port numbers for each rule must be unique within the Load Balancer. Acceptable values are between 1 and 65534." }, - "maxPercentUnhealthyServices": { - "oneOf": [ + "loadDistribution": { + "type": "string", + "description": "The load distribution policy for this rule." + }, + "probePort": { + "oneOf": [ { "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" + "minimum": 1, + "maximum": 65534 }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" - } - }, - "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" - }, - "AzureActiveDirectory": { - "type": "object", - "properties": { - "clientApplication": { - "type": "string", - "description": "Azure active directory client application id." - }, - "clusterApplication": { - "type": "string", - "description": "Azure active directory cluster application id." - }, - "tenantId": { - "type": "string", - "description": "Azure active directory tenant id." - } - }, - "description": "The settings to enable AAD authentication on the cluster." - }, - "CertificateDescription": { - "type": "object", - "properties": { - "thumbprint": { - "type": "string", - "description": "Thumbprint of the primary certificate." - }, - "thumbprintSecondary": { - "type": "string", - "description": "Thumbprint of the secondary certificate." + "description": "The prob port used by the load balancing rule. Acceptable values are between 1 and 65535." }, - "x509StoreName": { + "probeProtocol": { "oneOf": [ { "type": "string", "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" + "tcp", + "http", + "https" ] }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] - } - }, - "required": [ - "thumbprint" - ], - "description": "Describes the certificate details." - }, - "ClientCertificateCommonName": { - "type": "object", - "properties": { - "certificateCommonName": { - "type": "string", - "description": "The common name of the client certificate." - }, - "certificateIssuerThumbprint": { - "type": "string", - "description": "The issuer thumbprint of the client certificate." - }, - "isAdmin": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." - } - }, - "required": [ - "certificateCommonName", - "certificateIssuerThumbprint", - "isAdmin" - ], - "description": "Describes the client certificate details using common name." - }, - "ClientCertificateThumbprint": { - "type": "object", - "properties": { - "certificateThumbprint": { + "description": "the reference to the load balancer probe used by the load balancing rule." + }, + "probeRequestPath": { "type": "string", - "description": "The thumbprint of the client certificate." + "description": "The probe request path. Only supported for HTTP/HTTPS probes." }, - "isAdmin": { + "protocol": { "oneOf": [ { - "type": "boolean" + "type": "string", + "enum": [ + "tcp", + "udp" + ] }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." + "description": "The reference to the transport protocol used by the load balancing rule." } }, "required": [ - "certificateThumbprint", - "isAdmin" + "backendPort", + "frontendPort", + "probeProtocol", + "protocol" ], - "description": "Describes the client certificate details using thumbprint." - }, - "ClusterHealthPolicy": { - "type": "object", - "properties": { - "applicationHealthPolicies": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationHealthPolicy" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines a map that contains specific application health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationHealthPolicy used to evaluate the application health.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" - }, - "maxPercentUnhealthyApplications": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy applications before reporting an error. For example, to allow 10% of applications to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of applications that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy application, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy applications over the total number of application instances in the cluster, excluding applications of application types that are included in the ApplicationTypeHealthPolicyMap.\nThe computation rounds up to tolerate one failure on small numbers of applications. Default percentage is zero.\n" - }, - "maxPercentUnhealthyNodes": { - "oneOf": [ - { - "type": "integer", - "minimum": 0, - "maximum": 100, - "default": "0" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The maximum allowed percentage of unhealthy nodes before reporting an error. For example, to allow 10% of nodes to be unhealthy, this value would be 10.\n\nThe percentage represents the maximum tolerated percentage of nodes that can be unhealthy before the cluster is considered in error.\nIf the percentage is respected but there is at least one unhealthy node, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy nodes over the total number of nodes in the cluster.\nThe computation rounds up to tolerate one failure on small numbers of nodes. Default percentage is zero.\n\nIn large clusters, some nodes will always be down or out for repairs, so this percentage should be configured to tolerate that.\n" - } - }, - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" + "description": "Describes a load balancing rule." }, - "ClusterProperties": { + "ManagedClusterProperties": { "type": "object", "properties": { - "addOnFeatures": { + "addonFeatures": { "oneOf": [ { "type": "array", "items": { "type": "string", "enum": [ - "RepairManager", "DnsService", "BackupRestoreService", "ResourceMonitorService" @@ -1063,120 +982,140 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The list of add-on features to enable in the cluster." + "description": "List of add-on features to enable on the cluster." }, - "applicationTypeVersionsCleanupPolicy": { + "adminPassword": { + "type": "string", + "format": "password", + "description": "VM admin user password." + }, + "adminUserName": { + "type": "string", + "description": "VM admin user name." + }, + "allowRdpAccess": { "oneOf": [ { - "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy" + "type": "boolean" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "Setting this to true enables RDP access to the VM. The default NSG rule opens RDP port to Internet which can be overridden with custom Network Security Rules. The default value for this setting is false." }, - "azureActiveDirectory": { + "applicationTypeVersionsCleanupPolicy": { "oneOf": [ { - "$ref": "#/definitions/AzureActiveDirectory" + "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The settings to enable AAD authentication on the cluster." + "description": "The policy used to clean up unused versions. When the policy is not specified explicitly, the default unused application versions to keep will be 3." }, - "certificate": { + "auxiliarySubnets": { "oneOf": [ { - "$ref": "#/definitions/CertificateDescription" + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + } }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Describes the certificate details." + "description": "Auxiliary subnets for the cluster." }, - "certificateCommonNames": { + "azureActiveDirectory": { "oneOf": [ { - "$ref": "#/definitions/ServerCertificateCommonNames" + "$ref": "#/definitions/AzureActiveDirectory" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." + "description": "The settings to enable AAD authentication on the cluster." }, - "clientCertificateCommonNames": { + "clientConnectionPort": { "oneOf": [ { - "type": "array", - "items": { - "$ref": "#/definitions/ClientCertificateCommonName" - } + "type": "integer", + "default": "19000" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The list of client certificates referenced by common name that are allowed to manage the cluster." + "description": "The port used for client connections to the cluster." }, - "clientCertificateThumbprints": { + "clients": { "oneOf": [ { "type": "array", "items": { - "$ref": "#/definitions/ClientCertificateThumbprint" + "$ref": "#/definitions/ClientCertificate" } }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The list of client certificates referenced by thumbprint that are allowed to manage the cluster." + "description": "Client certificates that are allowed to manage the cluster." }, "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](https://learn.microsoft.com/rest/api/servicefabric/cluster-versions/list). 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**." }, - "diagnosticsStorageAccountConfig": { + "clusterUpgradeCadence": { "oneOf": [ { - "$ref": "#/definitions/DiagnosticsStorageAccountConfig" + "type": "string", + "enum": [ + "Wave0", + "Wave1", + "Wave2" + ] }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The storage account information for storing Service Fabric diagnostic logs." + "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'." }, - "eventStoreServiceEnabled": { + "clusterUpgradeMode": { "oneOf": [ { - "type": "boolean" + "type": "string", + "enum": [ + "Automatic", + "Manual" + ] }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "Indicates if the event store service is enabled." + ] }, - "fabricSettings": { + "dnsName": { + "type": "string", + "description": "The cluster dns name." + }, + "enableAutoOSUpgrade": { "oneOf": [ { - "type": "array", - "items": { - "$ref": "#/definitions/SettingsSectionDescription" - } + "type": "boolean" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The list of custom fabric settings to configure the cluster." + "description": "Setting this to true enables automatic OS upgrade for the node types that are created using any platform OS image with version 'latest'. The default value for this setting is false." }, - "infrastructureServiceManager": { + "enableIpv6": { "oneOf": [ { "type": "boolean" @@ -1185,187 +1124,162 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Indicates if infrastructure service manager is enabled." + "description": "Setting this to true creates IPv6 address space for the default VNet used by the cluster. This setting cannot be changed once the cluster is created. The default value for this setting is false." }, - "managementEndpoint": { - "type": "string", - "description": "The http management endpoint of the cluster." - }, - "nodeTypes": { + "enableServicePublicIP": { "oneOf": [ { - "type": "array", - "items": { - "$ref": "#/definitions/NodeTypeDescription" - } + "type": "boolean" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The list of node types in the cluster." + "description": "Setting this to true will link the IPv4 address as the ServicePublicIP of the IPv6 address. It can only be set to True if IPv6 is enabled on the cluster." }, - "notifications": { + "fabricSettings": { "oneOf": [ { "type": "array", "items": { - "$ref": "#/definitions/Notification" + "$ref": "#/definitions/SettingsSectionDescription" } }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Indicates a list of notification channels for cluster events." + "description": "The list of custom fabric settings to configure the cluster." }, - "reliabilityLevel": { + "httpGatewayConnectionPort": { "oneOf": [ { - "type": "string", - "enum": [ - "None", - "Bronze", - "Silver", - "Gold", - "Platinum" - ] + "type": "integer", + "default": "19080" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "The port used for HTTP connections to the cluster." }, - "reverseProxyCertificate": { + "ipTags": { "oneOf": [ { - "$ref": "#/definitions/CertificateDescription" + "type": "array", + "items": { + "$ref": "#/definitions/IPTag" + } }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Describes the certificate details." + "description": "The list of IP tags associated with the default public IP address of the cluster." }, - "reverseProxyCertificateCommonNames": { + "loadBalancingRules": { "oneOf": [ { - "$ref": "#/definitions/ServerCertificateCommonNames" + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + } }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." + "description": "Load balancing rules that are applied to the public load balancer of the cluster." }, - "sfZonalUpgradeMode": { + "networkSecurityRules": { "oneOf": [ { - "type": "string", - "enum": [ - "Parallel", - "Hierarchical" - ] + "type": "array", + "items": { + "$ref": "#/definitions/NetworkSecurityRule" + } }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "Custom Network Security Rules that are applied to the Virtual Network of the cluster." + }, + "publicIPPrefixId": { + "type": "string", + "format": "arm-id", + "description": "Specify the resource id of a public IP prefix that the load balancer will allocate a public IP address from. Only supports IPv4." }, - "upgradeDescription": { + "serviceEndpoints": { "oneOf": [ { - "$ref": "#/definitions/ClusterUpgradePolicy" + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpoint" + } }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Describes the policy used when upgrading the cluster." + "description": "Service endpoints for subnets in the cluster." }, - "upgradeMode": { + "subnetId": { + "type": "string", + "description": "If specified, the node types for the cluster are created in this subnet instead of the default VNet. The **networkSecurityRules** specified for the cluster are also applied to this subnet. This setting cannot be changed once the cluster is created." + }, + "useCustomVnet": { "oneOf": [ { - "type": "string", - "enum": [ - "Automatic", - "Manual" - ] + "type": "boolean" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] - }, - "upgradePauseEndTimestampUtc": { - "type": "string", - "format": "date-time", - "description": "Indicates the end date and time to pause automatic runtime version upgrades on the cluster for an specific period of time on the cluster (UTC)." - }, - "upgradePauseStartTimestampUtc": { - "type": "string", - "format": "date-time", - "description": "Indicates the start date and time to pause automatic runtime version upgrades on the cluster for an specific period of time on the cluster (UTC)." + ], + "description": "For new clusters, this parameter indicates that it uses Bring your own VNet, but the subnet is specified at node type level; and for such clusters, the subnetId property is required for node types." }, - "upgradeWave": { + "zonalResiliency": { "oneOf": [ { - "type": "string", - "enum": [ - "Wave0", - "Wave1", - "Wave2" - ] + "type": "boolean", + "default": false }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "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 if the cluster has zone resiliency." }, - "vmImage": { - "type": "string", - "description": "The VM image VMSS has been configured with. Generic names such as Windows or Linux can be used." - }, - "vmssZonalUpgradeMode": { + "zonalUpdateMode": { "oneOf": [ { "type": "string", "enum": [ - "Parallel", - "Hierarchical" + "Standard", + "Fast" ] }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] - }, - "waveUpgradePaused": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } ], - "description": "Boolean to pause automatic runtime version upgrades to the cluster." + "description": "Indicates the update mode for Cross Az clusters." } }, "required": [ - "managementEndpoint", - "nodeTypes" + "adminUserName", + "dnsName" ], - "description": "Describes the cluster resource properties." + "description": "Describes the managed cluster resource properties." }, - "clusters_applications_childResource": { + "managedclusters_applications_childResource": { "type": "object", "properties": { "apiVersion": { "type": "string", "enum": [ - "2021-06-01" + "2023-03-01-preview" ] }, "identity": { @@ -1381,7 +1295,7 @@ }, "location": { "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." + "description": "Resource location depends on the parent resource." }, "name": { "type": "string", @@ -1437,20 +1351,20 @@ "properties", "type" ], - "description": "Microsoft.ServiceFabric/clusters/applications" + "description": "Microsoft.ServiceFabric/managedclusters/applications" }, - "clusters_applications_services_childResource": { + "managedclusters_applications_services_childResource": { "type": "object", "properties": { "apiVersion": { "type": "string", "enum": [ - "2021-06-01" + "2023-03-01-preview" ] }, "location": { "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." + "description": "Resource location depends on the parent resource." }, "name": { "type": "string", @@ -1506,20 +1420,20 @@ "properties", "type" ], - "description": "Microsoft.ServiceFabric/clusters/applications/services" + "description": "Microsoft.ServiceFabric/managedclusters/applications/services" }, - "clusters_applicationTypes_childResource": { + "managedclusters_applicationTypes_childResource": { "type": "object", "properties": { "apiVersion": { "type": "string", "enum": [ - "2021-06-01" + "2023-03-01-preview" ] }, "location": { "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." + "description": "Resource location depends on the parent resource." }, "name": { "type": "string", @@ -1575,20 +1489,20 @@ "properties", "type" ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes" + "description": "Microsoft.ServiceFabric/managedclusters/applicationTypes" }, - "clusters_applicationTypes_versions_childResource": { + "managedclusters_applicationTypes_versions_childResource": { "type": "object", "properties": { "apiVersion": { "type": "string", "enum": [ - "2021-06-01" + "2023-03-01-preview" ] }, "location": { "type": "string", - "description": "It will be deprecated in New API, resource location depends on the parent resource." + "description": "Resource location depends on the parent resource." }, "name": { "type": "string", @@ -1644,254 +1558,294 @@ "properties", "type" ], - "description": "Microsoft.ServiceFabric/clusters/applicationTypes/versions" + "description": "Microsoft.ServiceFabric/managedclusters/applicationTypes/versions" }, - "ClusterUpgradeDeltaHealthPolicy": { + "managedClusters_nodeTypes_childResource": { "type": "object", "properties": { - "applicationDeltaHealthPolicies": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-03-01-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the node type." + }, + "properties": { "oneOf": [ { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/ApplicationDeltaHealthPolicy" - }, - "properties": {} + "$ref": "#/definitions/NodeTypeProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Defines a map that contains specific application delta health policies for different applications.\nEach entry specifies as key the application name and as value an ApplicationDeltaHealthPolicy used to evaluate the application health when upgrading the cluster.\nThe application name should include the 'fabric:' URI scheme.\nThe map is empty by default.\n" + "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." }, - "maxPercentDeltaUnhealthyApplications": { + "sku": { "oneOf": [ { - "type": "integer", - "minimum": 0, - "maximum": 100 + "$ref": "#/definitions/NodeTypeSku" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The maximum allowed percentage of applications health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the applications at the beginning of upgrade and the state of the applications at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits. System services are not included in this.\n" + "description": "Describes a node type sku." }, - "maxPercentDeltaUnhealthyNodes": { + "systemData": { "oneOf": [ { - "type": "integer", - "minimum": 0, - "maximum": 100 + "$ref": "#/definitions/SystemData" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The maximum allowed percentage of nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the nodes at the beginning of upgrade and the state of the nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" + "description": "Metadata pertaining to creation and last modification of the resource." }, - "maxPercentUpgradeDomainDeltaUnhealthyNodes": { + "tags": { "oneOf": [ { - "type": "integer", - "minimum": 0, - "maximum": 100 + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The maximum allowed percentage of upgrade domain nodes health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the upgrade domain nodes at the beginning of upgrade and the state of the upgrade domain nodes at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion for all completed upgrade domains to make sure the state of the upgrade domains is within tolerated limits.\n" - } + "description": "Azure resource tags." + }, + "type": { + "type": "string", + "enum": [ + "nodeTypes" + ] + } }, "required": [ - "maxPercentDeltaUnhealthyApplications", - "maxPercentDeltaUnhealthyNodes", - "maxPercentUpgradeDomainDeltaUnhealthyNodes" + "apiVersion", + "name", + "properties", + "type" ], - "description": "Describes the delta health policies for the cluster upgrade." + "description": "Microsoft.ServiceFabric/managedClusters/nodeTypes" }, - "ClusterUpgradePolicy": { + "ManagedIdentity": { "type": "object", "properties": { - "deltaHealthPolicy": { + "type": { "oneOf": [ { - "$ref": "#/definitions/ClusterUpgradeDeltaHealthPolicy" + "type": "string", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned" + ] }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "Describes the delta health policies for the cluster upgrade." + ] }, - "forceRestart": { + "userAssignedIdentities": { "oneOf": [ { - "type": "boolean" + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + }, + "properties": {} }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "If true, then processes are forcefully restarted during upgrade even when the code version has not changed (the upgrade only changes configuration or data)." - }, - "healthCheckRetryTimeout": { - "type": "string", - "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckStableDuration": { - "type": "string", - "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthCheckWaitDuration": { - "type": "string", - "description": "The length of time to wait after completing an upgrade domain before performing health checks. The duration can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "healthPolicy": { + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\n" + } + }, + "description": "Describes the managed identities for an Azure resource." + }, + "NetworkSecurityRule": { + "type": "object", + "properties": { + "access": { "oneOf": [ { - "$ref": "#/definitions/ClusterHealthPolicy" + "type": "string", + "enum": [ + "allow", + "deny" + ] }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Defines a health policy used to evaluate the health of the cluster or of a cluster node.\n" - }, - "upgradeDomainTimeout": { - "type": "string", - "description": "The amount of time each upgrade domain has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - }, - "upgradeReplicaSetCheckTimeout": { - "type": "string", - "description": "The maximum amount of time to block processing of an upgrade domain and prevent loss of availability when there are unexpected issues. When this timeout expires, processing of the upgrade domain will proceed regardless of availability loss issues. The timeout is reset at the start of each upgrade domain. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." + "description": "The network traffic is allowed or denied." }, - "upgradeTimeout": { - "type": "string", - "description": "The amount of time the overall upgrade has to complete before the upgrade rolls back. The timeout can be in either hh:mm:ss or in d.hh:mm:ss.ms format." - } - }, - "required": [ - "healthCheckRetryTimeout", - "healthCheckStableDuration", - "healthCheckWaitDuration", - "healthPolicy", - "upgradeDomainTimeout", - "upgradeReplicaSetCheckTimeout", - "upgradeTimeout" - ], - "description": "Describes the policy used when upgrading the cluster." - }, - "DiagnosticsStorageAccountConfig": { - "type": "object", - "properties": { - "blobEndpoint": { + "description": { "type": "string", - "description": "The blob endpoint of the azure storage account." + "description": "Network security rule description." }, - "protectedAccountKeyName": { + "destinationAddressPrefix": { "type": "string", - "description": "The protected diagnostics storage key name." + "description": "The destination address prefix. CIDR or destination IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used." }, - "protectedAccountKeyName2": { - "type": "string", - "description": "The protected diagnostics storage key name." + "destinationAddressPrefixes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The destination address prefixes. CIDR or destination IP ranges." }, - "queueEndpoint": { + "destinationPortRange": { "type": "string", - "description": "The queue endpoint of the azure storage account." + "description": "he destination port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." }, - "storageAccountName": { - "type": "string", - "description": "The Azure storage account name." + "destinationPortRanges": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The destination port ranges." }, - "tableEndpoint": { - "type": "string", - "description": "The table endpoint of the azure storage account." - } - }, - "required": [ - "blobEndpoint", - "protectedAccountKeyName", - "queueEndpoint", - "storageAccountName", - "tableEndpoint" - ], - "description": "The storage account information for storing Service Fabric diagnostic logs." - }, - "EndpointRangeDescription": { - "type": "object", - "properties": { - "endPort": { + "direction": { "oneOf": [ { - "type": "integer" + "type": "string", + "enum": [ + "inbound", + "outbound" + ] }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "End port of a range of ports" + "description": "Network security rule direction." }, - "startPort": { + "name": { + "type": "string", + "description": "Network security rule name." + }, + "priority": { "oneOf": [ { - "type": "integer" + "type": "integer", + "minimum": 1000, + "maximum": 3000 }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Starting port of a range of ports" - } - }, - "required": [ - "endPort", - "startPort" - ], - "description": "Port range details" - }, - "ManagedIdentity": { - "type": "object", - "properties": { - "type": { + "description": "The priority of the rule. The value can be in the range 1000 to 3000. Values outside this range are reserved for Service Fabric ManagerCluster Resource Provider. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule." + }, + "protocol": { "oneOf": [ { "type": "string", "enum": [ - "SystemAssigned", - "UserAssigned", - "SystemAssigned, UserAssigned", - "None" + "http", + "https", + "tcp", + "udp", + "icmp", + "ah", + "esp" ] }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "Network protocol this rule applies to." }, - "userAssignedIdentities": { + "sourceAddressPrefix": { + "type": "string", + "description": "The CIDR or source IP range. Asterisk '*' can also be used to match all source IPs. Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' and 'Internet' can also be used. If this is an ingress rule, specifies where network traffic originates from." + }, + "sourceAddressPrefixes": { "oneOf": [ { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/UserAssignedIdentity" - }, - "properties": {} + "type": "array", + "items": { + "type": "string" + } }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form:\n'/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'.\n" + "description": "The CIDR or source IP ranges." + }, + "sourcePortRange": { + "type": "string", + "description": "The source port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "sourcePortRanges": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The source port ranges." } }, - "description": "Describes the managed identities for an Azure resource." + "required": [ + "access", + "direction", + "name", + "priority", + "protocol" + ], + "description": "Describes a network security rule." }, - "NodeTypeDescription": { + "NodeTypeProperties": { "type": "object", "properties": { + "additionalDataDisks": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/VmssDataDisk" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional managed data disks." + }, "applicationPorts": { "oneOf": [ { @@ -1918,7 +1872,19 @@ ], "description": "The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has." }, - "clientConnectionEndpointPort": { + "dataDiskLetter": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z]{1}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Managed data disk letter. It can not use the reserved letter C or D and it can not change after created." + }, + "dataDiskSizeGB": { "oneOf": [ { "type": "integer" @@ -1927,46 +1893,48 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The TCP cluster management endpoint port." + "description": "Disk size for the managed disk attached to the vms on the node type in GBs." }, - "durabilityLevel": { + "dataDiskType": { "oneOf": [ { "type": "string", "enum": [ - "Bronze", - "Silver", - "Gold" + "Standard_LRS", + "StandardSSD_LRS", + "Premium_LRS" ] }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "Managed data disk type. Specifies the storage account type for the managed disk." }, - "ephemeralPorts": { + "enableAcceleratedNetworking": { "oneOf": [ { - "$ref": "#/definitions/EndpointRangeDescription" + "type": "boolean" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Port range details" + "description": "Specifies whether the network interface is accelerated networking-enabled." }, - "httpGatewayEndpointPort": { + "enableEncryptionAtHost": { "oneOf": [ { - "type": "integer" + "type": "boolean", + "default": false }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The HTTP cluster management endpoint port." + "description": "Enable or disable the Host Encryption for the virtual machines on the node type. This will enable the encryption for all the disks including Resource/Temp disk at host itself. Default: The Encryption at host will be disabled unless this property is set to true for the resource." }, - "isPrimary": { + "enableNodePublicIP": { "oneOf": [ { "type": "boolean" @@ -1975,9 +1943,9 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The node type on which system services will run. Only one node type should be marked as primary. Primary node type cannot be deleted or changed for existing clusters." + "description": "Specifies whether each node is allocated its own public IP address. This is only supported on secondary node types with custom Load Balancers." }, - "isStateless": { + "enableOverProvisioning": { "oneOf": [ { "type": "boolean" @@ -1986,76 +1954,64 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Indicates if the node type can only host Stateless workloads." + "description": "Specifies whether the node type should be overprovisioned. It is only allowed for stateless node types." }, - "multipleAvailabilityZones": { + "ephemeralPorts": { "oneOf": [ { - "type": "boolean" + "$ref": "#/definitions/EndpointRangeDescription" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Indicates if the node type is enabled to support multiple zones." - }, - "name": { - "type": "string", - "description": "The name of the node type." + "description": "Port range details" }, - "placementProperties": { + "evictionPolicy": { "oneOf": [ { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} + "type": "string", + "enum": [ + "Delete", + "Deallocate" + ] }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run." + "description": "Specifies the eviction policy for virtual machines in a SPOT node type. Default is Delete." }, - "reverseProxyEndpointPort": { + "frontendConfigurations": { "oneOf": [ { - "type": "integer" + "type": "array", + "items": { + "$ref": "#/definitions/FrontendConfiguration" + } }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The endpoint used by reverse proxy." + "description": "Indicates the node type uses its own frontend configurations instead of the default one for the cluster. This setting can only be specified for non-primary node types and can not be added or removed after the node type is created." }, - "vmInstanceCount": { + "hostGroupId": { + "type": "string", + "description": "Specifies the full host group resource Id. This property is used for deploying on azure dedicated hosts." + }, + "isPrimary": { "oneOf": [ { - "type": "integer", - "minimum": 0, - "maximum": 2147483647 + "type": "boolean" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "VMInstanceCount should be 1 to n, where n indicates the number of VM instances corresponding to this nodeType. VMInstanceCount = 0 can be done only in these scenarios: NodeType is a secondary nodeType. Durability = Bronze or Durability >= Bronze and InfrastructureServiceManager = true. If VMInstanceCount = 0, implies the VMs for this nodeType will not be used for the initial cluster size computation." - } - }, - "required": [ - "clientConnectionEndpointPort", - "httpGatewayEndpointPort", - "isPrimary", - "name", - "vmInstanceCount" - ], - "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." - }, - "Notification": { - "type": "object", - "properties": { - "isEnabled": { + "description": "Indicates the Service Fabric system services for the cluster will run on this node type. This setting cannot be changed once the node type is created." + }, + "isSpotVM": { "oneOf": [ { "type": "boolean" @@ -2064,79 +2020,245 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Indicates if the notification is enabled." + "description": "Indicates whether the node type will be Spot Virtual Machines. Azure will allocate the VMs if there is capacity available and the VMs can be evicted at any time." }, - "notificationCategory": { + "isStateless": { "oneOf": [ { - "type": "string", - "enum": [ - "WaveProgress" - ] + "type": "boolean", + "default": false }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The category of notification." + "description": "Indicates if the node type can only host Stateless workloads." }, - "notificationLevel": { + "multiplePlacementGroups": { "oneOf": [ { - "type": "string", - "enum": [ - "Critical", - "All" - ] + "type": "boolean", + "default": false }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The level of notification." + "description": "Indicates if scale set associated with the node type can be composed of multiple placement groups." + }, + "natGatewayId": { + "type": "string", + "format": "arm-id", + "description": "Specifies the resource id of a NAT Gateway to attach to the subnet of this node type. Node type must use custom load balancer." }, - "notificationTargets": { + "networkSecurityRules": { "oneOf": [ { "type": "array", "items": { - "$ref": "#/definitions/NotificationTarget" + "$ref": "#/definitions/NetworkSecurityRule" } }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "List of targets that subscribe to the notification." - } - }, - "required": [ - "isEnabled", - "notificationCategory", - "notificationLevel", - "notificationTargets" - ], - "description": "Describes the notification channel for cluster events." - }, - "NotificationTarget": { - "type": "object", - "properties": { - "notificationChannel": { + "description": "The Network Security Rules for this node type. This setting can only be specified for node types that are configured with frontend configurations." + }, + "placementProperties": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run." + }, + "secureBootEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether secure boot should be enabled on the nodeType. Can only be used with TrustedLaunch SecurityType" + }, + "securityType": { "oneOf": [ { "type": "string", "enum": [ - "EmailUser", - "EmailSubscription" + "TrustedLaunch" ] }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The notification channel indicates the type of receivers subscribed to the notification, either user or subscription." + "description": "Specifies the security type of the nodeType. Only TrustedLaunch is currently supported." + }, + "spotRestoreTimeout": { + "type": "string", + "description": "Indicates the time duration after which the platform will not try to restore the VMSS SPOT instances specified as ISO 8601." + }, + "subnetId": { + "type": "string", + "format": "arm-id", + "description": "Indicates the resource id of the subnet for the node type." + }, + "useDefaultPublicLoadBalancer": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether the use public load balancer. If not specified and the node type doesn't have its own frontend configuration, it will be attached to the default load balancer. If the node type uses its own Load balancer and useDefaultPublicLoadBalancer is true, then the frontend has to be an Internal Load Balancer. If the node type uses its own Load balancer and useDefaultPublicLoadBalancer is false or not set, then the custom load balancer must include a public load balancer to provide outbound connectivity." + }, + "useEphemeralOSDisk": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether to use ephemeral os disk. The sku selected on the vmSize property needs to support this feature." + }, + "useTempDataDisk": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether to use the temporary disk for the service fabric data root, in which case no managed data disk will be attached and the temporary disk will be used. It is only allowed for stateless node types." + }, + "vmExtensions": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/VMSSExtension" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Set of extensions that should be installed onto the virtual machines." + }, + "vmImageOffer": { + "type": "string", + "description": "The offer type of the Azure Virtual Machines Marketplace image. For example, UbuntuServer or WindowsServer." + }, + "vmImagePlan": { + "oneOf": [ + { + "$ref": "#/definitions/VmImagePlan" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click Want to deploy programmatically, Get Started ->. Enter any required information and then click Save." + }, + "vmImagePublisher": { + "type": "string", + "description": "The publisher of the Azure Virtual Machines Marketplace image. For example, Canonical or MicrosoftWindowsServer." + }, + "vmImageResourceId": { + "type": "string", + "format": "arm-id", + "description": "Indicates the resource id of the vm image. This parameter is used for custom vm image." + }, + "vmImageSku": { + "type": "string", + "description": "The SKU of the Azure Virtual Machines Marketplace image. For example, 14.04.0-LTS or 2012-R2-Datacenter." + }, + "vmImageVersion": { + "type": "string", + "description": "The version of the Azure Virtual Machines Marketplace image. A value of 'latest' can be specified to select the latest version of an image. If omitted, the default is 'latest'." + }, + "vmInstanceCount": { + "oneOf": [ + { + "type": "integer", + "minimum": -1, + "maximum": 2147483647 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of nodes in the node type.

**Values:**
-1 - Use when auto scale rules are configured or sku.capacity is defined
0 - Not supported
>0 - Use for manual scale." + }, + "vmManagedIdentity": { + "oneOf": [ + { + "$ref": "#/definitions/VmManagedIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identities for the virtual machine scale set under the node type." + }, + "vmSecrets": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/VaultSecretGroup" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The secrets to install in the virtual machines." + }, + "vmSetupActions": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "EnableContainers", + "EnableHyperV" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the actions to be performed on the vms before bootstrapping the service fabric runtime." + }, + "vmSharedGalleryImageId": { + "type": "string", + "format": "arm-id", + "description": "Indicates the resource id of the vm shared galleries image. This parameter is used for custom vm image." + }, + "vmSize": { + "type": "string", + "description": "The size of virtual machines in the pool. All virtual machines in a pool are the same size. For example, Standard_D3." }, - "receivers": { + "zones": { "oneOf": [ { "type": "array", @@ -2148,84 +2270,147 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "List of targets that subscribe to the notification." + "description": "Specifies the availability zones where the node type would span across. If the cluster is not spanning across availability zones, initiates az migration for the cluster." + } + }, + "required": [ + "isPrimary", + "vmInstanceCount" + ], + "description": "Describes a node type in the cluster, each node type represents sub set of nodes in the cluster." + }, + "NodeTypeSku": { + "type": "object", + "properties": { + "capacity": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 2147483647 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of nodes in the node type.

If present in request it will override properties.vmInstanceCount." + }, + "name": { + "type": "string", + "description": "The sku name.

Name is internally generated and is used in auto-scale scenarios.
Property does not allow to be changed to other values than generated.
To avoid deployment errors please omit the property." + }, + "tier": { + "type": "string", + "description": "Specifies the tier of the node type.

Possible Values:
**Standard**" } }, "required": [ - "notificationChannel", - "receivers" + "capacity" ], - "description": "Describes the notification target properties." + "description": "Describes a node type sku." }, - "PartitionSchemeDescription": { + "Partition": { "type": "object", "oneOf": [ { - "$ref": "#/definitions/SingletonPartitionSchemeDescription" + "$ref": "#/definitions/SingletonPartitionScheme" } ], "properties": {}, "description": "Describes how the service is partitioned." }, - "ServerCertificateCommonName": { + "RollingUpgradeMonitoringPolicy": { "type": "object", "properties": { - "certificateCommonName": { + "failureAction": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Rollback", + "Manual" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The compensating action to perform when a Monitored upgrade encounters monitoring policy or health policy violations. Invalid indicates the failure action is invalid. Rollback specifies that the upgrade will start rolling back automatically. Manual indicates that the upgrade will switch to UnmonitoredManual upgrade mode." + }, + "healthCheckRetryTimeout": { + "type": "string", + "description": "The amount of time to retry health evaluation when the application or cluster is unhealthy before FailureAction is executed. It is interpreted as a string representing an ISO 8601 duration with following format \"hh:mm:ss.fff\"." + }, + "healthCheckStableDuration": { + "type": "string", + "description": "The amount of time that the application or cluster must remain healthy before the upgrade proceeds to the next upgrade domain. It is interpreted as a string representing an ISO 8601 duration with following format \"hh:mm:ss.fff\"." + }, + "healthCheckWaitDuration": { + "type": "string", + "description": "The amount of time to wait after completing an upgrade domain before applying health policies. It is interpreted as a string representing an ISO 8601 duration with following format \"hh:mm:ss.fff\"." + }, + "upgradeDomainTimeout": { "type": "string", - "description": "The common name of the server certificate." + "description": "The amount of time each upgrade domain has to complete before FailureAction is executed. Cannot be larger than 12 hours. It is interpreted as a string representing an ISO 8601 duration with following format \"hh:mm:ss.fff\"." }, - "certificateIssuerThumbprint": { + "upgradeTimeout": { "type": "string", - "description": "The issuer thumbprint of the server certificate." + "description": "The amount of time the overall upgrade has to complete before FailureAction is executed. Cannot be larger than 12 hours. It is interpreted as a string representing an ISO 8601 duration with following format \"hh:mm:ss.fff\"." } }, "required": [ - "certificateCommonName", - "certificateIssuerThumbprint" + "failureAction", + "healthCheckRetryTimeout", + "healthCheckStableDuration", + "healthCheckWaitDuration", + "upgradeDomainTimeout", + "upgradeTimeout" ], - "description": "Describes the server certificate details using common name." + "description": "The policy used for monitoring the application upgrade" + }, + "ScalingMechanism": { + "type": "object", + "properties": {}, + "description": "Describes the mechanism for performing a scaling operation." }, - "ServerCertificateCommonNames": { + "ScalingPolicy": { "type": "object", "properties": { - "commonNames": { + "scalingMechanism": { "oneOf": [ { - "type": "array", - "items": { - "$ref": "#/definitions/ServerCertificateCommonName" - } + "$ref": "#/definitions/ScalingMechanism" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The list of server certificates referenced by common name that are used to secure the cluster." + "description": "Describes the mechanism for performing a scaling operation." }, - "x509StoreName": { + "scalingTrigger": { "oneOf": [ { - "type": "string", - "enum": [ - "AddressBook", - "AuthRoot", - "CertificateAuthority", - "Disallowed", - "My", - "Root", - "TrustedPeople", - "TrustedPublisher" - ] + "$ref": "#/definitions/ScalingTrigger" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ] + ], + "description": "Describes the trigger for performing a scaling operation." } }, - "description": "Describes a list of server certificates referenced by common name that are used to secure the cluster." + "required": [ + "scalingMechanism", + "scalingTrigger" + ], + "description": "Specifies a metric to load balance a service during runtime." + }, + "ScalingTrigger": { + "type": "object", + "properties": {}, + "description": "Describes the trigger for performing a scaling operation." }, - "ServiceCorrelationDescription": { + "ServiceCorrelation": { "type": "object", "properties": { "scheme": { @@ -2233,8 +2418,6 @@ { "type": "string", "enum": [ - "Invalid", - "Affinity", "AlignedAffinity", "NonAlignedAffinity" ] @@ -2247,7 +2430,7 @@ }, "serviceName": { "type": "string", - "description": "The full name of the service with 'fabric:' URI scheme." + "description": "The full ARM Resource ID describing the service resource" } }, "required": [ @@ -2256,7 +2439,34 @@ ], "description": "Creates a particular correlation between services." }, - "ServiceLoadMetricDescription": { + "ServiceEndpoint": { + "type": "object", + "properties": { + "locations": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A list of locations." + }, + "service": { + "type": "string", + "description": "The type of the endpoint service." + } + }, + "required": [ + "service" + ], + "description": "The service endpoint properties." + }, + "ServiceLoadMetric": { "type": "object", "properties": { "defaultLoad": { @@ -2319,8 +2529,28 @@ ], "description": "Specifies a metric to load balance a service during runtime." }, - "ServicePlacementPolicyDescription": { + "ServicePlacementNonPartiallyPlaceServicePolicy": { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "NonPartiallyPlaceService" + ] + } + }, + "required": [ + "type" + ], + "description": "ServicePlacementNonPartiallyPlaceServicePolicy" + }, + "ServicePlacementPolicy": { "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/ServicePlacementNonPartiallyPlaceServicePolicy" + } + ], "properties": {}, "description": "Describes the policy to be used for placement of a Service Fabric service." }, @@ -2340,7 +2570,7 @@ { "type": "array", "items": { - "$ref": "#/definitions/ServiceCorrelationDescription" + "$ref": "#/definitions/ServiceCorrelation" } }, { @@ -2368,7 +2598,7 @@ "partitionDescription": { "oneOf": [ { - "$ref": "#/definitions/PartitionSchemeDescription" + "$ref": "#/definitions/Partition" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -2380,23 +2610,37 @@ "type": "string", "description": "The placement constraints as a string. Placement constraints are boolean expressions on node properties and allow for restricting a service to particular nodes based on the service requirements. For example, to place a service on nodes where NodeType is blue specify the following: \"NodeColor == blue)\"." }, + "scalingPolicies": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ScalingPolicy" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Scaling policies for this service." + }, "serviceDnsName": { "type": "string", - "description": "Dns name used for the service. If this is specified, then the service can be accessed via its DNS name instead of service name." + "description": "Dns name used for the service. If this is specified, then the DNS name can be used to return the IP addresses of service endpoints for application layer protocols (e.g., HTTP).\nWhen updating serviceDnsName, old name may be temporarily resolvable. However, rely on new name.\nWhen removing serviceDnsName, removed name may temporarily be resolvable. Do not rely on the name being unresolvable.\n" }, "serviceLoadMetrics": { "oneOf": [ { "type": "array", "items": { - "$ref": "#/definitions/ServiceLoadMetricDescription" + "$ref": "#/definitions/ServiceLoadMetric" } }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The service load metrics is given as an array of ServiceLoadMetricDescription objects." + "description": "The service load metrics is given as an array of ServiceLoadMetric objects." }, "servicePackageActivationMode": { "oneOf": [ @@ -2418,7 +2662,7 @@ { "type": "array", "items": { - "$ref": "#/definitions/ServicePlacementPolicyDescription" + "$ref": "#/definitions/ServicePlacementPolicy" } }, { @@ -2432,46 +2676,60 @@ "description": "The name of the service type" } }, - "description": "The service resource properties." + "required": [ + "partitionDescription", + "serviceTypeName" + ], + "description": "The service resource properties." }, - "ServiceTypeDeltaHealthPolicy": { + "ServiceTypeHealthPolicy": { "type": "object", "properties": { - "maxPercentDeltaUnhealthyServices": { + "maxPercentUnhealthyPartitionsPerService": { "oneOf": [ { "type": "integer", "minimum": 0, - "maximum": 100, - "default": "0" + "maximum": 100 }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The maximum allowed percentage of services health degradation allowed during cluster upgrades.\nThe delta is measured between the state of the services at the beginning of upgrade and the state of the services at the time of the health evaluation.\nThe check is performed after every upgrade domain upgrade completion to make sure the global state of the cluster is within tolerated limits.\n" - } - }, - "description": "Represents the delta health policy used to evaluate the health of services belonging to a service type when upgrading the cluster.\n" - }, - "ServiceTypeHealthPolicy": { - "type": "object", - "properties": { + "description": "The maximum allowed percentage of unhealthy partitions per service.\n\nThe percentage represents the maximum tolerated percentage of partitions that can be unhealthy before the service is considered in error.\nIf the percentage is respected but there is at least one unhealthy partition, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy partitions over the total number of partitions in the service.\nThe computation rounds up to tolerate one failure on small numbers of partitions.\n" + }, + "maxPercentUnhealthyReplicasPerPartition": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum allowed percentage of unhealthy replicas per partition.\n\nThe percentage represents the maximum tolerated percentage of replicas that can be unhealthy before the partition is considered in error.\nIf the percentage is respected but there is at least one unhealthy replica, the health is evaluated as Warning.\nThe percentage is calculated by dividing the number of unhealthy replicas over the total number of replicas in the partition.\nThe computation rounds up to tolerate one failure on small numbers of replicas.\n" + }, "maxPercentUnhealthyServices": { "oneOf": [ { "type": "integer", "minimum": 0, - "maximum": 100, - "default": "0" + "maximum": 100 }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The maximum percentage of services allowed to be unhealthy before your application is considered in error.\n" + "description": "The maximum allowed percentage of unhealthy services.\n\nThe percentage represents the maximum tolerated percentage of services that can be unhealthy before the application is considered in error.\nIf the percentage is respected but there is at least one unhealthy service, the health is evaluated as Warning.\nThis is calculated by dividing the number of unhealthy services of the specific service type over the total number of services of the specific service type.\nThe computation rounds up to tolerate one failure on small numbers of services.\n" } }, + "required": [ + "maxPercentUnhealthyPartitionsPerService", + "maxPercentUnhealthyReplicasPerPartition", + "maxPercentUnhealthyServices" + ], "description": "Represents the health policy used to evaluate the health of services belonging to a service type.\n" }, "SettingsParameterDescription": { @@ -2520,7 +2778,7 @@ ], "description": "Describes a section in the fabric settings of the cluster." }, - "SingletonPartitionSchemeDescription": { + "SingletonPartitionScheme": { "type": "object", "properties": { "partitionScheme": { @@ -2533,7 +2791,31 @@ "required": [ "partitionScheme" ], - "description": "SingletonPartitionSchemeDescription" + "description": "SingletonPartitionScheme" + }, + "Sku": { + "type": "object", + "properties": { + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Basic", + "Standard" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sku Name." + } + }, + "required": [ + "name" + ], + "description": "Service Fabric managed cluster Sku definition" }, "StatefulServiceProperties": { "type": "object", @@ -2563,13 +2845,11 @@ }, "quorumLossWaitDuration": { "type": "string", - "format": "date-time", - "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format (hh:mm:ss.s)." + "description": "The maximum duration for which a partition is allowed to be in a state of quorum loss, represented in ISO 8601 format \"hh:mm:ss\"." }, "replicaRestartWaitDuration": { "type": "string", - "format": "date-time", - "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format (hh:mm:ss.s)." + "description": "The duration between when a replica goes down and when a new replica is created, represented in ISO 8601 format \"hh:mm:ss\"." }, "serviceKind": { "type": "string", @@ -2577,10 +2857,13 @@ "Stateful" ] }, + "servicePlacementTimeLimit": { + "type": "string", + "description": "The duration for which replicas can stay InBuild before reporting that build is stuck, represented in ISO 8601 format \"hh:mm:ss\"." + }, "standByReplicaKeepDuration": { "type": "string", - "format": "date-time", - "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format (hh:mm:ss.s)." + "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format \"hh:mm:ss\"." }, "targetReplicaSetSize": { "oneOf": [ @@ -2603,10 +2886,6 @@ "StatelessServiceProperties": { "type": "object", "properties": { - "instanceCloseDelayDuration": { - "type": "string", - "description": "Delay duration for RequestDrain feature to ensures that the endpoint advertised by the stateless instance is removed before the delay starts prior to closing the instance. This delay enables existing requests to drain gracefully before the instance actually goes down (https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-application-upgrade-advanced#avoid-connection-drops-during-stateless-service-planned-downtime-preview). It is represented in ISO 8601 format (hh:mm:ss.s)." - }, "instanceCount": { "oneOf": [ { @@ -2619,6 +2898,28 @@ ], "description": "The instance count." }, + "minInstanceCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "MinInstanceCount is the minimum number of instances that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node. The actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ). Note, if InstanceCount is set to -1, during MinInstanceCount computation -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, + "minInstancePercentage": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "MinInstancePercentage is the minimum percentage of InstanceCount that must be up to meet the EnsureAvailability safety check during operations like upgrade or deactivate node. The actual number that is used is max( MinInstanceCount, ceil( MinInstancePercentage/100.0 * InstanceCount) ). Note, if InstanceCount is set to -1, during MinInstancePercentage computation, -1 is first converted into the number of nodes on which the instances are allowed to be placed according to the placement constraints on the service." + }, "serviceKind": { "type": "string", "enum": [ @@ -2627,10 +2928,79 @@ } }, "required": [ + "instanceCount", "serviceKind" ], "description": "The properties of a stateless service resource." }, + "Subnet": { + "type": "object", + "properties": { + "enableIpv6": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates wether to enable Ipv6 or not. If not provided, it will take the same configuration as the cluster." + }, + "name": { + "type": "string", + "description": "Subnet name." + }, + "networkSecurityGroupId": { + "type": "string", + "description": "Full resource id for the network security group." + }, + "privateEndpointNetworkPolicies": { + "oneOf": [ + { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enable or Disable apply network policies on private end point in the subnet." + }, + "privateLinkServiceNetworkPolicies": { + "oneOf": [ + { + "type": "string", + "enum": [ + "enabled", + "disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enable or Disable apply network policies on private link service in the subnet." + } + }, + "required": [ + "name" + ], + "description": "Describes a Subnet." + }, + "SubResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier." + } + }, + "description": "Azure resource identifier." + }, "SystemData": { "type": "object", "properties": { @@ -2666,6 +3036,262 @@ "UserAssignedIdentity": { "type": "object", "properties": {} + }, + "VaultCertificate": { + "type": "object", + "properties": { + "certificateStore": { + "type": "string", + "description": "For Windows VMs, specifies the certificate store on the Virtual Machine to which the certificate should be added. The specified certificate store is implicitly in the LocalMachine account.

For Linux VMs, the certificate file is placed under the /var/lib/waagent directory, with the file name .crt for the X509 certificate file and .prv for private key. Both of these files are .pem formatted." + }, + "certificateUrl": { + "type": "string", + "description": "This is the URL of a certificate that has been uploaded to Key Vault as a secret. For adding a secret to the Key Vault, see [Add a key or secret to the key vault](https://docs.microsoft.com/azure/key-vault/key-vault-get-started/#add). In this case, your certificate needs to be It is the Base64 encoding of the following JSON Object which is encoded in UTF-8:

{
\"data\":\"\",
\"dataType\":\"pfx\",
\"password\":\"\"
}" + } + }, + "required": [ + "certificateStore", + "certificateUrl" + ], + "description": "Describes a single certificate reference in a Key Vault, and where the certificate should reside on the VM." + }, + "VaultSecretGroup": { + "type": "object", + "properties": { + "sourceVault": { + "oneOf": [ + { + "$ref": "#/definitions/SubResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure resource identifier." + }, + "vaultCertificates": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/VaultCertificate" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of key vault references in SourceVault which contain certificates." + } + }, + "required": [ + "sourceVault", + "vaultCertificates" + ], + "description": "Specifies set of certificates that should be installed onto the virtual machines." + }, + "VmImagePlan": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The plan ID." + }, + "product": { + "type": "string", + "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element." + }, + "promotionCode": { + "type": "string", + "description": "The promotion code." + }, + "publisher": { + "type": "string", + "description": "The publisher ID." + } + }, + "description": "Specifies information about the marketplace image used to create the virtual machine. This element is only used for marketplace images. Before you can use a marketplace image from an API, you must enable the image for programmatic use. In the Azure portal, find the marketplace image that you want to use and then click Want to deploy programmatically, Get Started ->. Enter any required information and then click Save." + }, + "VmManagedIdentity": { + "type": "object", + "properties": { + "userAssignedIdentities": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of user identities associated with the virtual machine scale set under the node type. Each entry will be an ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identities for the virtual machine scale set under the node type." + }, + "VmssDataDisk": { + "type": "object", + "properties": { + "diskLetter": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z]{1}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Managed data disk letter. It can not use the reserved letter C or D and it can not change after created." + }, + "diskSizeGB": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Disk size for each vm in the node type in GBs." + }, + "diskType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard_LRS", + "StandardSSD_LRS", + "Premium_LRS" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Managed data disk type. Specifies the storage account type for the managed disk." + }, + "lun": { + "oneOf": [ + { + "type": "integer", + "minimum": 1 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the logical unit number of the data disk. This value is used to identify data disks within the VM and therefore must be unique for each data disk attached to a VM. Lun 0 is reserved for the service fabric data disk." + } + }, + "required": [ + "diskLetter", + "diskSizeGB", + "diskType", + "lun" + ], + "description": "Managed data disk description." + }, + "VMSSExtension": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the extension." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VMSSExtensionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the properties of a Virtual Machine Scale Set Extension." + } + }, + "required": [ + "name", + "properties" + ], + "description": "Specifies set of extensions that should be installed onto the virtual machines." + }, + "VMSSExtensionProperties": { + "type": "object", + "properties": { + "autoUpgradeMinorVersion": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "enableAutomaticUpgrade": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether the extension should be automatically upgraded by the platform if there is a newer version of the extension available." + }, + "forceUpdateTag": { + "type": "string", + "description": "If a value is provided and is different from the previous value, the extension handler will be forced to update even if the extension configuration has not changed." + }, + "protectedSettings": { + "type": "object", + "properties": {}, + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "provisionAfterExtensions": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Collection of extension names after which this extension needs to be provisioned." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "settings": { + "type": "object", + "properties": {}, + "description": "Json formatted public settings for the extension." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + } + }, + "required": [ + "publisher", + "type", + "typeHandlerVersion" + ], + "description": "Describes the properties of a Virtual Machine Scale Set Extension." } } } \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 0fc8a6efd9..68c311921a 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -27928,123 +27928,6 @@ { "$ref": "https://schema.management.azure.com/schemas/2022-10-01-preview/Microsoft.ServiceBus.json#/resourceDefinitions/namespaces_topics_subscriptions_rules" }, - { - "$ref": "https://schema.management.azure.com/schemas/2016-09-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2017-07-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2017-07-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2017-07-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications_services" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2017-07-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2017-07-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes_versions" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2018-02-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-03-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-03-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-03-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications_services" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-03-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-03-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes_versions" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-03-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-03-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-03-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications_services" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-03-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-03-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes_versions" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-06-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-06-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-06-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications_services" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-06-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-06-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes_versions" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-11-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-11-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-11-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications_services" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-11-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2019-11-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes_versions" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2020-01-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedClusters" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2020-01-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedClusters_nodeTypes" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2020-03-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2020-03-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2020-03-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications_services" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2020-03-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2020-03-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes_versions" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2020-12-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2020-12-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2020-12-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications_services" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2020-12-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2020-12-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes_versions" - }, { "$ref": "https://schema.management.azure.com/schemas/2021-01-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedClusters" }, @@ -28081,21 +27964,6 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ServiceFabric.json#/resourceDefinitions/managedClusters_nodeTypes" }, - { - "$ref": "https://schema.management.azure.com/schemas/2021-06-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2021-06-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2021-06-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applications_services" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2021-06-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes" - }, - { - "$ref": "https://schema.management.azure.com/schemas/2021-06-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters_applicationTypes_versions" - }, { "$ref": "https://schema.management.azure.com/schemas/2021-07-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedClusters" }, @@ -28240,6 +28108,24 @@ { "$ref": "https://schema.management.azure.com/schemas/2023-02-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedClusters_nodeTypes" }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedClusters" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applications" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applications_services" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applicationTypes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applicationTypes_versions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-03-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedClusters_nodeTypes" + }, { "$ref": "https://schema.management.azure.com/schemas/2018-07-01-preview/Microsoft.ServiceFabricMesh.json#/resourceDefinitions/applications" },