From 451dff370ff9b045521c38f4408ae4409e896f85 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 17 Nov 2021 09:26:45 +0000 Subject: [PATCH 01/23] Autogenerate schemas --- schemas/2018-06-01/Microsoft.DataFactory.json | 46 +- schemas/2021-12-01/Microsoft.EdgeOrder.json | 592 ++++++++++++++++++ schemas/common/autogeneratedResources.json | 6 + 3 files changed, 624 insertions(+), 20 deletions(-) create mode 100644 schemas/2021-12-01/Microsoft.EdgeOrder.json diff --git a/schemas/2018-06-01/Microsoft.DataFactory.json b/schemas/2018-06-01/Microsoft.DataFactory.json index 429052cca3..5de01fefa7 100644 --- a/schemas/2018-06-01/Microsoft.DataFactory.json +++ b/schemas/2018-06-01/Microsoft.DataFactory.json @@ -8740,6 +8740,22 @@ "properties": {}, "description": "Reference data flow parameters from dataset." }, + "parameters": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": {} + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "An object mapping parameter names to argument values." + }, "referenceName": { "type": "string", "description": "Reference data flow name." @@ -12927,22 +12943,6 @@ "Flowlet": { "type": "object", "properties": { - "additionalProperties": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "object", - "properties": {} - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Unmatched properties from the message are deserialized this collection" - }, "type": { "type": "string", "enum": [ @@ -12969,10 +12969,6 @@ "FlowletTypeProperties": { "type": "object", "properties": { - "additionalProperties": { - "type": "object", - "properties": {} - }, "script": { "type": "string", "description": "Flowlet script." @@ -13165,6 +13161,11 @@ "properties": {}, "description": "Indicates whether the source files need to be deleted after copy completion. Default is false. Type: boolean (or Expression with resultType boolean)." }, + "disableChunking": { + "type": "object", + "properties": {}, + "description": "If true, disable parallel reading within each file. Default is false. Type: boolean (or Expression with resultType boolean)." + }, "enablePartitionDiscovery": { "oneOf": [ { @@ -25101,6 +25102,11 @@ "properties": {}, "description": "Indicates whether the source files need to be deleted after copy completion. Default is false. Type: boolean (or Expression with resultType boolean)." }, + "disableChunking": { + "type": "object", + "properties": {}, + "description": "If true, disable parallel reading within each file. Default is false. Type: boolean (or Expression with resultType boolean)." + }, "enablePartitionDiscovery": { "oneOf": [ { diff --git a/schemas/2021-12-01/Microsoft.EdgeOrder.json b/schemas/2021-12-01/Microsoft.EdgeOrder.json new file mode 100644 index 0000000000..0a95845963 --- /dev/null +++ b/schemas/2021-12-01/Microsoft.EdgeOrder.json @@ -0,0 +1,592 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-12-01/Microsoft.EdgeOrder.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.EdgeOrder", + "description": "Microsoft EdgeOrder Resource Types", + "resourceDefinitions": { + "addresses": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-12-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[-\\w\\.]+$", + "minLength": 3, + "maxLength": 24 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the address Resource within the specified resource group. address names must be between 3 and 24 characters in length and use any alphanumeric and underscore only" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AddressProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Address 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.EdgeOrder/addresses" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.EdgeOrder/addresses" + }, + "orderItems": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-12-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the order item" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/OrderItemProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represents order item details." + }, + "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.EdgeOrder/orderItems" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.EdgeOrder/orderItems" + } + }, + "definitions": { + "AddressDetails": { + "type": "object", + "properties": { + "forwardAddress": { + "oneOf": [ + { + "$ref": "#/definitions/AddressProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Address Properties" + } + }, + "required": [ + "forwardAddress" + ], + "description": "Address details for an order item." + }, + "AddressProperties": { + "type": "object", + "properties": { + "contactDetails": { + "oneOf": [ + { + "$ref": "#/definitions/ContactDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Contact Details." + }, + "shippingAddress": { + "oneOf": [ + { + "$ref": "#/definitions/ShippingAddress" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Shipping address where customer wishes to receive the device." + } + }, + "required": [ + "contactDetails" + ], + "description": "Address Properties" + }, + "ContactDetails": { + "type": "object", + "properties": { + "contactName": { + "type": "string", + "description": "Contact name of the person." + }, + "emailList": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of Email-ids to be notified about job progress." + }, + "mobile": { + "type": "string", + "description": "Mobile number of the contact person." + }, + "phone": { + "type": "string", + "description": "Phone number of the contact person." + }, + "phoneExtension": { + "type": "string", + "description": "Phone extension number of the contact person." + } + }, + "required": [ + "contactName", + "emailList", + "phone" + ], + "description": "Contact Details." + }, + "DisplayInfo": { + "type": "object", + "properties": {}, + "description": "Describes product display information" + }, + "EncryptionPreferences": { + "type": "object", + "properties": { + "doubleEncryptionStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Double encryption status as entered by the customer. It is compulsory to give this parameter if the 'Deny' or 'Disabled' policy is configured." + } + }, + "description": "Preferences related to the double encryption" + }, + "HierarchyInformation": { + "type": "object", + "properties": { + "configurationName": { + "type": "string", + "description": "Represents configuration name that uniquely identifies configuration" + }, + "productFamilyName": { + "type": "string", + "description": "Represents product family name that uniquely identifies product family" + }, + "productLineName": { + "type": "string", + "description": "Represents product line name that uniquely identifies product line" + }, + "productName": { + "type": "string", + "description": "Represents product name that uniquely identifies product" + } + }, + "description": "Holds details about product hierarchy information" + }, + "ManagementResourcePreferences": { + "type": "object", + "properties": { + "preferredManagementResourceId": { + "type": "string", + "description": "Customer preferred Management resource ARM ID" + } + }, + "description": "Management resource preference to link device" + }, + "NotificationPreference": { + "type": "object", + "properties": { + "sendNotification": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Notification is required or not." + }, + "stageName": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Shipped", + "Delivered" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Name of the stage." + } + }, + "required": [ + "sendNotification", + "stageName" + ], + "description": "Notification preference for a job stage." + }, + "OrderItemDetails": { + "type": "object", + "properties": { + "notificationEmailList": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional notification email list" + }, + "orderItemType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Purchase", + "Rental" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Order item type." + }, + "preferences": { + "oneOf": [ + { + "$ref": "#/definitions/Preferences" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Preferences related to the order" + }, + "productDetails": { + "oneOf": [ + { + "$ref": "#/definitions/ProductDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represents product details" + } + }, + "required": [ + "orderItemType", + "productDetails" + ], + "description": "Order item details" + }, + "OrderItemProperties": { + "type": "object", + "properties": { + "addressDetails": { + "oneOf": [ + { + "$ref": "#/definitions/AddressDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Address details for an order item." + }, + "orderId": { + "type": "string", + "description": "Id of the order to which order item belongs to" + }, + "orderItemDetails": { + "oneOf": [ + { + "$ref": "#/definitions/OrderItemDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Order item details" + } + }, + "required": [ + "addressDetails", + "orderId", + "orderItemDetails" + ], + "description": "Represents order item details." + }, + "Preferences": { + "type": "object", + "properties": { + "encryptionPreferences": { + "oneOf": [ + { + "$ref": "#/definitions/EncryptionPreferences" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Preferences related to the double encryption" + }, + "managementResourcePreferences": { + "oneOf": [ + { + "$ref": "#/definitions/ManagementResourcePreferences" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Management resource preference to link device" + }, + "notificationPreferences": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/NotificationPreference" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Notification preferences." + }, + "transportPreferences": { + "oneOf": [ + { + "$ref": "#/definitions/TransportPreferences" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Preferences related to the shipment logistics of the sku" + } + }, + "description": "Preferences related to the order" + }, + "ProductDetails": { + "type": "object", + "properties": { + "displayInfo": { + "oneOf": [ + { + "$ref": "#/definitions/DisplayInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes product display information" + }, + "hierarchyInformation": { + "oneOf": [ + { + "$ref": "#/definitions/HierarchyInformation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Holds details about product hierarchy information" + } + }, + "required": [ + "hierarchyInformation" + ], + "description": "Represents product details" + }, + "ShippingAddress": { + "type": "object", + "properties": { + "addressType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "Residential", + "Commercial" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of address." + }, + "city": { + "type": "string", + "description": "Name of the City." + }, + "companyName": { + "type": "string", + "description": "Name of the company." + }, + "country": { + "type": "string", + "description": "Name of the Country." + }, + "postalCode": { + "type": "string", + "description": "Postal code." + }, + "stateOrProvince": { + "type": "string", + "description": "Name of the State or Province." + }, + "streetAddress1": { + "type": "string", + "description": "Street Address line 1." + }, + "streetAddress2": { + "type": "string", + "description": "Street Address line 1." + }, + "streetAddress3": { + "type": "string", + "description": "Street Address line 1." + }, + "zipExtendedCode": { + "type": "string", + "description": "Extended Zip Code." + } + }, + "required": [ + "country", + "streetAddress1" + ], + "description": "Shipping address where customer wishes to receive the device." + }, + "TransportPreferences": { + "type": "object", + "properties": { + "preferredShipmentType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "CustomerManaged", + "MicrosoftManaged" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates Shipment Logistics type that the customer preferred." + } + }, + "required": [ + "preferredShipmentType" + ], + "description": "Preferences related to the shipment logistics of the sku" + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index f83efb9c8e..dc3b6c08de 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -7531,6 +7531,12 @@ { "$ref": "https://schema.management.azure.com/schemas/2020-12-01-preview/Microsoft.EdgeOrder.json#/resourceDefinitions/orderItems" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-12-01/Microsoft.EdgeOrder.json#/resourceDefinitions/addresses" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-12-01/Microsoft.EdgeOrder.json#/resourceDefinitions/orderItems" + }, { "$ref": "https://schema.management.azure.com/schemas/2020-07-01/Microsoft.Elastic.json#/resourceDefinitions/monitors" }, From 4d20702f5252dccbb3a39e0b36102b95e1632889 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 17 Nov 2021 09:27:00 +0000 Subject: [PATCH 02/23] Update resource list --- generator/resources.json | 72 ++++++++++++++++------------------------ 1 file changed, 28 insertions(+), 44 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index eb8f56b3bc..8780a47db5 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -718,6 +718,9 @@ "2018-06-01-preview", "2019-01-01" ], + "Microsoft.ApiManagement/service/schemas": [ + "2021-04-01-preview" + ], "Microsoft.ApiManagement/service/subscriptions": [ "2016-07-07", "2016-10-10", @@ -3616,10 +3619,12 @@ "2021-02-01-preview" ], "Microsoft.EdgeOrder/addresses": [ - "2020-12-01-preview" + "2020-12-01-preview", + "2021-12-01" ], "Microsoft.EdgeOrder/orderItems": [ - "2020-12-01-preview" + "2020-12-01-preview", + "2021-12-01" ], "Microsoft.Elastic/monitors": [ "2020-07-01", @@ -4230,10 +4235,12 @@ "2021-08-27" ], "Microsoft.LabServices/labPlans": [ - "2021-10-01-preview" + "2021-10-01-preview", + "2021-11-15-preview" ], "Microsoft.LabServices/labPlans/images": [ - "2021-10-01-preview" + "2021-10-01-preview", + "2021-11-15-preview" ], "Microsoft.LabServices/labaccounts": [ "2018-10-15" @@ -4254,13 +4261,16 @@ "2018-10-15" ], "Microsoft.LabServices/labs": [ - "2021-10-01-preview" + "2021-10-01-preview", + "2021-11-15-preview" ], "Microsoft.LabServices/labs/schedules": [ - "2021-10-01-preview" + "2021-10-01-preview", + "2021-11-15-preview" ], "Microsoft.LabServices/labs/users": [ - "2021-10-01-preview" + "2021-10-01-preview", + "2021-11-15-preview" ], "Microsoft.Logic/integrationAccounts": [ "2016-06-01" @@ -6433,6 +6443,9 @@ "2020-03-01-preview", "2020-08-01" ], + "Microsoft.OperationalInsights/workspaces/tables": [ + "2021-06-01" + ], "Microsoft.OperationsManagement/ManagementConfigurations": [ "2015-11-01-preview" ], @@ -7344,42 +7357,10 @@ "2021-06-01" ], "Microsoft.ServiceFabric/managedClusters": [ - "2020-01-01-preview", - "2021-01-01-preview", - "2021-05-01", - "2021-07-01-preview", - "2021-11-01-preview" + "2020-01-01-preview" ], "Microsoft.ServiceFabric/managedClusters/nodeTypes": [ - "2020-01-01-preview", - "2021-01-01-preview", - "2021-05-01", - "2021-07-01-preview", - "2021-11-01-preview" - ], - "Microsoft.ServiceFabric/managedclusters/applicationTypes": [ - "2021-01-01-preview", - "2021-05-01", - "2021-07-01-preview", - "2021-11-01-preview" - ], - "Microsoft.ServiceFabric/managedclusters/applicationTypes/versions": [ - "2021-01-01-preview", - "2021-05-01", - "2021-07-01-preview", - "2021-11-01-preview" - ], - "Microsoft.ServiceFabric/managedclusters/applications": [ - "2021-01-01-preview", - "2021-05-01", - "2021-07-01-preview", - "2021-11-01-preview" - ], - "Microsoft.ServiceFabric/managedclusters/applications/services": [ - "2021-01-01-preview", - "2021-05-01", - "2021-07-01-preview", - "2021-11-01-preview" + "2020-01-01-preview" ], "Microsoft.ServiceFabricMesh/applications": [ "2018-07-01-preview", @@ -7457,17 +7438,20 @@ "2017-09-01", "2018-06-01", "2019-07-01", - "2020-08-21-preview" + "2020-08-21-preview", + "2021-07-01" ], "Microsoft.Solutions/applications": [ "2017-09-01", "2018-06-01", "2019-07-01", - "2020-08-21-preview" + "2020-08-21-preview", + "2021-07-01" ], "Microsoft.Solutions/jitRequests": [ "2019-07-01", - "2020-08-21-preview" + "2020-08-21-preview", + "2021-07-01" ], "Microsoft.Sql/instancePools": [ "2018-06-01-preview", From db823f9a25bfe857542684aeeec57db9ebc8ba9c Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 17 Nov 2021 10:32:33 +0000 Subject: [PATCH 03/23] Autogenerate schemas --- .../Microsoft.DBforPostgreSQL.json | 29 +++++++------------ .../2021-06-01/Microsoft.DBforPostgreSQL.json | 29 +++++++------------ 2 files changed, 22 insertions(+), 36 deletions(-) diff --git a/schemas/2021-06-01-preview/Microsoft.DBforPostgreSQL.json b/schemas/2021-06-01-preview/Microsoft.DBforPostgreSQL.json index 5926979809..954a919b8e 100644 --- a/schemas/2021-06-01-preview/Microsoft.DBforPostgreSQL.json +++ b/schemas/2021-06-01-preview/Microsoft.DBforPostgreSQL.json @@ -346,6 +346,7 @@ }, "standbyAvailabilityZone": { "type": "string", + "default": "", "description": "availability zone information of the standby." } }, @@ -356,12 +357,14 @@ "properties": { "customWindow": { "type": "string", + "default": "Disabled", "description": "indicates whether custom window is enabled or disabled" }, "dayOfWeek": { "oneOf": [ { - "type": "integer" + "type": "integer", + "default": "0" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -372,7 +375,8 @@ "startHour": { "oneOf": [ { - "type": "integer" + "type": "integer", + "default": "0" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -383,7 +387,8 @@ "startMinute": { "oneOf": [ { - "type": "integer" + "type": "integer", + "default": "0" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -399,10 +404,12 @@ "properties": { "delegatedSubnetResourceId": { "type": "string", + "default": "", "description": "delegated subnet arm resource id." }, "privateDnsZoneArmResourceId": { "type": "string", + "default": "", "description": "private dns zone arm resource id." } }, @@ -422,6 +429,7 @@ }, "availabilityZone": { "type": "string", + "default": "", "description": "availability zone information of the server." }, "backup": { @@ -505,21 +513,6 @@ ], "description": "Storage properties of a server" }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Application-specific metadata in the form of key-value pairs." - }, "version": { "oneOf": [ { diff --git a/schemas/2021-06-01/Microsoft.DBforPostgreSQL.json b/schemas/2021-06-01/Microsoft.DBforPostgreSQL.json index 4dfcbc3dab..451194552b 100644 --- a/schemas/2021-06-01/Microsoft.DBforPostgreSQL.json +++ b/schemas/2021-06-01/Microsoft.DBforPostgreSQL.json @@ -441,6 +441,7 @@ }, "standbyAvailabilityZone": { "type": "string", + "default": "", "description": "availability zone information of the standby." } }, @@ -451,12 +452,14 @@ "properties": { "customWindow": { "type": "string", + "default": "Disabled", "description": "indicates whether custom window is enabled or disabled" }, "dayOfWeek": { "oneOf": [ { - "type": "integer" + "type": "integer", + "default": "0" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -467,7 +470,8 @@ "startHour": { "oneOf": [ { - "type": "integer" + "type": "integer", + "default": "0" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -478,7 +482,8 @@ "startMinute": { "oneOf": [ { - "type": "integer" + "type": "integer", + "default": "0" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -494,10 +499,12 @@ "properties": { "delegatedSubnetResourceId": { "type": "string", + "default": "", "description": "delegated subnet arm resource id." }, "privateDnsZoneArmResourceId": { "type": "string", + "default": "", "description": "private dns zone arm resource id." } }, @@ -517,6 +524,7 @@ }, "availabilityZone": { "type": "string", + "default": "", "description": "availability zone information of the server." }, "backup": { @@ -600,21 +608,6 @@ ], "description": "Storage properties of a server" }, - "tags": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "type": "string" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Application-specific metadata in the form of key-value pairs." - }, "version": { "oneOf": [ { From c47e65dd97c16c02f3e3aadd9e0a74193476596b Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Thu, 18 Nov 2021 09:07:16 +0000 Subject: [PATCH 04/23] Autogenerate schemas --- .../Microsoft.Insights.Application.json | 208 + .../Microsoft.DocumentDB.json | 7837 +++++++++++++++++ schemas/common/autogeneratedResources.json | 111 + 3 files changed, 8156 insertions(+) create mode 100644 schemas/2021-08-01/Microsoft.Insights.Application.json create mode 100644 schemas/2021-10-15-preview/Microsoft.DocumentDB.json diff --git a/schemas/2021-08-01/Microsoft.Insights.Application.json b/schemas/2021-08-01/Microsoft.Insights.Application.json new file mode 100644 index 0000000000..303269e78e --- /dev/null +++ b/schemas/2021-08-01/Microsoft.Insights.Application.json @@ -0,0 +1,208 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-08-01/Microsoft.Insights.Application.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.Insights", + "description": "Microsoft Insights Resource Types", + "resourceDefinitions": { + "workbooks": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "etag": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource etag" + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/WorkbookResourceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity used for BYOS" + }, + "kind": { + "oneOf": [ + { + "type": "string", + "enum": [ + "user", + "shared" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The kind of workbook. Choices are user and shared." + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the Application Insights component resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/WorkbookProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties that contain a workbook." + }, + "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.Insights/workbooks" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.Insights/workbooks" + } + }, + "definitions": { + "UserAssignedIdentity": { + "type": "object", + "properties": {}, + "description": "User assigned identity properties" + }, + "WorkbookProperties": { + "type": "object", + "properties": { + "category": { + "type": "string", + "description": "Workbook category, as defined by the user at creation time." + }, + "description": { + "type": "string", + "description": "The description of the workbook." + }, + "displayName": { + "type": "string", + "description": "The user-defined name (display name) of the workbook." + }, + "serializedData": { + "type": "string", + "description": "Configuration of this particular workbook. Configuration data is a string containing valid JSON" + }, + "sourceId": { + "type": "string", + "description": "ResourceId for a source resource." + }, + "storageUri": { + "type": "string", + "description": "The resourceId to the storage account when bring your own storage is used" + }, + "tags": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Being deprecated, please use the other tags field" + }, + "version": { + "type": "string", + "description": "Workbook schema version format, like 'Notebook/1.0', which should match the workbook in serializedData" + } + }, + "required": [ + "category", + "displayName", + "serializedData" + ], + "description": "Properties that contain a workbook." + }, + "WorkbookResourceIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned,UserAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "userAssignedIdentities": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests." + } + }, + "required": [ + "type" + ], + "description": "Identity used for BYOS" + } + } +} \ No newline at end of file diff --git a/schemas/2021-10-15-preview/Microsoft.DocumentDB.json b/schemas/2021-10-15-preview/Microsoft.DocumentDB.json new file mode 100644 index 0000000000..71dc1feb91 --- /dev/null +++ b/schemas/2021-10-15-preview/Microsoft.DocumentDB.json @@ -0,0 +1,7837 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.DocumentDB", + "description": "Microsoft DocumentDB Resource Types", + "resourceDefinitions": { + "cassandraClusters": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedCassandraManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$", + "minLength": 1, + "maxLength": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Managed Cassandra cluster name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ClusterResourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a managed Cassandra cluster." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/cassandraClusters_dataCenters_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/cassandraClusters" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/cassandraClusters" + }, + "cassandraClusters_dataCenters": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$", + "minLength": 1, + "maxLength": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data center name in a managed Cassandra cluster." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DataCenterResourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a managed Cassandra data center." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/cassandraClusters/dataCenters" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/cassandraClusters/dataCenters" + }, + "databaseAccounts": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "kind": { + "oneOf": [ + { + "type": "string", + "enum": [ + "GlobalDocumentDB", + "MongoDB", + "Parse" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates the type of database account. This can only be set at database account creation." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*", + "minLength": 3, + "maxLength": 50 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB database account name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DatabaseAccountCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB database accounts." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/databaseAccounts_graphs_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_sqlDatabases_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_sqlRoleDefinitions_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_sqlRoleAssignments_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_mongodbDatabases_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_mongodbRoleDefinitions_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_mongodbUserDefinitions_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_tables_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_cassandraKeyspaces_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_gremlinDatabases_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_notebookWorkspaces_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_privateEndpointConnections_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_services_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_dataTransferJobs_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts" + }, + "databaseAccounts_cassandraKeyspaces": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB keyspace name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CassandraKeyspaceCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB Cassandra keyspace." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/databaseAccounts_cassandraKeyspaces_throughputSettings_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_cassandraKeyspaces_tables_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_cassandraKeyspaces_views_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces" + }, + "databaseAccounts_cassandraKeyspaces_tables": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB table name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CassandraTableCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB Cassandra table." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/databaseAccounts_cassandraKeyspaces_tables_throughputSettings_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/tables" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/tables" + }, + "databaseAccounts_cassandraKeyspaces_tables_throughputSettings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/tables/throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/tables/throughputSettings" + }, + "databaseAccounts_cassandraKeyspaces_throughputSettings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings" + }, + "databaseAccounts_cassandraKeyspaces_views": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB view name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CassandraViewCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB Cassandra view." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/databaseAccounts_cassandraKeyspaces_views_throughputSettings_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/views" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/views" + }, + "databaseAccounts_cassandraKeyspaces_views_throughputSettings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/views/throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/views/throughputSettings" + }, + "databaseAccounts_dataTransferJobs": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "description": "Name of the Data Transfer Job" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DataTransferJobProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a DataTransfer Job" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/dataTransferJobs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/dataTransferJobs" + }, + "databaseAccounts_graphs": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB graph resource name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/GraphResourceCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB Graph resource." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/graphs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/graphs" + }, + "databaseAccounts_gremlinDatabases": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB database name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/GremlinDatabaseCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB Gremlin database." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/databaseAccounts_gremlinDatabases_throughputSettings_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_gremlinDatabases_graphs_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases" + }, + "databaseAccounts_gremlinDatabases_graphs": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB graph name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/GremlinGraphCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB Gremlin graph." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/databaseAccounts_gremlinDatabases_graphs_throughputSettings_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs" + }, + "databaseAccounts_gremlinDatabases_graphs_throughputSettings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs/throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs/throughputSettings" + }, + "databaseAccounts_gremlinDatabases_throughputSettings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings" + }, + "databaseAccounts_mongodbDatabases": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB database name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MongoDBDatabaseCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB MongoDB database." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/databaseAccounts_mongodbDatabases_throughputSettings_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_mongodbDatabases_collections_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases" + }, + "databaseAccounts_mongodbDatabases_collections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB collection name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MongoDBCollectionCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB MongoDB collection." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/databaseAccounts_mongodbDatabases_collections_throughputSettings_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/collections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/collections" + }, + "databaseAccounts_mongodbDatabases_collections_throughputSettings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/collections/throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/collections/throughputSettings" + }, + "databaseAccounts_mongodbDatabases_throughputSettings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings" + }, + "databaseAccounts_mongodbRoleDefinitions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "description": "The ID for the Role Definition {dbName.roleName}." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MongoRoleDefinitionResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Cosmos DB Mongo Role Definition resource object." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/mongodbRoleDefinitions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/mongodbRoleDefinitions" + }, + "databaseAccounts_mongodbUserDefinitions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "description": "The ID for the User Definition {dbName.userName}." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MongoUserDefinitionResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Cosmos DB Mongo User Definition resource object." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/mongodbUserDefinitions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/mongodbUserDefinitions" + }, + "databaseAccounts_notebookWorkspaces": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the notebook workspace resource." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces" + ] + } + }, + "required": [ + "apiVersion", + "name", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces" + }, + "databaseAccounts_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a private endpoint connection." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/privateEndpointConnections" + }, + "databaseAccounts_services": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "minLength": 3, + "maxLength": 50, + "description": "Cosmos DB service name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ServiceResourceCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties in ServiceResourceCreateUpdateParameters." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/services" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/services" + }, + "databaseAccounts_sqlDatabases": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB database name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlDatabaseCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB SQL database." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/databaseAccounts_sqlDatabases_throughputSettings_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_sqlDatabases_clientEncryptionKeys_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_sqlDatabases_containers_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases" + }, + "databaseAccounts_sqlDatabases_clientEncryptionKeys": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "description": "Cosmos DB ClientEncryptionKey name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ClientEncryptionKeyCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update ClientEncryptionKey." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/clientEncryptionKeys" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/clientEncryptionKeys" + }, + "databaseAccounts_sqlDatabases_containers": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB container name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlContainerCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB container." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/databaseAccounts_sqlDatabases_containers_throughputSettings_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_sqlDatabases_containers_storedProcedures_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_sqlDatabases_containers_userDefinedFunctions_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_sqlDatabases_containers_triggers_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers" + }, + "databaseAccounts_sqlDatabases_containers_storedProcedures": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB storedProcedure name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlStoredProcedureCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB storedProcedure." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/storedProcedures" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/storedProcedures" + }, + "databaseAccounts_sqlDatabases_containers_throughputSettings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/throughputSettings" + }, + "databaseAccounts_sqlDatabases_containers_triggers": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB trigger name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlTriggerCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB trigger." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/triggers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/triggers" + }, + "databaseAccounts_sqlDatabases_containers_userDefinedFunctions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB userDefinedFunction name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlUserDefinedFunctionCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB userDefinedFunction." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/userDefinedFunctions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/userDefinedFunctions" + }, + "databaseAccounts_sqlDatabases_throughputSettings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings" + }, + "databaseAccounts_sqlRoleAssignments": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "description": "The GUID for the Role Assignment." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlRoleAssignmentResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Cosmos DB SQL Role Assignment resource object." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments" + }, + "databaseAccounts_sqlRoleDefinitions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "description": "The GUID for the Role Definition." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlRoleDefinitionResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Cosmos DB SQL Role Definition resource object." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions" + }, + "databaseAccounts_tables": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB table name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/TableCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB Table." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/databaseAccounts_tables_throughputSettings_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/tables" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/tables" + }, + "databaseAccounts_tables_throughputSettings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings" + } + }, + "definitions": { + "AnalyticalStorageConfiguration": { + "type": "object", + "properties": { + "schemaType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "WellDefined", + "FullFidelity" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "description": "Analytical storage specific properties." + }, + "ApiProperties": { + "type": "object", + "properties": { + "serverVersion": { + "oneOf": [ + { + "type": "string", + "enum": [ + "3.2", + "3.6", + "4.0" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the ServerVersion of an a MongoDB account." + } + } + }, + "AuthenticationMethodLdapProperties": { + "type": "object", + "properties": { + "searchBaseDistinguishedName": { + "type": "string", + "description": "Distinguished name of the object to start the recursive search of users from." + }, + "searchFilterTemplate": { + "type": "string", + "description": "Template to use for searching. Defaults to (cn=%s) where %s will be replaced by the username used to login." + }, + "serverCertificates": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Certificate" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "serverHostname": { + "type": "string", + "description": "Hostname of the LDAP server." + }, + "serverPort": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Port of the LDAP server." + }, + "serviceUserDistinguishedName": { + "type": "string", + "description": "Distinguished name of the look up user account, who can look up user details on authentication." + }, + "serviceUserPassword": { + "type": "string", + "description": "Password of the look up user." + } + }, + "description": "Ldap authentication method properties. This feature is in preview." + }, + "AutoscaleSettings": { + "type": "object", + "properties": { + "maxThroughput": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represents maximum throughput, the resource can scale up to." + } + } + }, + "AutoscaleSettingsResource": { + "type": "object", + "properties": { + "autoUpgradePolicy": { + "oneOf": [ + { + "$ref": "#/definitions/AutoUpgradePolicyResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB resource auto-upgrade policy" + }, + "maxThroughput": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represents maximum throughput container can scale up to." + } + }, + "required": [ + "maxThroughput" + ], + "description": "Cosmos DB provisioned throughput settings object" + }, + "AutoUpgradePolicyResource": { + "type": "object", + "properties": { + "throughputPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputPolicyResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB resource throughput policy" + } + }, + "description": "Cosmos DB resource auto-upgrade policy" + }, + "AzureBlobDataTransferDataSourceSink": { + "type": "object", + "properties": { + "component": { + "type": "string", + "enum": [ + "AzureBlobStorage" + ] + }, + "containerName": { + "type": "string" + }, + "endpointUrl": { + "type": "string" + } + }, + "required": [ + "component", + "containerName" + ], + "description": "An Azure Blob Storage data source/sink" + }, + "BackupPolicy": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/PeriodicModeBackupPolicy" + }, + { + "$ref": "#/definitions/ContinuousModeBackupPolicy" + } + ], + "properties": { + "migrationState": { + "oneOf": [ + { + "$ref": "#/definitions/BackupPolicyMigrationState" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The object representing the state of the migration between the backup policies." + } + }, + "description": "The object representing the policy for taking backups on an account." + }, + "BackupPolicyMigrationState": { + "type": "object", + "properties": { + "startTime": { + "type": "string", + "format": "date-time", + "description": "Time at which the backup policy migration started (ISO-8601 format)." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "InProgress", + "Completed", + "Failed" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the status of migration between backup policy types." + }, + "targetType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Periodic", + "Continuous" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the target backup policy type of the backup policy migration." + } + }, + "description": "The object representing the state of the migration between the backup policies." + }, + "Capability": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB capability. For example, \"name\": \"EnableCassandra\". Current values also include \"EnableTable\" and \"EnableGremlin\"." + } + }, + "description": "Cosmos DB capability object" + }, + "Capacity": { + "type": "object", + "properties": { + "totalThroughputLimit": { + "oneOf": [ + { + "type": "integer", + "minimum": -1 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The total throughput limit imposed on the account. A totalThroughputLimit of 2000 imposes a strict limit of max throughput that can be provisioned on that account to be 2000. A totalThroughputLimit of -1 indicates no limits on provisioning of throughput." + } + }, + "description": "The object that represents all properties related to capacity enforcement on an account." + }, + "cassandraClusters_dataCenters_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]+(-[a-zA-Z0-9]+)*$", + "minLength": 1, + "maxLength": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data center name in a managed Cassandra cluster." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DataCenterResourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a managed Cassandra data center." + }, + "type": { + "type": "string", + "enum": [ + "dataCenters" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/cassandraClusters/dataCenters" + }, + "CassandraKeyspaceCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "$ref": "#/definitions/CreateUpdateOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/CassandraKeyspaceResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB Cassandra keyspace resource object" + } + }, + "required": [ + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB Cassandra keyspace." + }, + "CassandraKeyspaceResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra keyspace" + } + }, + "required": [ + "id" + ], + "description": "Cosmos DB Cassandra keyspace resource object" + }, + "CassandraPartitionKey": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table partition key" + } + }, + "description": "Cosmos DB Cassandra table partition key" + }, + "CassandraSchema": { + "type": "object", + "properties": { + "clusterKeys": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ClusterKey" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of cluster key." + }, + "columns": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Column" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of Cassandra table columns." + }, + "partitionKeys": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/CassandraPartitionKey" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of partition key." + } + }, + "description": "Cosmos DB Cassandra table schema" + }, + "CassandraTableCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "$ref": "#/definitions/CreateUpdateOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/CassandraTableResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB Cassandra table resource object" + } + }, + "required": [ + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB Cassandra table." + }, + "CassandraTableResource": { + "type": "object", + "properties": { + "analyticalStorageTtl": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Analytical TTL." + }, + "defaultTtl": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Time to live of the Cosmos DB Cassandra table" + }, + "id": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table" + }, + "schema": { + "oneOf": [ + { + "$ref": "#/definitions/CassandraSchema" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB Cassandra table schema" + } + }, + "required": [ + "id" + ], + "description": "Cosmos DB Cassandra table resource object" + }, + "CassandraViewCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "$ref": "#/definitions/CreateUpdateOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/CassandraViewResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB Cassandra view resource object" + } + }, + "required": [ + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB Cassandra view." + }, + "CassandraViewResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra view" + }, + "viewDefinition": { + "type": "string", + "description": "View Definition of the Cosmos DB Cassandra view" + } + }, + "required": [ + "id", + "viewDefinition" + ], + "description": "Cosmos DB Cassandra view resource object" + }, + "Certificate": { + "type": "object", + "properties": { + "pem": { + "type": "string", + "description": "PEM formatted public key." + } + } + }, + "ClientEncryptionKeyCreateUpdateProperties": { + "type": "object", + "properties": { + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/ClientEncryptionKeyResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB client encryption key resource object." + } + }, + "required": [ + "resource" + ], + "description": "Properties to create and update ClientEncryptionKey." + }, + "ClientEncryptionKeyResource": { + "type": "object", + "properties": { + "encryptionAlgorithm": { + "type": "string", + "description": "Encryption algorithm that will be used along with this client encryption key to encrypt/decrypt data." + }, + "keyWrapMetadata": { + "oneOf": [ + { + "$ref": "#/definitions/KeyWrapMetadata" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represents key wrap metadata that a key wrapping provider can use to wrap/unwrap a client encryption key." + }, + "wrappedDataEncryptionKey": { + "oneOf": [ + { + "type": "string", + "pattern": "^(?:[A-Za-z0-9+\\/]{4})*(?:[A-Za-z0-9+\\/]{2}==|[A-Za-z0-9+\\/]{3}=)?$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Wrapped (encrypted) form of the key represented as a byte array." + } + }, + "description": "Cosmos DB client encryption key resource object." + }, + "ClusterKey": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table cluster key" + }, + "orderBy": { + "type": "string", + "description": "Order of the Cosmos DB Cassandra table cluster key, only support \"Asc\" and \"Desc\"" + } + }, + "description": "Cosmos DB Cassandra table cluster key" + }, + "ClusterResourceProperties": { + "type": "object", + "properties": { + "authenticationMethod": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "Cassandra", + "Ldap" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Which authentication method Cassandra should use to authenticate clients. 'None' turns off authentication, so should not be used except in emergencies. 'Cassandra' is the default password based authentication. The default is 'Cassandra'. 'Ldap' is in preview." + }, + "cassandraAuditLoggingEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether Cassandra audit logging is enabled" + }, + "cassandraVersion": { + "type": "string", + "description": "Which version of Cassandra should this cluster converge to running (e.g., 3.11). When updated, the cluster may take some time to migrate to the new version." + }, + "clientCertificates": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Certificate" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of TLS certificates used to authorize clients connecting to the cluster. All connections are TLS encrypted whether clientCertificates is set or not, but if clientCertificates is set, the managed Cassandra cluster will reject all connections not bearing a TLS client certificate that can be validated from one or more of the public certificates in this property." + }, + "clusterNameOverride": { + "type": "string", + "description": "If you need to set the clusterName property in cassandra.yaml to something besides the resource name of the cluster, set the value to use on this property." + }, + "deallocated": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether the cluster and associated data centers has been deallocated." + }, + "delegatedManagementSubnetId": { + "type": "string", + "description": "Resource id of a subnet that this cluster's management service should have its network interface attached to. The subnet must be routable to all subnets that will be delegated to data centers. The resource id must be of the form '/subscriptions//resourceGroups//providers/Microsoft.Network/virtualNetworks//subnets/'" + }, + "externalGossipCertificates": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Certificate" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of TLS certificates used to authorize gossip from unmanaged data centers. The TLS certificates of all nodes in unmanaged data centers must be verifiable using one of the certificates provided in this property." + }, + "externalSeedNodes": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/SeedNode" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of IP addresses of seed nodes in unmanaged data centers. These will be added to the seed node lists of all managed nodes." + }, + "hoursBetweenBackups": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of hours to wait between taking a backup of the cluster." + }, + "initialCassandraAdminPassword": { + "type": "string", + "description": "Initial password for clients connecting as admin to the cluster. Should be changed after cluster creation. Returns null on GET. This field only applies when the authenticationMethod field is 'Cassandra'." + }, + "prometheusEndpoint": { + "oneOf": [ + { + "$ref": "#/definitions/SeedNode" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "provisioningState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "repairEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Should automatic repairs run on this cluster? If omitted, this is true, and should stay true unless you are running a hybrid cluster where you are already doing your own repairs." + }, + "restoreFromBackupId": { + "type": "string", + "description": "To create an empty cluster, omit this field or set it to null. To restore a backup into a new cluster, set this field to the resource id of the backup." + } + }, + "description": "Properties of a managed Cassandra cluster." + }, + "Column": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the Cosmos DB Cassandra table column" + }, + "type": { + "type": "string", + "description": "Type of the Cosmos DB Cassandra table column" + } + }, + "description": "Cosmos DB Cassandra table column" + }, + "Components1jq1t4ischemasmanagedserviceidentitypropertiesuserassignedidentitiesadditionalproperties": { + "type": "object", + "properties": {} + }, + "CompositePath": { + "type": "object", + "properties": { + "order": { + "oneOf": [ + { + "type": "string", + "enum": [ + "ascending", + "descending" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sort order for composite paths." + }, + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + } + } + }, + "ConflictResolutionPolicy": { + "type": "object", + "properties": { + "conflictResolutionPath": { + "type": "string", + "description": "The conflict resolution path in the case of LastWriterWins mode." + }, + "conflictResolutionProcedure": { + "type": "string", + "description": "The procedure to resolve conflicts in the case of custom mode." + }, + "mode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "LastWriterWins", + "Custom" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates the conflict resolution mode." + } + }, + "description": "The conflict resolution policy for the container." + }, + "ConsistencyPolicy": { + "type": "object", + "properties": { + "defaultConsistencyLevel": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Eventual", + "Session", + "BoundedStaleness", + "Strong", + "ConsistentPrefix" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The default consistency level and configuration settings of the Cosmos DB account." + }, + "maxIntervalInSeconds": { + "oneOf": [ + { + "type": "integer", + "minimum": 5, + "maximum": 86400 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "When used with the Bounded Staleness consistency level, this value represents the time amount of staleness (in seconds) tolerated. Accepted range for this value is 5 - 86400. Required when defaultConsistencyPolicy is set to 'BoundedStaleness'." + }, + "maxStalenessPrefix": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 2147483647 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "When used with the Bounded Staleness consistency level, this value represents the number of stale requests tolerated. Accepted range for this value is 1 – 2,147,483,647. Required when defaultConsistencyPolicy is set to 'BoundedStaleness'." + } + }, + "required": [ + "defaultConsistencyLevel" + ], + "description": "The consistency policy for the Cosmos DB database account." + }, + "ContainerPartitionKey": { + "type": "object", + "properties": { + "kind": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Hash", + "Range", + "MultiHash" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates the kind of algorithm used for partitioning. For MultiHash, multiple partition keys (upto three maximum) are supported for container create." + }, + "paths": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of paths using which data within the container can be partitioned" + }, + "version": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 2 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates the version of the partition key definition" + } + }, + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "ContinuousModeBackupPolicy": { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Continuous" + ] + } + }, + "required": [ + "type" + ], + "description": "The object representing continuous mode backup policy." + }, + "CorsPolicy": { + "type": "object", + "properties": { + "allowedHeaders": { + "type": "string", + "description": "The request headers that the origin domain may specify on the CORS request." + }, + "allowedMethods": { + "type": "string", + "description": "The methods (HTTP request verbs) that the origin domain may use for a CORS request." + }, + "allowedOrigins": { + "type": "string", + "description": "The origin domains that are permitted to make a request against the service via CORS." + }, + "exposedHeaders": { + "type": "string", + "description": "The response headers that may be sent in the response to the CORS request and exposed by the browser to the request issuer." + }, + "maxAgeInSeconds": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 2147483647 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum amount time that a browser should cache the preflight OPTIONS request." + } + }, + "required": [ + "allowedOrigins" + ], + "description": "The CORS policy for the Cosmos DB database account." + }, + "CosmosCassandraDataTransferDataSourceSink": { + "type": "object", + "properties": { + "component": { + "type": "string", + "enum": [ + "CosmosDBCassandra" + ] + }, + "keyspaceName": { + "type": "string" + }, + "tableName": { + "type": "string" + } + }, + "required": [ + "component", + "keyspaceName", + "tableName" + ], + "description": "A CosmosDB Cassandra API data source/sink" + }, + "CreateUpdateOptions": { + "type": "object", + "properties": { + "autoscaleSettings": { + "oneOf": [ + { + "$ref": "#/definitions/AutoscaleSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "throughput": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Request Units per second. For example, \"throughput\": 10000." + } + }, + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "DatabaseAccountCreateUpdateProperties": { + "type": "object", + "properties": { + "analyticalStorageConfiguration": { + "oneOf": [ + { + "$ref": "#/definitions/AnalyticalStorageConfiguration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Analytical storage specific properties." + }, + "apiProperties": { + "oneOf": [ + { + "$ref": "#/definitions/ApiProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "backupPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/BackupPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The object representing the policy for taking backups on an account." + }, + "capabilities": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Capability" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of Cosmos DB capabilities for the account" + }, + "capacity": { + "oneOf": [ + { + "$ref": "#/definitions/Capacity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The object that represents all properties related to capacity enforcement on an account." + }, + "connectorOffer": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Small" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The cassandra connector offer type for the Cosmos DB database C* account." + }, + "consistencyPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/ConsistencyPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The consistency policy for the Cosmos DB database account." + }, + "cors": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/CorsPolicy" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The CORS policy for the Cosmos DB database account." + }, + "createMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Default", + "Restore" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enum to indicate the mode of account creation." + }, + "databaseAccountOfferType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The offer type for the database" + }, + "defaultIdentity": { + "type": "string", + "description": "The default identity for accessing key vault used in features like customer managed keys. The default identity needs to be explicitly set by the users. It can be \"FirstPartyIdentity\", \"SystemAssignedIdentity\" and more." + }, + "diagnosticLogSettings": { + "oneOf": [ + { + "$ref": "#/definitions/DiagnosticLogSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates what diagnostic log settings are to be enabled." + }, + "disableKeyBasedMetadataWriteAccess": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Disable write operations on metadata resources (databases, containers, throughput) via account keys" + }, + "disableLocalAuth": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Opt-out of local authentication and ensure only MSI and AAD can be used exclusively for authentication." + }, + "enableAnalyticalStorage": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag to indicate whether to enable storage analytics." + }, + "enableAutomaticFailover": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enables automatic failover of the write region in the rare event that the region is unavailable due to an outage. Automatic failover will result in a new write region for the account and is chosen based on the failover priorities configured for the account." + }, + "enableCassandraConnector": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enables the cassandra connector on the Cosmos DB C* account" + }, + "enableFreeTier": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag to indicate whether Free Tier is enabled." + }, + "enableMultipleWriteLocations": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enables the account to write in multiple locations" + }, + "ipRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/IpAddressOrRange" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Array of IpAddressOrRange objects." + }, + "isVirtualNetworkFilterEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag to indicate whether to enable/disable Virtual Network ACL rules." + }, + "keyVaultKeyUri": { + "type": "string", + "description": "The URI of the key vault" + }, + "locations": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Location" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "An array that contains the georeplication locations enabled for the Cosmos DB account." + }, + "networkAclBypass": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "AzureServices" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates what services are allowed to bypass firewall checks." + }, + "networkAclBypassResourceIds": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "An array that contains the Resource Ids for Network Acl Bypass for the Cosmos DB account." + }, + "publicNetworkAccess": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether requests from Public Network are allowed." + }, + "restoreParameters": { + "oneOf": [ + { + "$ref": "#/definitions/RestoreParameters" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Parameters to indicate the information about the restore." + }, + "virtualNetworkRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/VirtualNetworkRule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of Virtual Network ACL rules configured for the Cosmos DB account." + } + }, + "required": [ + "databaseAccountOfferType", + "locations" + ], + "description": "Properties to create and update Azure Cosmos DB database accounts." + }, + "databaseAccounts_cassandraKeyspaces_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB keyspace name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CassandraKeyspaceCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB Cassandra keyspace." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "cassandraKeyspaces" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces" + }, + "databaseAccounts_cassandraKeyspaces_tables_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB table name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CassandraTableCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB Cassandra table." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "tables" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/tables" + }, + "databaseAccounts_cassandraKeyspaces_tables_throughputSettings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/tables/throughputSettings" + }, + "databaseAccounts_cassandraKeyspaces_throughputSettings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings" + }, + "databaseAccounts_cassandraKeyspaces_views_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB view name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CassandraViewCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB Cassandra view." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "views" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/views" + }, + "databaseAccounts_cassandraKeyspaces_views_throughputSettings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/views/throughputSettings" + }, + "databaseAccounts_dataTransferJobs_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "description": "Name of the Data Transfer Job" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DataTransferJobProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a DataTransfer Job" + }, + "type": { + "type": "string", + "enum": [ + "dataTransferJobs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/dataTransferJobs" + }, + "databaseAccounts_graphs_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB graph resource name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/GraphResourceCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB Graph resource." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "graphs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/graphs" + }, + "databaseAccounts_gremlinDatabases_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB database name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/GremlinDatabaseCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB Gremlin database." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "gremlinDatabases" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases" + }, + "databaseAccounts_gremlinDatabases_graphs_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB graph name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/GremlinGraphCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB Gremlin graph." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "graphs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs" + }, + "databaseAccounts_gremlinDatabases_graphs_throughputSettings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs/throughputSettings" + }, + "databaseAccounts_gremlinDatabases_throughputSettings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings" + }, + "databaseAccounts_mongodbDatabases_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB database name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MongoDBDatabaseCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB MongoDB database." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "mongodbDatabases" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases" + }, + "databaseAccounts_mongodbDatabases_collections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB collection name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MongoDBCollectionCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB MongoDB collection." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "collections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/collections" + }, + "databaseAccounts_mongodbDatabases_collections_throughputSettings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/collections/throughputSettings" + }, + "databaseAccounts_mongodbDatabases_throughputSettings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings" + }, + "databaseAccounts_mongodbRoleDefinitions_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "description": "The ID for the Role Definition {dbName.roleName}." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MongoRoleDefinitionResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Cosmos DB Mongo Role Definition resource object." + }, + "type": { + "type": "string", + "enum": [ + "mongodbRoleDefinitions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/mongodbRoleDefinitions" + }, + "databaseAccounts_mongodbUserDefinitions_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "description": "The ID for the User Definition {dbName.userName}." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MongoUserDefinitionResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Cosmos DB Mongo User Definition resource object." + }, + "type": { + "type": "string", + "enum": [ + "mongodbUserDefinitions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/mongodbUserDefinitions" + }, + "databaseAccounts_notebookWorkspaces_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "enum": [ + "default" + ], + "description": "The name of the notebook workspace resource." + }, + "type": { + "type": "string", + "enum": [ + "notebookWorkspaces" + ] + } + }, + "required": [ + "apiVersion", + "name", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces" + }, + "databaseAccounts_privateEndpointConnections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a private endpoint connection." + }, + "type": { + "type": "string", + "enum": [ + "privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/privateEndpointConnections" + }, + "databaseAccounts_services_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "minLength": 3, + "maxLength": 50, + "description": "Cosmos DB service name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ServiceResourceCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties in ServiceResourceCreateUpdateParameters." + }, + "type": { + "type": "string", + "enum": [ + "services" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/services" + }, + "databaseAccounts_sqlDatabases_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB database name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlDatabaseCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB SQL database." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "sqlDatabases" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases" + }, + "databaseAccounts_sqlDatabases_clientEncryptionKeys_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "description": "Cosmos DB ClientEncryptionKey name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ClientEncryptionKeyCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update ClientEncryptionKey." + }, + "type": { + "type": "string", + "enum": [ + "clientEncryptionKeys" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/clientEncryptionKeys" + }, + "databaseAccounts_sqlDatabases_containers_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB container name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlContainerCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB container." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "containers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers" + }, + "databaseAccounts_sqlDatabases_containers_storedProcedures_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB storedProcedure name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlStoredProcedureCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB storedProcedure." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "storedProcedures" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/storedProcedures" + }, + "databaseAccounts_sqlDatabases_containers_throughputSettings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/throughputSettings" + }, + "databaseAccounts_sqlDatabases_containers_triggers_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB trigger name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlTriggerCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB trigger." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "triggers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/triggers" + }, + "databaseAccounts_sqlDatabases_containers_userDefinedFunctions_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB userDefinedFunction name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlUserDefinedFunctionCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB userDefinedFunction." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "userDefinedFunctions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/userDefinedFunctions" + }, + "databaseAccounts_sqlDatabases_throughputSettings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings" + }, + "databaseAccounts_sqlRoleAssignments_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "description": "The GUID for the Role Assignment." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlRoleAssignmentResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Cosmos DB SQL Role Assignment resource object." + }, + "type": { + "type": "string", + "enum": [ + "sqlRoleAssignments" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments" + }, + "databaseAccounts_sqlRoleDefinitions_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "name": { + "type": "string", + "description": "The GUID for the Role Definition." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SqlRoleDefinitionResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Cosmos DB SQL Role Definition resource object." + }, + "type": { + "type": "string", + "enum": [ + "sqlRoleDefinitions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions" + }, + "databaseAccounts_tables_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "description": "Cosmos DB table name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/TableCreateUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create and update Azure Cosmos DB Table." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "tables" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/tables" + }, + "databaseAccounts_tables_throughputSettings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The location of the resource group to which the resource belongs." + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups). A maximum of 15 tags can be provided for a resource. Each tag must have a key no greater than 128 characters and value no greater than 256 characters. For example, the default experience for a template type is set with \"defaultExperience\": \"Cassandra\". Current \"defaultExperience\" values also include \"Table\", \"Graph\", \"DocumentDB\", and \"MongoDB\"." + }, + "type": { + "type": "string", + "enum": [ + "throughputSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings" + }, + "DatabaseRestoreResource": { + "type": "object", + "properties": { + "collectionNames": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The names of the collections available for restore." + }, + "databaseName": { + "type": "string", + "description": "The name of the database available for restore." + } + }, + "description": "Specific Databases to restore." + }, + "DataCenterResourceProperties": { + "type": "object", + "properties": { + "authenticationMethodLdapProperties": { + "oneOf": [ + { + "$ref": "#/definitions/AuthenticationMethodLdapProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Ldap authentication method properties. This feature is in preview." + }, + "availabilityZone": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If the data center has Availability Zone feature, apply it to the Virtual Machine ScaleSet that host the cassandra data center virtual machines." + }, + "backupStorageCustomerKeyUri": { + "type": "string", + "description": "Indicates the Key Uri of the customer key to use for encryption of the backup storage account." + }, + "base64EncodedCassandraYamlFragment": { + "type": "string", + "description": "A fragment of a cassandra.yaml configuration file to be included in the cassandra.yaml for all nodes in this data center. The fragment should be Base64 encoded, and only a subset of keys are allowed." + }, + "dataCenterLocation": { + "type": "string", + "description": "The region this data center should be created in." + }, + "delegatedSubnetId": { + "type": "string", + "description": "Resource id of a subnet the nodes in this data center should have their network interfaces connected to. The subnet must be in the same region specified in 'dataCenterLocation' and must be able to route to the subnet specified in the cluster's 'delegatedManagementSubnetId' property. This resource id will be of the form '/subscriptions//resourceGroups//providers/Microsoft.Network/virtualNetworks//subnets/'." + }, + "diskCapacity": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of disk used for data centers. Default value is 4." + }, + "diskSku": { + "type": "string", + "description": "Disk SKU used for data centers. Default value is P30." + }, + "managedDiskCustomerKeyUri": { + "type": "string", + "description": "Key uri to use for encryption of managed disks. Ensure the system assigned identity of the cluster has been assigned appropriate permissions(key get/wrap/unwrap permissions) on the key." + }, + "nodeCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of nodes the data center should have. This is the desired number. After it is set, it may take some time for the data center to be scaled to match. To monitor the number of nodes and their status, use the fetchNodeStatus method on the cluster." + }, + "provisioningState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Failed", + "Canceled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "sku": { + "type": "string", + "description": "Virtual Machine SKU used for data centers. Default value is Standard_DS14_v2" + } + }, + "description": "Properties of a managed Cassandra data center." + }, + "DataTransferDataSourceSink": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/CosmosCassandraDataTransferDataSourceSink" + }, + { + "$ref": "#/definitions/AzureBlobDataTransferDataSourceSink" + } + ], + "properties": {}, + "description": "Base class for all DataTransfer source/sink" + }, + "DataTransferJobProperties": { + "type": "object", + "properties": { + "destination": { + "oneOf": [ + { + "$ref": "#/definitions/DataTransferDataSourceSink" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for all DataTransfer source/sink" + }, + "source": { + "oneOf": [ + { + "$ref": "#/definitions/DataTransferDataSourceSink" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for all DataTransfer source/sink" + }, + "workerCount": { + "oneOf": [ + { + "type": "integer", + "minimum": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Worker count" + } + }, + "required": [ + "destination", + "source" + ], + "description": "The properties of a DataTransfer Job" + }, + "DiagnosticLogSettings": { + "type": "object", + "properties": { + "enableFullTextQuery": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "True", + "False" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describe the level of detail with which queries are to be logged." + } + }, + "description": "Indicates what diagnostic log settings are to be enabled." + }, + "ExcludedPath": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + } + } + }, + "GraphResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Graph" + } + }, + "required": [ + "id" + ], + "description": "Cosmos DB Graph resource object" + }, + "GraphResourceCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "$ref": "#/definitions/CreateUpdateOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/GraphResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB Graph resource object" + } + }, + "required": [ + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB Graph resource." + }, + "GremlinDatabaseCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "$ref": "#/definitions/CreateUpdateOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/GremlinDatabaseResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB Gremlin database resource object" + } + }, + "required": [ + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB Gremlin database." + }, + "GremlinDatabaseResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB Gremlin database" + } + }, + "required": [ + "id" + ], + "description": "Cosmos DB Gremlin database resource object" + }, + "GremlinGraphCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "$ref": "#/definitions/CreateUpdateOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/GremlinGraphResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB Gremlin graph resource object" + } + }, + "required": [ + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB Gremlin graph." + }, + "GremlinGraphResource": { + "type": "object", + "properties": { + "conflictResolutionPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/ConflictResolutionPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The conflict resolution policy for the container." + }, + "defaultTtl": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Default time to live" + }, + "id": { + "type": "string", + "description": "Name of the Cosmos DB Gremlin graph" + }, + "indexingPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/IndexingPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB indexing policy" + }, + "partitionKey": { + "oneOf": [ + { + "$ref": "#/definitions/ContainerPartitionKey" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "uniqueKeyPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/UniqueKeyPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service." + } + }, + "required": [ + "id" + ], + "description": "Cosmos DB Gremlin graph resource object" + }, + "IncludedPath": { + "type": "object", + "properties": { + "indexes": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Indexes" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of indexes for this path" + }, + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + } + }, + "description": "The paths that are included in indexing" + }, + "Indexes": { + "type": "object", + "properties": { + "dataType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "String", + "Number", + "Point", + "Polygon", + "LineString", + "MultiPolygon" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The datatype for which the indexing behavior is applied to." + }, + "kind": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Hash", + "Range", + "Spatial" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates the type of index." + }, + "precision": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The precision of the index. -1 is maximum precision." + } + }, + "description": "The indexes for the path." + }, + "IndexingPolicy": { + "type": "object", + "properties": { + "automatic": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates if the indexing policy is automatic" + }, + "compositeIndexes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "array", + "items": { + "$ref": "#/definitions/CompositePath" + } + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of composite path list" + }, + "excludedPaths": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ExcludedPath" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of paths to exclude from indexing" + }, + "includedPaths": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/IncludedPath" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of paths to include in the indexing" + }, + "indexingMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "consistent", + "lazy", + "none" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates the indexing mode." + }, + "spatialIndexes": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/SpatialSpec" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of spatial specifics" + } + }, + "description": "Cosmos DB indexing policy" + }, + "IpAddressOrRange": { + "type": "object", + "properties": { + "ipAddressOrRange": { + "type": "string", + "description": "A single IPv4 address or a single IPv4 address range in CIDR format. Provided IPs must be well-formatted and cannot be contained in one of the following ranges: 10.0.0.0/8, 100.64.0.0/10, 172.16.0.0/12, 192.168.0.0/16, since these are not enforceable by the IP address filter. Example of valid inputs: “23.40.210.245” or “23.40.210.0/8”." + } + }, + "description": "IpAddressOrRange object" + }, + "KeyWrapMetadata": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of associated KeyEncryptionKey (aka CustomerManagedKey)." + }, + "type": { + "type": "string", + "description": "ProviderName of KeyStoreProvider." + }, + "value": { + "type": "string", + "description": "Reference / link to the KeyEncryptionKey." + } + }, + "description": "Represents key wrap metadata that a key wrapping provider can use to wrap/unwrap a client encryption key." + }, + "Location": { + "type": "object", + "properties": { + "failoverPriority": { + "oneOf": [ + { + "type": "integer", + "minimum": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists." + }, + "isZoneRedundant": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag to indicate whether or not this region is an AvailabilityZone region" + }, + "locationName": { + "type": "string", + "description": "The name of the region." + }, + "provisioningState": { + "type": "string", + "description": "The status of the Cosmos DB account at the time the operation was called. The status can be one of following. 'Creating' – the Cosmos DB account is being created. When an account is in Creating state, only properties that are specified as input for the Create Cosmos DB account operation are returned. 'Succeeded' – the Cosmos DB account is active for use. 'Updating' – the Cosmos DB account is being updated. 'Deleting' – the Cosmos DB account is being deleted. 'Failed' – the Cosmos DB account failed creation. 'DeletionFailed' – the Cosmos DB account deletion failed." + } + }, + "description": "A region in which the Azure Cosmos DB database account is deployed." + }, + "ManagedCassandraManagedServiceIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SystemAssigned", + "None" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of the resource." + } + }, + "description": "Identity for the resource." + }, + "ManagedServiceIdentity": { + "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 identity used for the resource. The type 'SystemAssigned,UserAssigned' includes both an implicitly created identity and a set of user assigned identities. The type 'None' will remove any identities from the service." + }, + "userAssignedIdentities": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/Components1jq1t4ischemasmanagedserviceidentitypropertiesuserassignedidentitiesadditionalproperties" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of user identities associated with resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "MongoDBCollectionCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "$ref": "#/definitions/CreateUpdateOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/MongoDBCollectionResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB MongoDB collection resource object" + } + }, + "required": [ + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB MongoDB collection." + }, + "MongoDBCollectionResource": { + "type": "object", + "properties": { + "analyticalStorageTtl": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Analytical TTL." + }, + "id": { + "type": "string", + "description": "Name of the Cosmos DB MongoDB collection" + }, + "indexes": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MongoIndex" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of index keys" + }, + "shardKey": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The shard key and partition kind pair, only support \"Hash\" partition kind" + } + }, + "required": [ + "id" + ], + "description": "Cosmos DB MongoDB collection resource object" + }, + "MongoDBDatabaseCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "$ref": "#/definitions/CreateUpdateOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/MongoDBDatabaseResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB MongoDB database resource object" + } + }, + "required": [ + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB MongoDB database." + }, + "MongoDBDatabaseResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB MongoDB database" + } + }, + "required": [ + "id" + ], + "description": "Cosmos DB MongoDB database resource object" + }, + "MongoIndex": { + "type": "object", + "properties": { + "key": { + "oneOf": [ + { + "$ref": "#/definitions/MongoIndexKeys" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB MongoDB collection resource object" + }, + "options": { + "oneOf": [ + { + "$ref": "#/definitions/MongoIndexOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB MongoDB collection index options" + } + }, + "description": "Cosmos DB MongoDB collection index key" + }, + "MongoIndexKeys": { + "type": "object", + "properties": { + "keys": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of keys for each MongoDB collection in the Azure Cosmos DB service" + } + }, + "description": "Cosmos DB MongoDB collection resource object" + }, + "MongoIndexOptions": { + "type": "object", + "properties": { + "expireAfterSeconds": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Expire after seconds" + }, + "unique": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Is unique or not" + } + }, + "description": "Cosmos DB MongoDB collection index options" + }, + "MongoRoleDefinitionResource": { + "type": "object", + "properties": { + "databaseName": { + "type": "string", + "description": "The database name for which access is being granted for this Role Definition." + }, + "privileges": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Privilege" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A set of privileges contained by the Role Definition. This will allow application of this Role Definition on the entire database account or any underlying Database / Collection. Scopes higher than Database are not enforceable as privilege." + }, + "roleName": { + "type": "string", + "description": "A user-friendly name for the Role Definition. Must be unique for the database account." + }, + "roles": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Role" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The set of roles inherited by this Role Definition." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "BuiltInRole", + "CustomRole" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether the Role Definition was built-in or user created." + } + }, + "description": "Azure Cosmos DB Mongo Role Definition resource object." + }, + "MongoUserDefinitionResource": { + "type": "object", + "properties": { + "customData": { + "type": "string", + "description": "A custom definition for the USer Definition." + }, + "databaseName": { + "type": "string", + "description": "The database name for which access is being granted for this User Definition." + }, + "mechanisms": { + "type": "string", + "description": "The Mongo Auth mechanism. For now, we only support auth mechanism SCRAM-SHA-256." + }, + "password": { + "type": "string", + "description": "The password for User Definition. Response does not contain user password." + }, + "roles": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Role" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The set of roles inherited by the User Definition." + }, + "userName": { + "type": "string", + "description": "The user name for User Definition." + } + }, + "description": "Azure Cosmos DB Mongo User Definition resource object." + }, + "PeriodicModeBackupPolicy": { + "type": "object", + "properties": { + "periodicModeProperties": { + "oneOf": [ + { + "$ref": "#/definitions/PeriodicModeProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Configuration values for periodic mode backup" + }, + "type": { + "type": "string", + "enum": [ + "Periodic" + ] + } + }, + "required": [ + "type" + ], + "description": "The object representing periodic mode backup policy." + }, + "PeriodicModeProperties": { + "type": "object", + "properties": { + "backupIntervalInMinutes": { + "oneOf": [ + { + "type": "integer", + "minimum": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "An integer representing the interval in minutes between two backups" + }, + "backupRetentionIntervalInHours": { + "oneOf": [ + { + "type": "integer", + "minimum": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "An integer representing the time (in hours) that each backup is retained" + }, + "backupStorageRedundancy": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Geo", + "Local", + "Zone" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enum to indicate type of backup residency." + } + }, + "description": "Configuration values for periodic mode backup" + }, + "Permission": { + "type": "object", + "properties": { + "dataActions": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "An array of data actions that are allowed." + }, + "notDataActions": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "An array of data actions that are denied." + } + }, + "description": "The set of data plane operations permitted through this Role Definition." + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "groupId": { + "type": "string", + "description": "Group id of the private endpoint." + }, + "privateEndpoint": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointProperty" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Connection State of the Private Endpoint Connection." + }, + "provisioningState": { + "type": "string", + "description": "Provisioning state of the private endpoint." + } + }, + "description": "Properties of a private endpoint connection." + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource id of the private endpoint." + } + }, + "description": "Private endpoint which the connection belongs to." + }, + "PrivateLinkServiceConnectionStateProperty": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "The private link service connection description." + }, + "status": { + "type": "string", + "description": "The private link service connection status." + } + }, + "description": "Connection State of the Private Endpoint Connection." + }, + "Privilege": { + "type": "object", + "properties": { + "actions": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "An array of actions that are allowed." + }, + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/PrivilegeResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "An Azure Cosmos DB Mongo DB Resource." + } + }, + "description": "The set of data plane operations permitted through this Role Definition." + }, + "PrivilegeResource": { + "type": "object", + "properties": { + "collection": { + "type": "string", + "description": "The collection name the role is applied." + }, + "db": { + "type": "string", + "description": "The database name the role is applied." + } + }, + "description": "An Azure Cosmos DB Mongo DB Resource." + }, + "RestoreParameters": { + "type": "object", + "properties": { + "databasesToRestore": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/DatabaseRestoreResource" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of specific databases available for restore." + }, + "restoreMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "PointInTime" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the mode of the restore." + }, + "restoreSource": { + "type": "string", + "description": "The id of the restorable database account from which the restore has to be initiated. For example: /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName}" + }, + "restoreTimestampInUtc": { + "type": "string", + "format": "date-time", + "description": "Time to which the account has to be restored (ISO-8601 format)." + } + }, + "description": "Parameters to indicate the information about the restore." + }, + "Role": { + "type": "object", + "properties": { + "db": { + "type": "string", + "description": "The database name the role is applied." + }, + "role": { + "type": "string", + "description": "The role name." + } + }, + "description": "The set of roles permitted through this Role Definition." + }, + "SeedNode": { + "type": "object", + "properties": { + "ipAddress": { + "type": "string", + "description": "IP address of this seed node." + } + } + }, + "ServiceResourceCreateUpdateProperties": { + "type": "object", + "properties": { + "instanceCount": { + "oneOf": [ + { + "type": "integer", + "minimum": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Instance count for the service." + }, + "instanceSize": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Cosmos.D4s", + "Cosmos.D8s", + "Cosmos.D16s" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "serviceType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SqlDedicatedGateway", + "DataTransfer", + "GraphAPICompute", + "MaterializedViewsBuilder" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "description": "Properties in ServiceResourceCreateUpdateParameters." + }, + "SpatialSpec": { + "type": "object", + "properties": { + "path": { + "type": "string", + "description": "The path for which the indexing behavior applies to. Index paths typically start with root and end with wildcard (/path/*)" + }, + "types": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Point", + "LineString", + "Polygon", + "MultiPolygon" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of path's spatial type" + } + } + }, + "SqlContainerCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "$ref": "#/definitions/CreateUpdateOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/SqlContainerResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB SQL container resource object" + } + }, + "required": [ + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB container." + }, + "SqlContainerResource": { + "type": "object", + "properties": { + "analyticalStorageTtl": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Analytical TTL." + }, + "conflictResolutionPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/ConflictResolutionPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The conflict resolution policy for the container." + }, + "defaultTtl": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Default time to live" + }, + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL container" + }, + "indexingPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/IndexingPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB indexing policy" + }, + "partitionKey": { + "oneOf": [ + { + "$ref": "#/definitions/ContainerPartitionKey" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "uniqueKeyPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/UniqueKeyPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service." + } + }, + "required": [ + "id" + ], + "description": "Cosmos DB SQL container resource object" + }, + "SqlDatabaseCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "$ref": "#/definitions/CreateUpdateOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/SqlDatabaseResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB SQL database resource object" + } + }, + "required": [ + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB SQL database." + }, + "SqlDatabaseResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL database" + } + }, + "required": [ + "id" + ], + "description": "Cosmos DB SQL database resource object" + }, + "SqlRoleAssignmentResource": { + "type": "object", + "properties": { + "principalId": { + "type": "string", + "description": "The unique identifier for the associated AAD principal in the AAD graph to which access is being granted through this Role Assignment. Tenant ID for the principal is inferred using the tenant associated with the subscription." + }, + "roleDefinitionId": { + "type": "string", + "description": "The unique identifier for the associated Role Definition." + }, + "scope": { + "type": "string", + "description": "The data plane resource path for which access is being granted through this Role Assignment." + } + }, + "description": "Azure Cosmos DB SQL Role Assignment resource object." + }, + "SqlRoleDefinitionResource": { + "type": "object", + "properties": { + "assignableScopes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A set of fully qualified Scopes at or below which Role Assignments may be created using this Role Definition. This will allow application of this Role Definition on the entire database account or any underlying Database / Collection. Must have at least one element. Scopes higher than Database account are not enforceable as assignable Scopes. Note that resources referenced in assignable Scopes need not exist." + }, + "permissions": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Permission" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The set of operations allowed through this Role Definition." + }, + "roleName": { + "type": "string", + "description": "A user-friendly name for the Role Definition. Must be unique for the database account." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "BuiltInRole", + "CustomRole" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether the Role Definition was built-in or user created." + } + }, + "description": "Azure Cosmos DB SQL Role Definition resource object." + }, + "SqlStoredProcedureCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "$ref": "#/definitions/CreateUpdateOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/SqlStoredProcedureResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB SQL storedProcedure resource object" + } + }, + "required": [ + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB storedProcedure." + }, + "SqlStoredProcedureResource": { + "type": "object", + "properties": { + "body": { + "type": "string", + "description": "Body of the Stored Procedure" + }, + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL storedProcedure" + } + }, + "required": [ + "id" + ], + "description": "Cosmos DB SQL storedProcedure resource object" + }, + "SqlTriggerCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "$ref": "#/definitions/CreateUpdateOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/SqlTriggerResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB SQL trigger resource object" + } + }, + "required": [ + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB trigger." + }, + "SqlTriggerResource": { + "type": "object", + "properties": { + "body": { + "type": "string", + "description": "Body of the Trigger" + }, + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL trigger" + }, + "triggerOperation": { + "oneOf": [ + { + "type": "string", + "enum": [ + "All", + "Create", + "Update", + "Delete", + "Replace" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The operation the trigger is associated with." + }, + "triggerType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Pre", + "Post" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of the Trigger." + } + }, + "required": [ + "id" + ], + "description": "Cosmos DB SQL trigger resource object" + }, + "SqlUserDefinedFunctionCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "$ref": "#/definitions/CreateUpdateOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/SqlUserDefinedFunctionResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB SQL userDefinedFunction resource object" + } + }, + "required": [ + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB userDefinedFunction." + }, + "SqlUserDefinedFunctionResource": { + "type": "object", + "properties": { + "body": { + "type": "string", + "description": "Body of the User Defined Function" + }, + "id": { + "type": "string", + "description": "Name of the Cosmos DB SQL userDefinedFunction" + } + }, + "required": [ + "id" + ], + "description": "Cosmos DB SQL userDefinedFunction resource object" + }, + "TableCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "$ref": "#/definitions/CreateUpdateOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CreateUpdateOptions are a list of key-value pairs that describe the resource. Supported keys are \"If-Match\", \"If-None-Match\", \"Session-Token\" and \"Throughput\"" + }, + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/TableResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB table resource object" + } + }, + "required": [ + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB Table." + }, + "TableResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Name of the Cosmos DB table" + } + }, + "required": [ + "id" + ], + "description": "Cosmos DB table resource object" + }, + "ThroughputPolicyResource": { + "type": "object", + "properties": { + "incrementPercent": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represents the percentage by which throughput can increase every time throughput policy kicks in." + }, + "isEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Determines whether the ThroughputPolicy is active or not" + } + }, + "description": "Cosmos DB resource throughput policy" + }, + "ThroughputSettingsResource": { + "type": "object", + "properties": { + "autoscaleSettings": { + "oneOf": [ + { + "$ref": "#/definitions/AutoscaleSettingsResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB provisioned throughput settings object" + }, + "throughput": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value of the Cosmos DB resource throughput. Either throughput is required or autoscaleSettings is required, but not both." + } + }, + "description": "Cosmos DB resource throughput object. Either throughput is required or autoscaleSettings is required, but not both." + }, + "ThroughputSettingsUpdateProperties": { + "type": "object", + "properties": { + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputSettingsResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB resource throughput object. Either throughput is required or autoscaleSettings is required, but not both." + } + }, + "required": [ + "resource" + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "UniqueKey": { + "type": "object", + "properties": { + "paths": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of paths must be unique for each document in the Azure Cosmos DB service" + } + }, + "description": "The unique key on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service." + }, + "UniqueKeyPolicy": { + "type": "object", + "properties": { + "uniqueKeys": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/UniqueKey" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of unique keys on that enforces uniqueness constraint on documents in the collection in the Azure Cosmos DB service." + } + }, + "description": "The unique key policy configuration for specifying uniqueness constraints on documents in the collection in the Azure Cosmos DB service." + }, + "VirtualNetworkRule": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID of a subnet, for example: /subscriptions/{subscriptionId}/resourceGroups/{groupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}." + }, + "ignoreMissingVNetServiceEndpoint": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Create firewall rule before the virtual network has vnet service endpoint enabled." + } + }, + "description": "Virtual Network ACL Rule object" + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 52f1593df6..233b73b748 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -7474,6 +7474,114 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-10-15/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_tables_throughputSettings" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/cassandraClusters" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/cassandraClusters_dataCenters" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_cassandraKeyspaces" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_cassandraKeyspaces_tables" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_cassandraKeyspaces_tables_throughputSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_cassandraKeyspaces_throughputSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_cassandraKeyspaces_views" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_cassandraKeyspaces_views_throughputSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_dataTransferJobs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_graphs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_gremlinDatabases" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_gremlinDatabases_graphs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_gremlinDatabases_graphs_throughputSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_gremlinDatabases_throughputSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_mongodbDatabases" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_mongodbDatabases_collections" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_mongodbDatabases_collections_throughputSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_mongodbDatabases_throughputSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_mongodbRoleDefinitions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_mongodbUserDefinitions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_notebookWorkspaces" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_privateEndpointConnections" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_services" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_sqlDatabases" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_sqlDatabases_clientEncryptionKeys" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_sqlDatabases_containers" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_sqlDatabases_containers_storedProcedures" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_sqlDatabases_containers_throughputSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_sqlDatabases_containers_triggers" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_sqlDatabases_containers_userDefinedFunctions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_sqlDatabases_throughputSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_sqlRoleAssignments" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_sqlRoleDefinitions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_tables" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-15-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_tables_throughputSettings" + }, { "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DomainRegistration.json#/resourceDefinitions/domains" }, @@ -8308,6 +8416,9 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-03-08/Microsoft.Insights.Application.json#/resourceDefinitions/workbooks" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-08-01/Microsoft.Insights.Application.json#/resourceDefinitions/workbooks" + }, { "$ref": "https://schema.management.azure.com/schemas/2014-04-01/Microsoft.Insights.json#/resourceDefinitions/alertrules" }, From 1688f46bfa7bee35e7ed265343061c191cfaa590 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Thu, 18 Nov 2021 09:07:33 +0000 Subject: [PATCH 05/23] Update resource list --- generator/resources.json | 140 ++++++++++++++++++++++++++++----------- 1 file changed, 103 insertions(+), 37 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index 8780a47db5..f0d490b18a 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -1961,7 +1961,8 @@ "2019-12-01-preview", "2020-11-01-preview", "2021-06-01-preview", - "2021-08-01-preview" + "2021-08-01-preview", + "2021-09-01" ], "Microsoft.ContainerRegistry/registries/agentPools": [ "2019-06-01-preview" @@ -1999,7 +2000,8 @@ "2019-12-01-preview", "2020-11-01-preview", "2021-06-01-preview", - "2021-08-01-preview" + "2021-08-01-preview", + "2021-09-01" ], "Microsoft.ContainerRegistry/registries/replications": [ "2017-06-01-preview", @@ -2008,7 +2010,8 @@ "2019-12-01-preview", "2020-11-01-preview", "2021-06-01-preview", - "2021-08-01-preview" + "2021-08-01-preview", + "2021-09-01" ], "Microsoft.ContainerRegistry/registries/scopeMaps": [ "2019-05-01-preview", @@ -2037,7 +2040,8 @@ "2019-12-01-preview", "2020-11-01-preview", "2021-06-01-preview", - "2021-08-01-preview" + "2021-08-01-preview", + "2021-09-01" ], "Microsoft.ContainerService/containerServices": [ "2016-03-30", @@ -3044,13 +3048,15 @@ "2021-03-01-preview", "2021-04-01-preview", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/cassandraClusters/dataCenters": [ "2021-03-01-preview", "2021-04-01-preview", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts": [ "2015-04-01", @@ -3072,7 +3078,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/apis/databases": [ "2015-04-01", @@ -3187,7 +3194,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/tables": [ "2019-08-01", @@ -3204,7 +3212,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/tables/throughputSettings": [ "2019-08-01", @@ -3221,7 +3230,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/throughputSettings": [ "2019-08-01", @@ -3238,16 +3248,23 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/views": [ - "2021-07-01-preview" + "2021-07-01-preview", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/cassandraKeyspaces/views/throughputSettings": [ - "2021-07-01-preview" + "2021-07-01-preview", + "2021-10-15-preview" + ], + "Microsoft.DocumentDB/databaseAccounts/dataTransferJobs": [ + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/graphs": [ - "2021-07-01-preview" + "2021-07-01-preview", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases": [ "2019-08-01", @@ -3264,7 +3281,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs": [ "2019-08-01", @@ -3281,7 +3299,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/graphs/throughputSettings": [ "2019-08-01", @@ -3298,7 +3317,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/gremlinDatabases/throughputSettings": [ "2019-08-01", @@ -3315,7 +3335,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases": [ "2019-08-01", @@ -3332,7 +3353,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/collections": [ "2019-08-01", @@ -3349,7 +3371,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/collections/throughputSettings": [ "2019-08-01", @@ -3366,7 +3389,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/mongodbDatabases/throughputSettings": [ "2019-08-01", @@ -3383,7 +3407,14 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" + ], + "Microsoft.DocumentDB/databaseAccounts/mongodbRoleDefinitions": [ + "2021-10-15-preview" + ], + "Microsoft.DocumentDB/databaseAccounts/mongodbUserDefinitions": [ + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/notebookWorkspaces": [ "2019-08-01", @@ -3400,7 +3431,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/privateEndpointConnections": [ "2019-08-01-preview", @@ -3412,11 +3444,13 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/services": [ "2021-04-01-preview", - "2021-07-01-preview" + "2021-07-01-preview", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/sqlDatabases": [ "2019-08-01", @@ -3433,7 +3467,11 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" + ], + "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/clientEncryptionKeys": [ + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers": [ "2019-08-01", @@ -3450,7 +3488,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/storedProcedures": [ "2019-08-01", @@ -3467,7 +3506,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/throughputSettings": [ "2019-08-01", @@ -3484,7 +3524,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/triggers": [ "2019-08-01", @@ -3501,7 +3542,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/containers/userDefinedFunctions": [ "2019-08-01", @@ -3518,7 +3560,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/sqlDatabases/throughputSettings": [ "2019-08-01", @@ -3535,7 +3578,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/sqlRoleAssignments": [ "2020-06-01-preview", @@ -3545,7 +3589,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/sqlRoleDefinitions": [ "2020-06-01-preview", @@ -3555,7 +3600,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/tables": [ "2019-08-01", @@ -3572,7 +3618,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DocumentDB/databaseAccounts/tables/throughputSettings": [ "2019-08-01", @@ -3589,7 +3636,8 @@ "2021-05-15", "2021-06-15", "2021-07-01-preview", - "2021-10-15" + "2021-10-15", + "2021-10-15-preview" ], "Microsoft.DomainRegistration/domains": [ "2015-04-01", @@ -6452,6 +6500,15 @@ "Microsoft.OperationsManagement/solutions": [ "2015-11-01-preview" ], + "Microsoft.Orbital/contactProfiles": [ + "2021-04-04-preview" + ], + "Microsoft.Orbital/spacecrafts": [ + "2021-04-04-preview" + ], + "Microsoft.Orbital/spacecrafts/contacts": [ + "2021-04-04-preview" + ], "Microsoft.Peering/peerAsns": [ "2019-08-01-preview", "2019-09-01-preview", @@ -6505,6 +6562,12 @@ "2021-01-01", "2021-06-01" ], + "Microsoft.PlayFab/playerAccountPools": [ + "2021-09-07-preview" + ], + "Microsoft.PlayFab/titles": [ + "2021-09-07-preview" + ], "Microsoft.PolicyInsights/attestations": [ "2021-01-01", "2021-01-01" @@ -8302,9 +8365,11 @@ "2020-09-01" ], "Microsoft.StreamAnalytics/clusters": [ + "2020-03-01", "2020-03-01-preview" ], "Microsoft.StreamAnalytics/clusters/privateEndpoints": [ + "2020-03-01", "2020-03-01-preview" ], "Microsoft.StreamAnalytics/streamingjobs": [ @@ -9580,7 +9645,8 @@ "2015-05-01", "2018-06-17-preview", "2020-10-20", - "2021-03-08" + "2021-03-08", + "2021-08-01" ], "microsoft.insights/workbooktemplates": [ "2019-10-17-preview", From 5d6f6582a97b2b06735f70e3140801fde5d1f7e0 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 19 Nov 2021 09:08:58 +0000 Subject: [PATCH 06/23] Autogenerate schemas --- .../Microsoft.ContainerService.json | 3455 +++++++++++++++++ schemas/common/autogeneratedResources.json | 15 + 2 files changed, 3470 insertions(+) create mode 100644 schemas/2021-10-01/Microsoft.ContainerService.json diff --git a/schemas/2021-10-01/Microsoft.ContainerService.json b/schemas/2021-10-01/Microsoft.ContainerService.json new file mode 100644 index 0000000000..d788c7511a --- /dev/null +++ b/schemas/2021-10-01/Microsoft.ContainerService.json @@ -0,0 +1,3455 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.ContainerService.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.ContainerService", + "description": "Microsoft ContainerService Resource Types", + "resourceDefinitions": { + "managedClusters": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "extendedLocation": { + "oneOf": [ + { + "$ref": "#/definitions/ExtendedLocation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The complex type of the extended location." + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the managed cluster." + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$", + "minLength": 1, + "maxLength": 63 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the managed cluster resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the managed cluster." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/managedClusters_maintenanceConfigurations_childResource" + }, + { + "$ref": "#/definitions/managedClusters_agentPools_childResource" + }, + { + "$ref": "#/definitions/managedClusters_privateEndpointConnections_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterSKU" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The SKU of a Managed Cluster." + }, + "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.ContainerService/managedClusters" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/managedClusters" + }, + "managedClusters_agentPools": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the agent pool." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties for the container service agent pool profile." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ContainerService/managedClusters/agentPools" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/managedClusters/agentPools" + }, + "managedClusters_maintenanceConfigurations": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the maintenance configuration." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MaintenanceConfigurationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties used to configure planned maintenance for a Managed Cluster." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ContainerService/managedClusters/maintenanceConfigurations" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations" + }, + "managedClusters_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a private endpoint connection." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ContainerService/managedClusters/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/managedClusters/privateEndpointConnections" + }, + "snapshots": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]$|^[a-zA-Z0-9][-_a-zA-Z0-9]{0,61}[a-zA-Z0-9]$", + "minLength": 1, + "maxLength": 63 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the managed cluster resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SnapshotProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties used to configure a node pool snapshot." + }, + "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.ContainerService/snapshots" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/snapshots" + } + }, + "definitions": { + "AgentPoolUpgradeSettings": { + "type": "object", + "properties": { + "maxSurge": { + "type": "string", + "description": "This can either be set to an integer (e.g. '5') or a percentage (e.g. '50%'). If a percentage is specified, it is the percentage of the total agent pool size at the time of the upgrade. For percentages, fractional nodes are rounded up. If not specified, the default is 1. For more information, including best practices, see: https://docs.microsoft.com/azure/aks/upgrade-cluster#customize-node-surge-upgrade" + } + }, + "description": "Settings for upgrading an agentpool" + }, + "ContainerServiceLinuxProfile": { + "type": "object", + "properties": { + "adminUsername": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z][-A-Za-z0-9_]*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The administrator username to use for Linux VMs." + }, + "ssh": { + "oneOf": [ + { + "$ref": "#/definitions/ContainerServiceSshConfiguration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "SSH configuration for Linux-based VMs running on Azure." + } + }, + "required": [ + "adminUsername", + "ssh" + ], + "description": "Profile for Linux VMs in the container service cluster." + }, + "ContainerServiceNetworkProfile": { + "type": "object", + "properties": { + "dnsServiceIP": { + "oneOf": [ + { + "type": "string", + "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$", + "default": "10.0.0.10" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr." + }, + "dockerBridgeCidr": { + "oneOf": [ + { + "type": "string", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "default": "172.17.0.1/16" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range." + }, + "ipFamilies": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "IPv4", + "IPv6" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "IP families are used to determine single-stack or dual-stack clusters. For single-stack, the expected value is IPv4. For dual-stack, the expected values are IPv4 and IPv6." + }, + "loadBalancerProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterLoadBalancerProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Profile of the managed cluster load balancer." + }, + "loadBalancerSku": { + "oneOf": [ + { + "type": "string", + "enum": [ + "standard", + "basic" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The default is 'standard'. See [Azure Load Balancer SKUs](https://docs.microsoft.com/azure/load-balancer/skus) for more information about the differences between load balancer SKUs." + }, + "natGatewayProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterNATGatewayProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Profile of the managed cluster NAT gateway." + }, + "networkMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "transparent", + "bridge" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This cannot be specified if networkPlugin is anything other than 'azure'." + }, + "networkPlugin": { + "oneOf": [ + { + "type": "string", + "enum": [ + "azure", + "kubenet" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Network plugin used for building the Kubernetes network." + }, + "networkPolicy": { + "oneOf": [ + { + "type": "string", + "enum": [ + "calico", + "azure" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Network policy used for building the Kubernetes network." + }, + "outboundType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "loadBalancer", + "userDefinedRouting", + "managedNATGateway", + "userAssignedNATGateway" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This can only be set at cluster creation time and cannot be changed later. For more information see [egress outbound type](https://docs.microsoft.com/azure/aks/egress-outboundtype)." + }, + "podCidr": { + "oneOf": [ + { + "type": "string", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "default": "10.244.0.0/16" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A CIDR notation IP range from which to assign pod IPs when kubenet is used." + }, + "podCidrs": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking." + }, + "serviceCidr": { + "oneOf": [ + { + "type": "string", + "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$", + "default": "10.0.0.0/16" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges." + }, + "serviceCidrs": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "One IPv4 CIDR is expected for single-stack networking. Two CIDRs, one for each IP family (IPv4/IPv6), is expected for dual-stack networking. They must not overlap with any Subnet IP ranges." + } + }, + "description": "Profile of network configuration." + }, + "ContainerServiceSshConfiguration": { + "type": "object", + "properties": { + "publicKeys": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ContainerServiceSshPublicKey" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of SSH public keys used to authenticate with Linux-based VMs. A maximum of 1 key may be specified." + } + }, + "required": [ + "publicKeys" + ], + "description": "SSH configuration for Linux-based VMs running on Azure." + }, + "ContainerServiceSshPublicKey": { + "type": "object", + "properties": { + "keyData": { + "type": "string", + "description": "Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers." + } + }, + "required": [ + "keyData" + ], + "description": "Contains information about SSH certificate public key data." + }, + "CreationData": { + "type": "object", + "properties": { + "sourceResourceId": { + "type": "string", + "description": "This is the ARM ID of the source object to be used to create the target object." + } + }, + "description": "Data used when creating a target resource from a source resource." + }, + "ExtendedLocation": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the extended location." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "EdgeZone" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of the extended location." + } + }, + "description": "The complex type of the extended location." + }, + "KubeletConfig": { + "type": "object", + "properties": { + "allowedUnsafeSysctls": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Allowed list of unsafe sysctls or unsafe sysctl patterns (ending in `*`)." + }, + "containerLogMaxFiles": { + "oneOf": [ + { + "type": "integer", + "minimum": 2 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum number of container log files that can be present for a container. The number must be ≥ 2." + }, + "containerLogMaxSizeMB": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum size (e.g. 10Mi) of container log file before it is rotated." + }, + "cpuCfsQuota": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The default is true." + }, + "cpuCfsQuotaPeriod": { + "type": "string", + "description": "The default is '100ms.' Valid values are a sequence of decimal numbers with an optional fraction and a unit suffix. For example: '300ms', '2h45m'. Supported units are 'ns', 'us', 'ms', 's', 'm', and 'h'." + }, + "cpuManagerPolicy": { + "type": "string", + "description": "The default is 'none'. See [Kubernetes CPU management policies](https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/#cpu-management-policies) for more information. Allowed values are 'none' and 'static'." + }, + "failSwapOn": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If set to true it will make the Kubelet fail to start if swap is enabled on the node." + }, + "imageGcHighThreshold": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "To disable image garbage collection, set to 100. The default is 85%" + }, + "imageGcLowThreshold": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This cannot be set higher than imageGcHighThreshold. The default is 80%" + }, + "podMaxPids": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum number of processes per pod." + }, + "topologyManagerPolicy": { + "type": "string", + "description": "For more information see [Kubernetes Topology Manager](https://kubernetes.io/docs/tasks/administer-cluster/topology-manager). The default is 'none'. Allowed values are 'none', 'best-effort', 'restricted', and 'single-numa-node'." + } + }, + "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + }, + "LinuxOSConfig": { + "type": "object", + "properties": { + "swapFileSizeMB": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The size in MB of a swap file that will be created on each node." + }, + "sysctls": { + "oneOf": [ + { + "$ref": "#/definitions/SysctlConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl settings for Linux agent nodes." + }, + "transparentHugePageDefrag": { + "type": "string", + "description": "Valid values are 'always', 'defer', 'defer+madvise', 'madvise' and 'never'. The default is 'madvise'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge)." + }, + "transparentHugePageEnabled": { + "type": "string", + "description": "Valid values are 'always', 'madvise', and 'never'. The default is 'always'. For more information see [Transparent Hugepages](https://www.kernel.org/doc/html/latest/admin-guide/mm/transhuge.html#admin-guide-transhuge)." + } + }, + "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + }, + "MaintenanceConfigurationProperties": { + "type": "object", + "properties": { + "notAllowedTime": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/TimeSpan" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Time slots on which upgrade is not allowed." + }, + "timeInWeek": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/TimeInWeek" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If two array entries specify the same day of the week, the applied configuration is the union of times in both entries." + } + }, + "description": "Properties used to configure planned maintenance for a Managed Cluster." + }, + "ManagedClusterAADProfile": { + "type": "object", + "properties": { + "adminGroupObjectIDs": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of AAD group object IDs that will have admin role of the cluster." + }, + "clientAppID": { + "type": "string", + "description": "The client AAD application ID." + }, + "enableAzureRBAC": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable Azure RBAC for Kubernetes authorization." + }, + "managed": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable managed AAD." + }, + "serverAppID": { + "type": "string", + "description": "The server AAD application ID." + }, + "serverAppSecret": { + "type": "string", + "description": "The server AAD application secret." + }, + "tenantID": { + "type": "string", + "description": "The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription." + } + }, + "description": "For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad)." + }, + "ManagedClusterAddonProfile": { + "type": "object", + "properties": { + "config": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Key-value pairs for configuring an add-on." + }, + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether the add-on is enabled or not." + } + }, + "required": [ + "enabled" + ], + "description": "A Kubernetes add-on profile for a managed cluster." + }, + "ManagedClusterAgentPoolProfile": { + "type": "object", + "properties": { + "availabilityZones": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'." + }, + "count": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1." + }, + "creationData": { + "oneOf": [ + { + "$ref": "#/definitions/CreationData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data used when creating a target resource from a source resource." + }, + "enableAutoScaling": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable auto-scaler" + }, + "enableEncryptionAtHost": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This is only supported on certain VM sizes and in certain Azure regions. For more information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption" + }, + "enableFIPS": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more details." + }, + "enableNodePublicIP": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. For more information see [assigning a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The default is false." + }, + "enableUltraSSD": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable UltraSSD" + }, + "gpuInstanceProfile": { + "oneOf": [ + { + "type": "string", + "enum": [ + "MIG1g", + "MIG2g", + "MIG3g", + "MIG4g", + "MIG7g" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU." + }, + "kubeletConfig": { + "oneOf": [ + { + "$ref": "#/definitions/KubeletConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + }, + "kubeletDiskType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "OS", + "Temporary" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "linuxOSConfig": { + "oneOf": [ + { + "$ref": "#/definitions/LinuxOSConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + }, + "maxCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum number of nodes for auto-scaling" + }, + "maxPods": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum number of pods that can run on a node." + }, + "minCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The minimum number of nodes for auto-scaling" + }, + "mode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "System", + "User" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-z][a-z0-9]{0,11}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Windows agent pool names must be 6 characters or less." + }, + "nodeLabels": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The node labels to be persisted across all nodes in agent pool." + }, + "nodePublicIPPrefixID": { + "type": "string", + "description": "This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}" + }, + "nodeTaints": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule." + }, + "orchestratorVersion": { + "type": "string", + "description": "As a best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version must have the same major version as the control plane. The node pool minor version must be within two minor versions of the control plane version. The node pool version cannot be greater than the control plane version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool)." + }, + "osDiskSizeGB": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 2048 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." + }, + "osDiskType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Managed", + "Ephemeral" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "osSKU": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Ubuntu", + "CBLMariner" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "osType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Linux", + "Windows" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "podSubnetID": { + "type": "string", + "description": "If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}" + }, + "powerState": { + "oneOf": [ + { + "$ref": "#/definitions/PowerState" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the Power State of the cluster" + }, + "proximityPlacementGroupID": { + "type": "string", + "description": "The ID for Proximity Placement Group." + }, + "scaleDownMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Delete", + "Deallocate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete." + }, + "scaleSetEvictionPolicy": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Delete", + "Deallocate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'." + }, + "scaleSetPriority": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Spot", + "Regular" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'." + }, + "spotMaxPrice": { + "oneOf": [ + { + "type": "number", + "default": -1 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing)" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The tags to be persisted on the agent pool virtual machine scale set." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "VirtualMachineScaleSets", + "AvailabilitySet" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "upgradeSettings": { + "oneOf": [ + { + "$ref": "#/definitions/AgentPoolUpgradeSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Settings for upgrading an agentpool" + }, + "vmSize": { + "type": "string", + "description": "VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods might fail to run correctly. For more details on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions" + }, + "vnetSubnetID": { + "type": "string", + "description": "If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}" + }, + "workloadRuntime": { + "oneOf": [ + { + "type": "string", + "enum": [ + "OCIContainer", + "WasmWasi" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "required": [ + "name" + ], + "description": "Profile for the container service agent pool." + }, + "ManagedClusterAgentPoolProfileProperties": { + "type": "object", + "properties": { + "availabilityZones": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of Availability zones to use for nodes. This can only be specified if the AgentPoolType property is 'VirtualMachineScaleSets'." + }, + "count": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 1000 (inclusive) for user pools and in the range of 1 to 1000 (inclusive) for system pools. The default value is 1." + }, + "creationData": { + "oneOf": [ + { + "$ref": "#/definitions/CreationData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data used when creating a target resource from a source resource." + }, + "enableAutoScaling": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable auto-scaler" + }, + "enableEncryptionAtHost": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This is only supported on certain VM sizes and in certain Azure regions. For more information, see: https://docs.microsoft.com/azure/aks/enable-host-encryption" + }, + "enableFIPS": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "See [Add a FIPS-enabled node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#add-a-fips-enabled-node-pool-preview) for more details." + }, + "enableNodePublicIP": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Some scenarios may require nodes in a node pool to receive their own dedicated public IP addresses. A common scenario is for gaming workloads, where a console needs to make a direct connection to a cloud virtual machine to minimize hops. For more information see [assigning a public IP per node](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#assign-a-public-ip-per-node-for-your-node-pools). The default is false." + }, + "enableUltraSSD": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable UltraSSD" + }, + "gpuInstanceProfile": { + "oneOf": [ + { + "type": "string", + "enum": [ + "MIG1g", + "MIG2g", + "MIG3g", + "MIG4g", + "MIG7g" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "GPUInstanceProfile to be used to specify GPU MIG instance profile for supported GPU VM SKU." + }, + "kubeletConfig": { + "oneOf": [ + { + "$ref": "#/definitions/KubeletConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + }, + "kubeletDiskType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "OS", + "Temporary" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "linuxOSConfig": { + "oneOf": [ + { + "$ref": "#/definitions/LinuxOSConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "See [AKS custom node configuration](https://docs.microsoft.com/azure/aks/custom-node-configuration) for more details." + }, + "maxCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum number of nodes for auto-scaling" + }, + "maxPods": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum number of pods that can run on a node." + }, + "minCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The minimum number of nodes for auto-scaling" + }, + "mode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "System", + "User" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "nodeLabels": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The node labels to be persisted across all nodes in agent pool." + }, + "nodePublicIPPrefixID": { + "type": "string", + "description": "This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName}" + }, + "nodeTaints": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule." + }, + "orchestratorVersion": { + "type": "string", + "description": "As a best practice, you should upgrade all node pools in an AKS cluster to the same Kubernetes version. The node pool version must have the same major version as the control plane. The node pool minor version must be within two minor versions of the control plane version. The node pool version cannot be greater than the control plane version. For more information see [upgrading a node pool](https://docs.microsoft.com/azure/aks/use-multiple-node-pools#upgrade-a-node-pool)." + }, + "osDiskSizeGB": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 2048 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "OS Disk Size in GB to be used to specify the disk size for every machine in the master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified." + }, + "osDiskType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Managed", + "Ephemeral" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "osSKU": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Ubuntu", + "CBLMariner" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "osType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Linux", + "Windows" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "podSubnetID": { + "type": "string", + "description": "If omitted, pod IPs are statically assigned on the node subnet (see vnetSubnetID for more details). This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}" + }, + "powerState": { + "oneOf": [ + { + "$ref": "#/definitions/PowerState" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the Power State of the cluster" + }, + "proximityPlacementGroupID": { + "type": "string", + "description": "The ID for Proximity Placement Group." + }, + "scaleDownMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Delete", + "Deallocate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This also effects the cluster autoscaler behavior. If not specified, it defaults to Delete." + }, + "scaleSetEvictionPolicy": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Delete", + "Deallocate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This cannot be specified unless the scaleSetPriority is 'Spot'. If not specified, the default is 'Delete'." + }, + "scaleSetPriority": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Spot", + "Regular" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Virtual Machine Scale Set priority. If not specified, the default is 'Regular'." + }, + "spotMaxPrice": { + "oneOf": [ + { + "type": "number", + "default": -1 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Possible values are any decimal value greater than zero or -1 which indicates the willingness to pay any on-demand price. For more details on spot pricing, see [spot VMs pricing](https://docs.microsoft.com/azure/virtual-machines/spot-vms#pricing)" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The tags to be persisted on the agent pool virtual machine scale set." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "VirtualMachineScaleSets", + "AvailabilitySet" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "upgradeSettings": { + "oneOf": [ + { + "$ref": "#/definitions/AgentPoolUpgradeSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Settings for upgrading an agentpool" + }, + "vmSize": { + "type": "string", + "description": "VM size availability varies by region. If a node contains insufficient compute resources (memory, cpu, etc) pods might fail to run correctly. For more details on restricted VM sizes, see: https://docs.microsoft.com/azure/aks/quotas-skus-regions" + }, + "vnetSubnetID": { + "type": "string", + "description": "If this is not specified, a VNET and subnet will be generated and used. If no podSubnetID is specified, this applies to nodes and pods, otherwise it applies to just nodes. This is of the form: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName}" + }, + "workloadRuntime": { + "oneOf": [ + { + "type": "string", + "enum": [ + "OCIContainer", + "WasmWasi" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "description": "Properties for the container service agent pool profile." + }, + "ManagedClusterAPIServerAccessProfile": { + "type": "object", + "properties": { + "authorizedIPRanges": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "IP ranges are specified in CIDR format, e.g. 137.117.106.88/29. This feature is not compatible with clusters that use Public IP Per Node, or clusters that are using a Basic Load Balancer. For more information see [API server authorized IP ranges](https://docs.microsoft.com/azure/aks/api-server-authorized-ip-ranges)." + }, + "disableRunCommand": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to disable run command for the cluster or not." + }, + "enablePrivateCluster": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "For more details, see [Creating a private AKS cluster](https://docs.microsoft.com/azure/aks/private-clusters)." + }, + "enablePrivateClusterPublicFQDN": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to create additional public FQDN for private cluster or not." + }, + "privateDNSZone": { + "type": "string", + "description": "The default is System. For more details see [configure private DNS zone](https://docs.microsoft.com/azure/aks/private-clusters#configure-private-dns-zone). Allowed values are 'system' and 'none'." + } + }, + "description": "Access profile for managed cluster API server." + }, + "ManagedClusterAutoUpgradeProfile": { + "type": "object", + "properties": { + "upgradeChannel": { + "oneOf": [ + { + "type": "string", + "enum": [ + "rapid", + "stable", + "patch", + "node-image", + "none" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "For more information see [setting the AKS cluster auto-upgrade channel](https://docs.microsoft.com/azure/aks/upgrade-cluster#set-auto-upgrade-channel)." + } + }, + "description": "Auto upgrade profile for a managed cluster." + }, + "ManagedClusterHTTPProxyConfig": { + "type": "object", + "properties": { + "httpProxy": { + "type": "string", + "description": "The HTTP proxy server endpoint to use." + }, + "httpsProxy": { + "type": "string", + "description": "The HTTPS proxy server endpoint to use." + }, + "noProxy": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The endpoints that should not go through proxy." + }, + "trustedCa": { + "type": "string", + "description": "Alternative CA cert to use for connecting to proxy servers." + } + }, + "description": "Cluster HTTP proxy configuration." + }, + "ManagedClusterIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SystemAssigned", + "UserAssigned", + "None" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "For more information see [use managed identities in AKS](https://docs.microsoft.com/azure/aks/use-managed-identity)." + }, + "userAssignedIdentities": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ManagedServiceIdentityUserAssignedIdentitiesValue" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The keys must be ARM resource IDs in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the managed cluster." + }, + "ManagedClusterLoadBalancerProfile": { + "type": "object", + "properties": { + "allocatedOutboundPorts": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 64000, + "default": "0" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The desired number of allocated SNAT ports per VM. Allowed values are in the range of 0 to 64000 (inclusive). The default value is 0 which results in Azure dynamically allocating ports." + }, + "effectiveOutboundIPs": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The effective outbound IP resources of the cluster load balancer." + }, + "enableMultipleStandardLoadBalancers": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enable multiple standard load balancers per AKS cluster or not." + }, + "idleTimeoutInMinutes": { + "oneOf": [ + { + "type": "integer", + "minimum": 4, + "maximum": 120, + "default": "30" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 30 minutes." + }, + "managedOutboundIPs": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterLoadBalancerProfileManagedOutboundIPs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Desired managed outbound IPs for the cluster load balancer." + }, + "outboundIPPrefixes": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterLoadBalancerProfileOutboundIPPrefixes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Desired outbound IP Prefix resources for the cluster load balancer." + }, + "outboundIPs": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterLoadBalancerProfileOutboundIPs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Desired outbound IP resources for the cluster load balancer." + } + }, + "description": "Profile of the managed cluster load balancer." + }, + "ManagedClusterLoadBalancerProfileManagedOutboundIPs": { + "type": "object", + "properties": { + "count": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 100, + "default": "1" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The desired number of IPv4 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. " + }, + "countIPv6": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 100, + "default": "0" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The desired number of IPv6 outbound IPs created/managed by Azure for the cluster load balancer. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. " + } + }, + "description": "Desired managed outbound IPs for the cluster load balancer." + }, + "ManagedClusterLoadBalancerProfileOutboundIPPrefixes": { + "type": "object", + "properties": { + "publicIPPrefixes": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A list of public IP prefix resources." + } + }, + "description": "Desired outbound IP Prefix resources for the cluster load balancer." + }, + "ManagedClusterLoadBalancerProfileOutboundIPs": { + "type": "object", + "properties": { + "publicIPs": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A list of public IP resources." + } + }, + "description": "Desired outbound IP resources for the cluster load balancer." + }, + "ManagedClusterManagedOutboundIPProfile": { + "type": "object", + "properties": { + "count": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 16, + "default": "1" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The desired number of outbound IPs created/managed by Azure. Allowed values must be in the range of 1 to 16 (inclusive). The default value is 1. " + } + }, + "description": "Profile of the managed outbound IP resources of the managed cluster." + }, + "ManagedClusterNATGatewayProfile": { + "type": "object", + "properties": { + "effectiveOutboundIPs": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceReference" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The effective outbound IP resources of the cluster NAT gateway." + }, + "idleTimeoutInMinutes": { + "oneOf": [ + { + "type": "integer", + "minimum": 4, + "maximum": 120, + "default": "4" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Desired outbound flow idle timeout in minutes. Allowed values are in the range of 4 to 120 (inclusive). The default value is 4 minutes." + }, + "managedOutboundIPProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterManagedOutboundIPProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Profile of the managed outbound IP resources of the managed cluster." + } + }, + "description": "Profile of the managed cluster NAT gateway." + }, + "ManagedClusterPodIdentity": { + "type": "object", + "properties": { + "bindingSelector": { + "type": "string", + "description": "The binding selector to use for the AzureIdentityBinding resource." + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/UserAssignedIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Details about a user assigned identity." + }, + "name": { + "type": "string", + "description": "The name of the pod identity." + }, + "namespace": { + "type": "string", + "description": "The namespace of the pod identity." + } + }, + "required": [ + "identity", + "name", + "namespace" + ], + "description": "Details about the pod identity assigned to the Managed Cluster." + }, + "ManagedClusterPodIdentityException": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the pod identity exception." + }, + "namespace": { + "type": "string", + "description": "The namespace of the pod identity exception." + }, + "podLabels": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The pod labels to match." + } + }, + "required": [ + "name", + "namespace", + "podLabels" + ], + "description": "See [disable AAD Pod Identity for a specific Pod/Application](https://azure.github.io/aad-pod-identity/docs/configure/application_exception/) for more details." + }, + "ManagedClusterPodIdentityProfile": { + "type": "object", + "properties": { + "allowNetworkPluginKubenet": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Running in Kubenet is disabled by default due to the security related nature of AAD Pod Identity and the risks of IP spoofing. See [using Kubenet network plugin with AAD Pod Identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity#using-kubenet-network-plugin-with-azure-active-directory-pod-managed-identities) for more information." + }, + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether the pod identity addon is enabled." + }, + "userAssignedIdentities": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterPodIdentity" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The pod identities to use in the cluster." + }, + "userAssignedIdentityExceptions": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterPodIdentityException" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The pod identity exceptions to allow." + } + }, + "description": "See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration." + }, + "ManagedClusterProperties": { + "type": "object", + "properties": { + "aadProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterAADProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "For more details see [managed AAD on AKS](https://docs.microsoft.com/azure/aks/managed-aad)." + }, + "addonProfiles": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/ManagedClusterAddonProfile" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The profile of managed cluster add-on." + }, + "agentPoolProfiles": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedClusterAgentPoolProfile" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The agent pool properties." + }, + "apiServerAccessProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterAPIServerAccessProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Access profile for managed cluster API server." + }, + "autoScalerProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterPropertiesAutoScalerProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Parameters to be applied to the cluster-autoscaler when enabled" + }, + "autoUpgradeProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterAutoUpgradeProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Auto upgrade profile for a managed cluster." + }, + "disableLocalAccounts": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If set to true, getting static credentials will be disabled for this cluster. This must only be used on Managed Clusters that are AAD enabled. For more details see [disable local accounts](https://docs.microsoft.com/azure/aks/managed-aad#disable-local-accounts-preview)." + }, + "diskEncryptionSetID": { + "type": "string", + "description": "This is of the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/diskEncryptionSets/{encryptionSetName}'" + }, + "dnsPrefix": { + "type": "string", + "description": "This cannot be updated once the Managed Cluster has been created." + }, + "enablePodSecurityPolicy": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "(DEPRECATING) Whether to enable Kubernetes pod security policy (preview). This feature is set for removal on October 15th, 2020. Learn more at aka.ms/aks/azpodpolicy." + }, + "enableRBAC": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable Kubernetes Role-Based Access Control." + }, + "fqdnSubdomain": { + "type": "string", + "description": "This cannot be updated once the Managed Cluster has been created." + }, + "httpProxyConfig": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterHTTPProxyConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cluster HTTP proxy configuration." + }, + "identityProfile": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identities associated with the cluster." + }, + "kubernetesVersion": { + "type": "string", + "description": "When you upgrade a supported AKS cluster, Kubernetes minor versions cannot be skipped. All upgrades must be performed sequentially by major version number. For example, upgrades between 1.14.x -> 1.15.x or 1.15.x -> 1.16.x are allowed, however 1.14.x -> 1.16.x is not allowed. See [upgrading an AKS cluster](https://docs.microsoft.com/azure/aks/upgrade-cluster) for more details." + }, + "linuxProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ContainerServiceLinuxProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Profile for Linux VMs in the container service cluster." + }, + "networkProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ContainerServiceNetworkProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Profile of network configuration." + }, + "nodeResourceGroup": { + "type": "string", + "description": "The name of the resource group containing agent pool nodes." + }, + "podIdentityProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterPodIdentityProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "See [use AAD pod identity](https://docs.microsoft.com/azure/aks/use-azure-ad-pod-identity) for more details on pod identity integration." + }, + "privateLinkResources": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateLinkResource" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Private link resources associated with the cluster." + }, + "publicNetworkAccess": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Allow or deny public network access for AKS." + }, + "securityProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterSecurityProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Security profile for the container service cluster." + }, + "servicePrincipalProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterServicePrincipalProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs." + }, + "windowsProfile": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterWindowsProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Profile for Windows VMs in the managed cluster." + } + }, + "description": "Properties of the managed cluster." + }, + "ManagedClusterPropertiesAutoScalerProfile": { + "type": "object", + "properties": { + "balance-similar-node-groups": { + "type": "string", + "description": "Valid values are 'true' and 'false'" + }, + "expander": { + "oneOf": [ + { + "type": "string", + "enum": [ + "least-waste", + "most-pods", + "priority", + "random" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If not specified, the default is 'random'. See [expanders](https://github.com/kubernetes/autoscaler/blob/master/cluster-autoscaler/FAQ.md#what-are-expanders) for more information." + }, + "max-empty-bulk-delete": { + "type": "string", + "description": "The default is 10." + }, + "max-graceful-termination-sec": { + "type": "string", + "description": "The default is 600." + }, + "max-node-provision-time": { + "type": "string", + "description": "The default is '15m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + }, + "max-total-unready-percentage": { + "type": "string", + "description": "The default is 45. The maximum is 100 and the minimum is 0." + }, + "new-pod-scale-up-delay": { + "type": "string", + "description": "For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. The default is '0s'. Values must be an integer followed by a unit ('s' for seconds, 'm' for minutes, 'h' for hours, etc)." + }, + "ok-total-unready-count": { + "type": "string", + "description": "This must be an integer. The default is 3." + }, + "scale-down-delay-after-add": { + "type": "string", + "description": "The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + }, + "scale-down-delay-after-delete": { + "type": "string", + "description": "The default is the scan-interval. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + }, + "scale-down-delay-after-failure": { + "type": "string", + "description": "The default is '3m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + }, + "scale-down-unneeded-time": { + "type": "string", + "description": "The default is '10m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + }, + "scale-down-unready-time": { + "type": "string", + "description": "The default is '20m'. Values must be an integer followed by an 'm'. No unit of time other than minutes (m) is supported." + }, + "scale-down-utilization-threshold": { + "type": "string", + "description": "The default is '0.5'." + }, + "scan-interval": { + "type": "string", + "description": "The default is '10'. Values must be an integer number of seconds." + }, + "skip-nodes-with-local-storage": { + "type": "string", + "description": "The default is true." + }, + "skip-nodes-with-system-pods": { + "type": "string", + "description": "The default is true." + } + }, + "description": "Parameters to be applied to the cluster-autoscaler when enabled" + }, + "ManagedClusterSecurityProfile": { + "type": "object", + "properties": { + "azureDefender": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterSecurityProfileAzureDefender" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Defender settings for the security profile." + } + }, + "description": "Security profile for the container service cluster." + }, + "ManagedClusterSecurityProfileAzureDefender": { + "type": "object", + "properties": { + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable Azure Defender" + }, + "logAnalyticsWorkspaceResourceId": { + "type": "string", + "description": "Resource ID of the Log Analytics workspace to be associated with Azure Defender. When Azure Defender is enabled, this field is required and must be a valid workspace resource ID. When Azure Defender is disabled, leave the field empty." + } + }, + "description": "Azure Defender settings for the security profile." + }, + "ManagedClusterServicePrincipalProfile": { + "type": "object", + "properties": { + "clientId": { + "type": "string", + "description": "The ID for the service principal." + }, + "secret": { + "type": "string", + "description": "The secret password associated with the service principal in plain text." + } + }, + "required": [ + "clientId" + ], + "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs." + }, + "ManagedClusterSKU": { + "type": "object", + "properties": { + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Basic" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of a managed cluster SKU." + }, + "tier": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Paid", + "Free" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If not specified, the default is 'Free'. See [uptime SLA](https://docs.microsoft.com/azure/aks/uptime-sla) for more details." + } + }, + "description": "The SKU of a Managed Cluster." + }, + "managedClusters_agentPools_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the agent pool." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedClusterAgentPoolProfileProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties for the container service agent pool profile." + }, + "type": { + "type": "string", + "enum": [ + "agentPools" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/managedClusters/agentPools" + }, + "managedClusters_maintenanceConfigurations_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the maintenance configuration." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MaintenanceConfigurationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties used to configure planned maintenance for a Managed Cluster." + }, + "type": { + "type": "string", + "enum": [ + "maintenanceConfigurations" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/managedClusters/maintenanceConfigurations" + }, + "managedClusters_privateEndpointConnections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a private endpoint connection." + }, + "type": { + "type": "string", + "enum": [ + "privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/managedClusters/privateEndpointConnections" + }, + "ManagedClusterWindowsProfile": { + "type": "object", + "properties": { + "adminPassword": { + "type": "string", + "description": "Specifies the password of the administrator account.

**Minimum-length:** 8 characters

**Max-length:** 123 characters

**Complexity requirements:** 3 out of 4 conditions below need to be fulfilled
Has lower characters
Has upper characters
Has a digit
Has a special character (Regex match [\\W_])

**Disallowed values:** \"abc@123\", \"P@$$w0rd\", \"P@ssw0rd\", \"P@ssword123\", \"Pa$$word\", \"pass@word1\", \"Password!\", \"Password1\", \"Password22\", \"iloveyou!\"" + }, + "adminUsername": { + "type": "string", + "description": "Specifies the name of the administrator account.

**Restriction:** Cannot end in \".\"

**Disallowed values:** \"administrator\", \"admin\", \"user\", \"user1\", \"test\", \"user2\", \"test1\", \"user3\", \"admin1\", \"1\", \"123\", \"a\", \"actuser\", \"adm\", \"admin2\", \"aspnet\", \"backup\", \"console\", \"david\", \"guest\", \"john\", \"owner\", \"root\", \"server\", \"sql\", \"support\", \"support_388945a0\", \"sys\", \"test2\", \"test3\", \"user4\", \"user5\".

**Minimum-length:** 1 character

**Max-length:** 20 characters" + }, + "enableCSIProxy": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "For more details on CSI proxy, see the [CSI proxy GitHub repo](https://github.com/kubernetes-csi/csi-proxy)." + }, + "gmsaProfile": { + "oneOf": [ + { + "$ref": "#/definitions/WindowsGmsaProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Windows gMSA Profile in the managed cluster." + }, + "licenseType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "Windows_Server" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The license type to use for Windows VMs. See [Azure Hybrid User Benefits](https://azure.microsoft.com/pricing/hybrid-benefit/faq/) for more details." + } + }, + "required": [ + "adminUsername" + ], + "description": "Profile for Windows VMs in the managed cluster." + }, + "ManagedServiceIdentityUserAssignedIdentitiesValue": { + "type": "object", + "properties": {} + }, + "PowerState": { + "type": "object", + "properties": { + "code": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Running", + "Stopped" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tells whether the cluster is Running or Stopped." + } + }, + "description": "Describes the Power State of the cluster" + }, + "PrivateEndpoint": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The resource ID of the private endpoint" + } + }, + "description": "Private endpoint which a connection belongs to." + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "privateEndpoint": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpoint" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Private endpoint which a connection belongs to." + }, + "privateLinkServiceConnectionState": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The state of a private link service connection." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of a private endpoint connection." + }, + "PrivateLinkResource": { + "type": "object", + "properties": { + "groupId": { + "type": "string", + "description": "The group ID of the resource." + }, + "id": { + "type": "string", + "description": "The ID of the private link resource." + }, + "name": { + "type": "string", + "description": "The name of the private link resource." + }, + "requiredMembers": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The RequiredMembers of the resource" + }, + "type": { + "type": "string", + "description": "The resource type." + } + }, + "description": "A private link resource" + }, + "PrivateLinkServiceConnectionState": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "The private link service connection description." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The private link service connection status." + } + }, + "description": "The state of a private link service connection." + }, + "ResourceReference": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The fully qualified Azure resource id." + } + }, + "description": "A reference to an Azure resource." + }, + "SnapshotProperties": { + "type": "object", + "properties": { + "creationData": { + "oneOf": [ + { + "$ref": "#/definitions/CreationData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data used when creating a target resource from a source resource." + }, + "snapshotType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "NodePool" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "description": "Properties used to configure a node pool snapshot." + }, + "SysctlConfig": { + "type": "object", + "properties": { + "fsAioMaxNr": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting fs.aio-max-nr." + }, + "fsFileMax": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting fs.file-max." + }, + "fsInotifyMaxUserWatches": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting fs.inotify.max_user_watches." + }, + "fsNrOpen": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting fs.nr_open." + }, + "kernelThreadsMax": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting kernel.threads-max." + }, + "netCoreNetdevMaxBacklog": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.core.netdev_max_backlog." + }, + "netCoreOptmemMax": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.core.optmem_max." + }, + "netCoreRmemDefault": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.core.rmem_default." + }, + "netCoreRmemMax": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.core.rmem_max." + }, + "netCoreSomaxconn": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.core.somaxconn." + }, + "netCoreWmemDefault": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.core.wmem_default." + }, + "netCoreWmemMax": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.core.wmem_max." + }, + "netIpv4IpLocalPortRange": { + "type": "string", + "description": "Sysctl setting net.ipv4.ip_local_port_range." + }, + "netIpv4NeighDefaultGcThresh1": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh1." + }, + "netIpv4NeighDefaultGcThresh2": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh2." + }, + "netIpv4NeighDefaultGcThresh3": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.neigh.default.gc_thresh3." + }, + "netIpv4TcpFinTimeout": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.tcp_fin_timeout." + }, + "netIpv4TcpkeepaliveIntvl": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.tcp_keepalive_intvl." + }, + "netIpv4TcpKeepaliveProbes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.tcp_keepalive_probes." + }, + "netIpv4TcpKeepaliveTime": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.tcp_keepalive_time." + }, + "netIpv4TcpMaxSynBacklog": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.tcp_max_syn_backlog." + }, + "netIpv4TcpMaxTwBuckets": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.tcp_max_tw_buckets." + }, + "netIpv4TcpTwReuse": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.ipv4.tcp_tw_reuse." + }, + "netNetfilterNfConntrackBuckets": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.netfilter.nf_conntrack_buckets." + }, + "netNetfilterNfConntrackMax": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting net.netfilter.nf_conntrack_max." + }, + "vmMaxMapCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting vm.max_map_count." + }, + "vmSwappiness": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting vm.swappiness." + }, + "vmVfsCachePressure": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sysctl setting vm.vfs_cache_pressure." + } + }, + "description": "Sysctl settings for Linux agent nodes." + }, + "TimeInWeek": { + "type": "object", + "properties": { + "day": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The day of the week." + }, + "hourSlots": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "integer" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Each integer hour represents a time range beginning at 0m after the hour ending at the next hour (non-inclusive). 0 corresponds to 00:00 UTC, 23 corresponds to 23:00 UTC. Specifying [0, 1] means the 00:00 - 02:00 UTC time range." + } + }, + "description": "Time in a week." + }, + "TimeSpan": { + "type": "object", + "properties": { + "end": { + "type": "string", + "format": "date-time", + "description": "The end of a time span" + }, + "start": { + "type": "string", + "format": "date-time", + "description": "The start of a time span" + } + }, + "description": "For example, between 2021-05-25T13:00:00Z and 2021-05-25T14:00:00Z." + }, + "UserAssignedIdentity": { + "type": "object", + "properties": { + "clientId": { + "type": "string", + "description": "The client ID of the user assigned identity." + }, + "objectId": { + "type": "string", + "description": "The object ID of the user assigned identity." + }, + "resourceId": { + "type": "string", + "description": "The resource ID of the user assigned identity." + } + }, + "description": "Details about a user assigned identity." + }, + "WindowsGmsaProfile": { + "type": "object", + "properties": { + "dnsServer": { + "type": "string", + "description": "Specifies the DNS server for Windows gMSA.

Set it to empty if you have configured the DNS server in the vnet which is used to create the managed cluster." + }, + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether to enable Windows gMSA in the managed cluster." + }, + "rootDomainName": { + "type": "string", + "description": "Specifies the root domain name for Windows gMSA.

Set it to empty if you have configured the DNS server in the vnet which is used to create the managed cluster." + } + }, + "description": "Windows gMSA Profile in the managed cluster." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index aeb91e74d0..d944f0c2cd 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -4321,6 +4321,21 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.ContainerService.json#/resourceDefinitions/snapshots" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.ContainerService.json#/resourceDefinitions/managedClusters" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.ContainerService.json#/resourceDefinitions/managedClusters_agentPools" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.ContainerService.json#/resourceDefinitions/managedClusters_maintenanceConfigurations" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.ContainerService.json#/resourceDefinitions/managedClusters_privateEndpointConnections" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.ContainerService.json#/resourceDefinitions/snapshots" + }, { "$ref": "https://schema.management.azure.com/schemas/2018-05-31/Microsoft.CostManagement.json#/resourceDefinitions/reportconfigs" }, From 6de868f9a05edd3b4efab07da2ef2bf3de6a2ab5 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 19 Nov 2021 09:09:14 +0000 Subject: [PATCH 07/23] Update resource list --- generator/resources.json | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index f0d490b18a..87db1c3eda 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -132,6 +132,9 @@ "2019-05-05-preview", "2021-08-08-preview" ], + "Microsoft.AlertsManagement/prometheusRuleGroups": [ + "2021-07-22-preview" + ], "Microsoft.AlertsManagement/resourceHealthAlertRules": [ "2020-08-04-preview" ], @@ -2073,7 +2076,8 @@ "2021-05-01", "2021-07-01", "2021-08-01", - "2021-09-01" + "2021-09-01", + "2021-10-01" ], "Microsoft.ContainerService/managedClusters/agentPools": [ "2019-02-01", @@ -2096,7 +2100,8 @@ "2021-05-01", "2021-07-01", "2021-08-01", - "2021-09-01" + "2021-09-01", + "2021-10-01" ], "Microsoft.ContainerService/managedClusters/maintenanceConfigurations": [ "2020-12-01", @@ -2105,7 +2110,8 @@ "2021-05-01", "2021-07-01", "2021-08-01", - "2021-09-01" + "2021-09-01", + "2021-10-01" ], "Microsoft.ContainerService/managedClusters/privateEndpointConnections": [ "2020-06-01", @@ -2118,7 +2124,8 @@ "2021-05-01", "2021-07-01", "2021-08-01", - "2021-09-01" + "2021-09-01", + "2021-10-01" ], "Microsoft.ContainerService/openShiftManagedClusters": [ "2018-09-30-preview", @@ -2128,7 +2135,8 @@ ], "Microsoft.ContainerService/snapshots": [ "2021-08-01", - "2021-09-01" + "2021-09-01", + "2021-10-01" ], "Microsoft.CostManagement/budgets": [ "2019-04-01-preview" From 889b5dbc4866c8acc928cb9e1161aaaa553b175e Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 19 Nov 2021 14:01:19 +0000 Subject: [PATCH 08/23] Generated report --- onboarded-report/result.json | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/onboarded-report/result.json b/onboarded-report/result.json index a0ab2946b0..fa54a08ae1 100644 --- a/onboarded-report/result.json +++ b/onboarded-report/result.json @@ -811,6 +811,12 @@ ], "onboarded": [] }, + { + "basePath": "orbital/resource-manager", + "onboardedToAutogen": "yes", + "missing": [], + "onboarded": [] + }, { "basePath": "peering/resource-manager", "onboardedToAutogen": "yes", @@ -1067,6 +1073,12 @@ "missing": [], "onboarded": [] }, + { + "basePath": "solutions/resource-manager", + "onboardedToAutogen": "yes", + "missing": [], + "onboarded": [] + }, { "basePath": "sql/resource-manager", "onboardedToAutogen": "yes", From 73b793910a7b91af2013fde7860df607d32dcc58 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 23 Nov 2021 08:58:10 +0000 Subject: [PATCH 09/23] Update resource list --- generator/resources.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index 87db1c3eda..9b234502c8 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -1115,11 +1115,13 @@ ], "Microsoft.AutonomousDevelopmentPlatform/accounts": [ "2020-07-01-preview", - "2021-02-01-preview" + "2021-02-01-preview", + "2021-11-01-preview" ], "Microsoft.AutonomousDevelopmentPlatform/accounts/dataPools": [ "2020-07-01-preview", - "2021-02-01-preview" + "2021-02-01-preview", + "2021-11-01-preview" ], "Microsoft.AzureActiveDirectory/b2cDirectories": [ "2019-01-01-preview" From 99ffff3c6ab2da41e5da96667b452da15d53014f Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 24 Nov 2021 09:06:42 +0000 Subject: [PATCH 10/23] Autogenerate schemas --- .../2019-08-01/tenantDeploymentTemplate.json | 3 + schemas/2021-10-01/Microsoft.Billing.json | 225 ++++++++++++++++++ 2 files changed, 228 insertions(+) create mode 100644 schemas/2021-10-01/Microsoft.Billing.json diff --git a/schemas/2019-08-01/tenantDeploymentTemplate.json b/schemas/2019-08-01/tenantDeploymentTemplate.json index c22a002de2..bf92aab2e3 100644 --- a/schemas/2019-08-01/tenantDeploymentTemplate.json +++ b/schemas/2019-08-01/tenantDeploymentTemplate.json @@ -610,6 +610,9 @@ { "$ref": "https://schema.management.azure.com/schemas/2020-11-01-preview/Microsoft.Billing.json#/tenant_resourceDefinitions/promotions" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.Billing.json#/tenant_resourceDefinitions/billingAccounts_billingSubscriptionAliases" + }, { "$ref": "https://schema.management.azure.com/schemas/2019-04-01/Microsoft.Capacity.json#/tenant_resourceDefinitions/reservationOrders" }, diff --git a/schemas/2021-10-01/Microsoft.Billing.json b/schemas/2021-10-01/Microsoft.Billing.json new file mode 100644 index 0000000000..3814364b4c --- /dev/null +++ b/schemas/2021-10-01/Microsoft.Billing.json @@ -0,0 +1,225 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.Billing.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.Billing", + "description": "Microsoft Billing Resource Types", + "resourceDefinitions": {}, + "tenant_resourceDefinitions": { + "billingAccounts_billingSubscriptionAliases": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "name": { + "type": "string", + "description": "The ID that uniquely identifies a subscription alias." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BillingSubscriptionAliasProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Billing subscription alias properties." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Billing/billingAccounts/billingSubscriptionAliases" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Billing/billingAccounts/billingSubscriptionAliases" + } + }, + "definitions": { + "Amount": { + "type": "object", + "properties": {}, + "description": "The amount." + }, + "BillingSubscriptionAliasProperties": { + "type": "object", + "properties": { + "autoRenew": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Off", + "On" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether auto renewal is turned on or off for a subscription." + }, + "beneficiaryTenantId": { + "type": "string", + "description": "The provisioning tenant of the subscription." + }, + "billingFrequency": { + "type": "string", + "description": "The billing frequency of the subscription in the ISO8601 format. Example: P1M, P3M, P1Y" + }, + "billingProfileId": { + "type": "string", + "description": "The ID of the billing profile to which the subscription is billed. This field is only applicable for Microsoft Customer Agreement billing accounts." + }, + "consumptionCostCenter": { + "type": "string", + "description": "The cost center applied to the subscription. This field is only available for consumption subscriptions of Microsoft Customer Agreement Type billing accounts." + }, + "customerId": { + "type": "string", + "description": "The ID of the customer for whom the subscription was created. The field is applicable only for Microsoft Partner Agreement billing accounts." + }, + "displayName": { + "type": "string", + "description": "The name of the subscription." + }, + "enrollmentAccountSubscriptionDetails": { + "oneOf": [ + { + "$ref": "#/definitions/EnrollmentAccountSubscriptionDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The billing properties that can be modified. This field is available only for the Enterprise Agreement billing accounts." + }, + "invoiceSectionId": { + "type": "string", + "description": "The ID of the invoice section to which the subscription is billed. The field is applicable only for Microsoft Partner Agreement billing accounts." + }, + "lastMonthCharges": { + "oneOf": [ + { + "$ref": "#/definitions/Amount" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The amount." + }, + "monthToDateCharges": { + "oneOf": [ + { + "$ref": "#/definitions/Amount" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The amount." + }, + "nextBillingCycleDetails": { + "oneOf": [ + { + "$ref": "#/definitions/NextBillingCycleDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The next billing cycle details of the subscription." + }, + "productTypeId": { + "type": "string", + "description": "The ID of the product for which the subscription is purchased" + }, + "quantity": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of licenses purchased for the subscription" + }, + "renewalTermDetails": { + "oneOf": [ + { + "$ref": "#/definitions/RenewalTermDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The term details of the subscription at renewal." + }, + "reseller": { + "oneOf": [ + { + "$ref": "#/definitions/Reseller" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Details of the reseller." + }, + "skuId": { + "type": "string", + "description": "The SKU ID of the product for which the subscription is purchased. This field is only available for Microsoft Customer Agreement billing accounts." + }, + "termDuration": { + "type": "string", + "description": "The duration for which you can use the subscription. Example P1Y and P1M" + } + }, + "description": "Billing subscription alias properties." + }, + "EnrollmentAccountSubscriptionDetails": { + "type": "object", + "properties": {}, + "description": "The billing properties that can be modified. This field is available only for the Enterprise Agreement billing accounts." + }, + "NextBillingCycleDetails": { + "type": "object", + "properties": {}, + "description": "The next billing cycle details of the subscription." + }, + "RenewalTermDetails": { + "type": "object", + "properties": { + "quantity": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of licenses" + } + }, + "description": "The term details of the subscription at renewal." + }, + "Reseller": { + "type": "object", + "properties": {}, + "description": "Details of the reseller." + } + } +} \ No newline at end of file From 7affd62be3c9651baeef0efe19756d78b5b59d1a Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 24 Nov 2021 09:06:58 +0000 Subject: [PATCH 11/23] Update resource list --- generator/resources.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/generator/resources.json b/generator/resources.json index 9b234502c8..c7c1f08ca0 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -1298,6 +1298,9 @@ "Microsoft.Billing/billingAccounts/billingRoleAssignments": [ "2019-10-01-preview" ], + "Microsoft.Billing/billingAccounts/billingSubscriptionAliases": [ + "2021-10-01" + ], "Microsoft.Billing/billingAccounts/customers/policies": [ "2019-10-01-preview", "2020-05-01" From 890240ba9085e9664cce1af5155e5afd97092511 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 24 Nov 2021 13:58:56 +0000 Subject: [PATCH 12/23] Autogenerate schemas --- schemas/2014-04-01/Microsoft.Sql.json | 6 +- .../Microsoft.ServiceFabric.json | 2556 ++++++++++++++ schemas/2021-02-01-preview/Microsoft.Sql.json | 6 +- schemas/2021-05-01-preview/Microsoft.Sql.json | 12 +- .../2021-05-01/Microsoft.ServiceFabric.json | 2634 ++++++++++++++ .../Microsoft.ServiceFabric.json | 2791 +++++++++++++++ .../Microsoft.ServiceFabric.json | 3064 +++++++++++++++++ schemas/2021-11-01/Microsoft.ServiceBus.json | 2218 ++++++++++++ .../Microsoft.VideoIndexer.json | 169 + schemas/common/autogeneratedResources.json | 111 + 10 files changed, 13555 insertions(+), 12 deletions(-) create mode 100644 schemas/2021-01-01-preview/Microsoft.ServiceFabric.json create mode 100644 schemas/2021-05-01/Microsoft.ServiceFabric.json create mode 100644 schemas/2021-07-01-preview/Microsoft.ServiceFabric.json create mode 100644 schemas/2021-11-01-preview/Microsoft.ServiceFabric.json create mode 100644 schemas/2021-11-01/Microsoft.ServiceBus.json create mode 100644 schemas/2021-11-10-preview/Microsoft.VideoIndexer.json diff --git a/schemas/2014-04-01/Microsoft.Sql.json b/schemas/2014-04-01/Microsoft.Sql.json index f1f68e98a1..08c70f65ac 100644 --- a/schemas/2014-04-01/Microsoft.Sql.json +++ b/schemas/2014-04-01/Microsoft.Sql.json @@ -36,9 +36,6 @@ "type": "array", "items": { "oneOf": [ - { - "$ref": "#/definitions/servers_connectionPolicies_childResource" - }, { "$ref": "#/definitions/servers_databases_childResource" }, @@ -48,6 +45,9 @@ { "$ref": "#/definitions/servers_communicationLinks_childResource" }, + { + "$ref": "#/definitions/servers_connectionPolicies_childResource" + }, { "$ref": "#/definitions/servers_firewallRules_childResource" }, diff --git a/schemas/2021-01-01-preview/Microsoft.ServiceFabric.json b/schemas/2021-01-01-preview/Microsoft.ServiceFabric.json new file mode 100644 index 0000000000..8f58b147b2 --- /dev/null +++ b/schemas/2021-01-01-preview/Microsoft.ServiceFabric.json @@ -0,0 +1,2556 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-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": [ + "2021-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_applicationTypes_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": [ + { + "$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/managedClusters" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedClusters" + }, + "managedclusters_applications": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-01-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": "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/managedclusters_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/managedclusters/applications" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applications" + }, + "managedclusters_applications_services": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applications/services" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applications/services" + }, + "managedclusters_applicationTypes": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters_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/managedclusters/applicationTypes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applicationTypes" + }, + "managedclusters_applicationTypes_versions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applicationTypes/versions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applicationTypes/versions" + }, + "managedClusters_nodeTypes": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-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." + }, + "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/managedClusters/nodeTypes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedClusters/nodeTypes" + } + }, + "definitions": { + "ApplicationHealthPolicy": { + "type": "object", + "properties": { + "considerWarningAsError": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$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/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" + }, + "maxPercentUnhealthyDeployedApplications": { + "oneOf": [ + { + "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" + }, + "serviceTypeHealthPolicyMap": { + "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" + } + }, + "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", + "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." + }, + "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." + }, + "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." + }, + "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." + }, + "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" + ], + "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", + "properties": { + "applicationHealthPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/ApplicationHealthPolicy" + }, + { + "$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)." + }, + "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": [ + { + "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." + }, + "rollingUpgradeMonitoringPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/RollingUpgradeMonitoringPolicy" + }, + { + "$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": [ + "Monitored", + "UnmonitoredAuto" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "upgradeReplicaSetCheckTimeout": { + "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)." + } + }, + "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" + ] + }, + "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": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." + }, + "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": "List of add-on features to enable on the cluster." + }, + "adminPassword": { + "type": "string", + "format": "password", + "description": "VM admin user password." + }, + "adminUserName": { + "type": "string", + "description": "VM admin user name." + }, + "allowRdpAccess": { + "oneOf": [ + { + "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." + }, + "applicationTypeVersionsCleanupPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "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 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**." + }, + "clusterUpgradeCadence": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Wave0", + "Wave1", + "Wave2" + ] + }, + { + "$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." + }, + "dnsName": { + "type": "string", + "description": "The cluster dns name." + }, + "enableAutoOSUpgrade": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "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": "Load balancing rules that are applied to the public load balancer of the cluster." + }, + "networkSecurityRules": { + "oneOf": [ + { + "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." + } + }, + "required": [ + "adminUserName", + "dnsName" + ], + "description": "Describes the managed cluster resource properties." + }, + "managedclusters_applications_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-01-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": "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/managedclusters/applications" + }, + "managedclusters_applications_services_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applications/services" + }, + "managedclusters_applicationTypes_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applicationTypes" + }, + "managedclusters_applicationTypes_versions_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-01-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applicationTypes/versions" + }, + "managedClusters_nodeTypes_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-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." + }, + "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": [ + "nodeTypes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedClusters/nodeTypes" + }, + "ManagedIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "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." + }, + "NetworkSecurityRule": { + "type": "object", + "properties": { + "access": { + "oneOf": [ + { + "type": "string", + "enum": [ + "allow", + "deny" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The network traffic is allowed or denied." + }, + "description": { + "type": "string", + "description": "Network security rule description." + }, + "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." + }, + "destinationPortRanges": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The destination port ranges." + }, + "direction": { + "oneOf": [ + { + "type": "string", + "enum": [ + "inbound", + "outbound" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Network security rule direction." + }, + "name": { + "type": "string", + "description": "Network security rule name." + }, + "priority": { + "oneOf": [ + { + "type": "integer", + "minimum": 1000, + "maximum": 3000 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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": [ + "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." + }, + "sourceAddressPrefixes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The CIDR or source IP ranges." + }, + "sourcePortRanges": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The source port ranges." + } + }, + "required": [ + "access", + "direction", + "name", + "priority", + "protocol" + ], + "description": "Describes a network security rule." + }, + "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." + }, + "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." + }, + "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." + }, + "Partition": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/SingletonPartitionScheme" + } + ], + "properties": {}, + "description": "Describes how the service is partitioned." + }, + "RollingUpgradeMonitoringPolicy": { + "type": "object", + "properties": { + "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 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\"." + }, + "upgradeTimeout": { + "type": "string", + "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": [ + "failureAction", + "healthCheckRetryTimeout", + "healthCheckStableDuration", + "healthCheckWaitDuration", + "upgradeDomainTimeout", + "upgradeTimeout" + ], + "description": "The policy used for monitoring the application upgrade" + }, + "ScalingMechanism": { + "type": "object", + "properties": {}, + "description": "Describes the mechanism for performing a scaling operation." + }, + "ScalingPolicy": { + "type": "object", + "properties": { + "scalingMechanism": { + "oneOf": [ + { + "$ref": "#/definitions/ScalingMechanism" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the mechanism for performing a scaling operation." + }, + "scalingTrigger": { + "oneOf": [ + { + "$ref": "#/definitions/ScalingTrigger" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the trigger for performing a scaling operation." + } + }, + "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." + }, + "ServiceCorrelation": { + "type": "object", + "properties": { + "scheme": { + "oneOf": [ + { + "type": "string", + "enum": [ + "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 ARM Resource ID describing the service resource" + } + }, + "required": [ + "scheme", + "serviceName" + ], + "description": "Creates a particular correlation between services." + }, + "ServiceLoadMetric": { + "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." + }, + "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." + }, + "ServiceResourceProperties": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/StatefulServiceProperties" + }, + { + "$ref": "#/definitions/StatelessServiceProperties" + } + ], + "properties": { + "correlationScheme": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceCorrelation" + } + }, + { + "$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" + } + ] + }, + "partitionDescription": { + "oneOf": [ + { + "$ref": "#/definitions/Partition" + }, + { + "$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)\"." + }, + "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." + }, + "serviceLoadMetrics": { + "oneOf": [ + { + "type": "array", + "items": { + "$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 ServiceLoadMetric 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/ServicePlacementPolicy" + } + }, + { + "$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" + } + }, + "required": [ + "partitionDescription", + "serviceTypeName" + ], + "description": "The service resource properties." + }, + "ServiceTypeHealthPolicy": { + "type": "object", + "properties": { + "maxPercentUnhealthyPartitionsPerService": { + "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 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 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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": { + "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." + }, + "SingletonPartitionScheme": { + "type": "object", + "properties": { + "partitionScheme": { + "type": "string", + "enum": [ + "Singleton" + ] + } + }, + "required": [ + "partitionScheme" + ], + "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", + "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", + "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", + "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", + "enum": [ + "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", + "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format \"hh:mm:ss\"." + }, + "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." + }, + "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": [ + "Stateless" + ] + } + }, + "required": [ + "instanceCount", + "serviceKind" + ], + "description": "The properties of a stateless service resource." + }, + "SubResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier." + } + }, + "description": "Azure resource identifier." + }, + "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": { + "type": "string", + "description": "The type of identity that created the resource." + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource last modification (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "type": "string", + "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": {} + }, + "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." + }, + "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." + }, + "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/2021-02-01-preview/Microsoft.Sql.json b/schemas/2021-02-01-preview/Microsoft.Sql.json index 06c5d7a494..e9425566d6 100644 --- a/schemas/2021-02-01-preview/Microsoft.Sql.json +++ b/schemas/2021-02-01-preview/Microsoft.Sql.json @@ -1120,9 +1120,6 @@ "type": "array", "items": { "oneOf": [ - { - "$ref": "#/definitions/servers_databases_childResource" - }, { "$ref": "#/definitions/servers_outboundFirewallRules_childResource" }, @@ -1132,6 +1129,9 @@ { "$ref": "#/definitions/servers_auditingSettings_childResource" }, + { + "$ref": "#/definitions/servers_databases_childResource" + }, { "$ref": "#/definitions/servers_elasticPools_childResource" }, diff --git a/schemas/2021-05-01-preview/Microsoft.Sql.json b/schemas/2021-05-01-preview/Microsoft.Sql.json index e4960f2ed7..f0410c53bd 100644 --- a/schemas/2021-05-01-preview/Microsoft.Sql.json +++ b/schemas/2021-05-01-preview/Microsoft.Sql.json @@ -1205,13 +1205,16 @@ "items": { "oneOf": [ { - "$ref": "#/definitions/servers_extendedAuditingSettings_childResource" + "$ref": "#/definitions/servers_databases_childResource" }, { - "$ref": "#/definitions/servers_auditingSettings_childResource" + "$ref": "#/definitions/servers_connectionPolicies_childResource" }, { - "$ref": "#/definitions/servers_databases_childResource" + "$ref": "#/definitions/servers_extendedAuditingSettings_childResource" + }, + { + "$ref": "#/definitions/servers_auditingSettings_childResource" }, { "$ref": "#/definitions/servers_elasticPools_childResource" @@ -1240,9 +1243,6 @@ { "$ref": "#/definitions/servers_azureADOnlyAuthentications_childResource" }, - { - "$ref": "#/definitions/servers_connectionPolicies_childResource" - }, { "$ref": "#/definitions/servers_devOpsAuditingSettings_childResource" }, diff --git a/schemas/2021-05-01/Microsoft.ServiceFabric.json b/schemas/2021-05-01/Microsoft.ServiceFabric.json new file mode 100644 index 0000000000..c41d897d08 --- /dev/null +++ b/schemas/2021-05-01/Microsoft.ServiceFabric.json @@ -0,0 +1,2634 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-05-01/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": [ + "2021-05-01" + ] + }, + "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_applicationTypes_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": [ + { + "$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/managedClusters" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedClusters" + }, + "managedclusters_applications": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-05-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": "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/managedclusters_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/managedclusters/applications" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applications" + }, + "managedclusters_applications_services": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-05-01" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applications/services" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applications/services" + }, + "managedclusters_applicationTypes": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-05-01" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters_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/managedclusters/applicationTypes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applicationTypes" + }, + "managedclusters_applicationTypes_versions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-05-01" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applicationTypes/versions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applicationTypes/versions" + }, + "managedClusters_nodeTypes": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-05-01" + ] + }, + "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." + }, + "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/managedClusters/nodeTypes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedClusters/nodeTypes" + } + }, + "definitions": { + "ApplicationHealthPolicy": { + "type": "object", + "properties": { + "considerWarningAsError": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$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/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" + }, + "maxPercentUnhealthyDeployedApplications": { + "oneOf": [ + { + "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" + }, + "serviceTypeHealthPolicyMap": { + "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" + } + }, + "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", + "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." + }, + "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." + }, + "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." + }, + "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." + }, + "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" + ], + "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", + "properties": { + "applicationHealthPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/ApplicationHealthPolicy" + }, + { + "$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)." + }, + "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": [ + { + "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." + }, + "rollingUpgradeMonitoringPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/RollingUpgradeMonitoringPolicy" + }, + { + "$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": [ + "Monitored", + "UnmonitoredAuto" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "upgradeReplicaSetCheckTimeout": { + "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)." + } + }, + "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" + ] + }, + "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": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." + }, + "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." + }, + "probePort": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 65534 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The prob port used by the load balancing rule. Acceptable values are between 1 and 65535." + }, + "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": "List of add-on features to enable on the cluster." + }, + "adminPassword": { + "type": "string", + "format": "password", + "description": "VM admin user password." + }, + "adminUserName": { + "type": "string", + "description": "VM admin user name." + }, + "allowRdpAccess": { + "oneOf": [ + { + "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." + }, + "applicationTypeVersionsCleanupPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "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 that are allowed to manage the cluster." + }, + "clusterCodeVersion": { + "type": "string", + "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**." + }, + "clusterUpgradeCadence": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Wave0", + "Wave1", + "Wave2" + ] + }, + { + "$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 **clusterUpgradeMode** is set to 'Automatic'." + }, + "clusterUpgradeMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Automatic", + "Manual" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "dnsName": { + "type": "string", + "description": "The cluster dns name." + }, + "enableAutoOSUpgrade": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "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": "Load balancing rules that are applied to the public load balancer of the cluster." + }, + "networkSecurityRules": { + "oneOf": [ + { + "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." + }, + "zonalResiliency": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates if the cluster has zone resiliency." + } + }, + "required": [ + "adminUserName", + "dnsName" + ], + "description": "Describes the managed cluster resource properties." + }, + "managedclusters_applications_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-05-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": "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/managedclusters/applications" + }, + "managedclusters_applications_services_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-05-01" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applications/services" + }, + "managedclusters_applicationTypes_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-05-01" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applicationTypes" + }, + "managedclusters_applicationTypes_versions_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-05-01" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applicationTypes/versions" + }, + "managedClusters_nodeTypes_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-05-01" + ] + }, + "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." + }, + "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": [ + "nodeTypes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedClusters/nodeTypes" + }, + "ManagedIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "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." + }, + "NetworkSecurityRule": { + "type": "object", + "properties": { + "access": { + "oneOf": [ + { + "type": "string", + "enum": [ + "allow", + "deny" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The network traffic is allowed or denied." + }, + "description": { + "type": "string", + "description": "Network security rule description." + }, + "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." + }, + "destinationPortRanges": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The destination port ranges." + }, + "direction": { + "oneOf": [ + { + "type": "string", + "enum": [ + "inbound", + "outbound" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Network security rule direction." + }, + "name": { + "type": "string", + "description": "Network security rule name." + }, + "priority": { + "oneOf": [ + { + "type": "integer", + "minimum": 1000, + "maximum": 3000 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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": [ + "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." + }, + "sourceAddressPrefixes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The CIDR or source IP ranges." + }, + "sourcePortRanges": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The source port ranges." + } + }, + "required": [ + "access", + "direction", + "name", + "priority", + "protocol" + ], + "description": "Describes a network security rule." + }, + "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." + }, + "dataDiskType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard_LRS", + "StandardSSD_LRS", + "Premium_LRS" + ] + }, + { + "$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" + }, + "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." + }, + "isStateless": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates if the node type can only host Stateless workloads." + }, + "multiplePlacementGroups": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates if scale set associated with the node type can be composed of multiple placement groups." + }, + "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." + }, + "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." + }, + "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." + }, + "Partition": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/SingletonPartitionScheme" + } + ], + "properties": {}, + "description": "Describes how the service is partitioned." + }, + "RollingUpgradeMonitoringPolicy": { + "type": "object", + "properties": { + "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 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\"." + }, + "upgradeTimeout": { + "type": "string", + "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": [ + "failureAction", + "healthCheckRetryTimeout", + "healthCheckStableDuration", + "healthCheckWaitDuration", + "upgradeDomainTimeout", + "upgradeTimeout" + ], + "description": "The policy used for monitoring the application upgrade" + }, + "ScalingMechanism": { + "type": "object", + "properties": {}, + "description": "Describes the mechanism for performing a scaling operation." + }, + "ScalingPolicy": { + "type": "object", + "properties": { + "scalingMechanism": { + "oneOf": [ + { + "$ref": "#/definitions/ScalingMechanism" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the mechanism for performing a scaling operation." + }, + "scalingTrigger": { + "oneOf": [ + { + "$ref": "#/definitions/ScalingTrigger" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the trigger for performing a scaling operation." + } + }, + "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." + }, + "ServiceCorrelation": { + "type": "object", + "properties": { + "scheme": { + "oneOf": [ + { + "type": "string", + "enum": [ + "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 ARM Resource ID describing the service resource" + } + }, + "required": [ + "scheme", + "serviceName" + ], + "description": "Creates a particular correlation between services." + }, + "ServiceLoadMetric": { + "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." + }, + "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." + }, + "ServiceResourceProperties": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/StatefulServiceProperties" + }, + { + "$ref": "#/definitions/StatelessServiceProperties" + } + ], + "properties": { + "correlationScheme": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceCorrelation" + } + }, + { + "$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" + } + ] + }, + "partitionDescription": { + "oneOf": [ + { + "$ref": "#/definitions/Partition" + }, + { + "$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)\"." + }, + "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." + }, + "serviceLoadMetrics": { + "oneOf": [ + { + "type": "array", + "items": { + "$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 ServiceLoadMetric 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/ServicePlacementPolicy" + } + }, + { + "$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" + } + }, + "required": [ + "partitionDescription", + "serviceTypeName" + ], + "description": "The service resource properties." + }, + "ServiceTypeHealthPolicy": { + "type": "object", + "properties": { + "maxPercentUnhealthyPartitionsPerService": { + "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 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 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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": { + "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." + }, + "SingletonPartitionScheme": { + "type": "object", + "properties": { + "partitionScheme": { + "type": "string", + "enum": [ + "Singleton" + ] + } + }, + "required": [ + "partitionScheme" + ], + "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", + "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", + "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", + "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", + "enum": [ + "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", + "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format \"hh:mm:ss\"." + }, + "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." + }, + "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": [ + "Stateless" + ] + } + }, + "required": [ + "instanceCount", + "serviceKind" + ], + "description": "The properties of a stateless service resource." + }, + "SubResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier." + } + }, + "description": "Azure resource identifier." + }, + "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": { + "type": "string", + "description": "The type of identity that created the resource." + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource last modification (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "type": "string", + "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": {} + }, + "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." + }, + "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." + }, + "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/2021-07-01-preview/Microsoft.ServiceFabric.json b/schemas/2021-07-01-preview/Microsoft.ServiceFabric.json new file mode 100644 index 0000000000..ea20bdf536 --- /dev/null +++ b/schemas/2021-07-01-preview/Microsoft.ServiceFabric.json @@ -0,0 +1,2791 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-07-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": [ + "2021-07-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_applicationTypes_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": [ + { + "$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/managedClusters" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedClusters" + }, + "managedclusters_applications": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-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": "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/managedclusters_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/managedclusters/applications" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applications" + }, + "managedclusters_applications_services": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applications/services" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applications/services" + }, + "managedclusters_applicationTypes": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters_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/managedclusters/applicationTypes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applicationTypes" + }, + "managedclusters_applicationTypes_versions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applicationTypes/versions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applicationTypes/versions" + }, + "managedClusters_nodeTypes": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-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." + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/NodeTypeSku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes a node type sku." + }, + "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/managedClusters/nodeTypes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedClusters/nodeTypes" + } + }, + "definitions": { + "ApplicationHealthPolicy": { + "type": "object", + "properties": { + "considerWarningAsError": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$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/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" + }, + "maxPercentUnhealthyDeployedApplications": { + "oneOf": [ + { + "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" + }, + "serviceTypeHealthPolicyMap": { + "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" + } + }, + "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", + "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." + }, + "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." + }, + "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." + }, + "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." + }, + "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" + ], + "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", + "properties": { + "applicationHealthPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/ApplicationHealthPolicy" + }, + { + "$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)." + }, + "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": [ + { + "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." + }, + "rollingUpgradeMonitoringPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/RollingUpgradeMonitoringPolicy" + }, + { + "$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": [ + "Monitored", + "UnmonitoredAuto" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "upgradeReplicaSetCheckTimeout": { + "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)." + } + }, + "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" + ] + }, + "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": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." + }, + "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" + }, + "FrontendConfiguration": { + "type": "object", + "properties": { + "ipAddressType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "IPv4", + "IPv6" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The IP address type of this frontend configuration. If omitted the default value is IPv4." + }, + "loadBalancerBackendAddressPoolId": { + "type": "string", + "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/'." + }, + "loadBalancerInboundNatPoolId": { + "type": "string", + "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", + "description": "The IP tag type." + }, + "tag": { + "type": "string", + "description": "The value of the IP tag." + } + }, + "required": [ + "ipTagType", + "tag" + ], + "description": "IPTag associated with the object." + }, + "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." + }, + "probePort": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 65534 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The prob port used by the load balancing rule. Acceptable values are between 1 and 65535." + }, + "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": "List of add-on features to enable on the cluster." + }, + "adminPassword": { + "type": "string", + "format": "password", + "description": "VM admin user password." + }, + "adminUserName": { + "type": "string", + "description": "VM admin user name." + }, + "allowRdpAccess": { + "oneOf": [ + { + "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." + }, + "applicationTypeVersionsCleanupPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "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 that are allowed to manage the cluster." + }, + "clusterCodeVersion": { + "type": "string", + "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**." + }, + "clusterUpgradeCadence": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Wave0", + "Wave1", + "Wave2" + ] + }, + { + "$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 **clusterUpgradeMode** is set to 'Automatic'." + }, + "clusterUpgradeMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Automatic", + "Manual" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "dnsName": { + "type": "string", + "description": "The cluster dns name." + }, + "enableAutoOSUpgrade": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "enableIpv6": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "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." + }, + "ipTags": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/IPTag" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of IP tags associated with the default public IP address of the cluster." + }, + "loadBalancingRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Load balancing rules that are applied to the public load balancer of the cluster." + }, + "networkSecurityRules": { + "oneOf": [ + { + "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." + }, + "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." + }, + "zonalResiliency": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates if the cluster has zone resiliency." + } + }, + "required": [ + "adminUserName", + "dnsName" + ], + "description": "Describes the managed cluster resource properties." + }, + "managedclusters_applications_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-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": "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/managedclusters/applications" + }, + "managedclusters_applications_services_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applications/services" + }, + "managedclusters_applicationTypes_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applicationTypes" + }, + "managedclusters_applicationTypes_versions_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applicationTypes/versions" + }, + "managedClusters_nodeTypes_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-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." + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/NodeTypeSku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes a node type sku." + }, + "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": [ + "nodeTypes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedClusters/nodeTypes" + }, + "ManagedIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "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." + }, + "NetworkSecurityRule": { + "type": "object", + "properties": { + "access": { + "oneOf": [ + { + "type": "string", + "enum": [ + "allow", + "deny" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The network traffic is allowed or denied." + }, + "description": { + "type": "string", + "description": "Network security rule description." + }, + "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." + }, + "destinationPortRanges": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The destination port ranges." + }, + "direction": { + "oneOf": [ + { + "type": "string", + "enum": [ + "inbound", + "outbound" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Network security rule direction." + }, + "name": { + "type": "string", + "description": "Network security rule name." + }, + "priority": { + "oneOf": [ + { + "type": "integer", + "minimum": 1000, + "maximum": 3000 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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": [ + "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." + }, + "sourceAddressPrefixes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The CIDR or source IP ranges." + }, + "sourcePortRanges": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The source port ranges." + } + }, + "required": [ + "access", + "direction", + "name", + "priority", + "protocol" + ], + "description": "Describes a network security rule." + }, + "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." + }, + "dataDiskType": { + "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." + }, + "ephemeralPorts": { + "oneOf": [ + { + "$ref": "#/definitions/EndpointRangeDescription" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Port range details" + }, + "frontendConfigurations": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendConfiguration" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "isPrimary": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "isStateless": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates if the node type can only host Stateless workloads." + }, + "multiplePlacementGroups": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates if scale set associated with the node type can be composed of multiple placement groups." + }, + "networkSecurityRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkSecurityRule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "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.

**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." + }, + "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." + }, + "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": [ + "capacity" + ], + "description": "Describes a node type sku." + }, + "Partition": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/SingletonPartitionScheme" + } + ], + "properties": {}, + "description": "Describes how the service is partitioned." + }, + "RollingUpgradeMonitoringPolicy": { + "type": "object", + "properties": { + "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 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\"." + }, + "upgradeTimeout": { + "type": "string", + "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": [ + "failureAction", + "healthCheckRetryTimeout", + "healthCheckStableDuration", + "healthCheckWaitDuration", + "upgradeDomainTimeout", + "upgradeTimeout" + ], + "description": "The policy used for monitoring the application upgrade" + }, + "ScalingMechanism": { + "type": "object", + "properties": {}, + "description": "Describes the mechanism for performing a scaling operation." + }, + "ScalingPolicy": { + "type": "object", + "properties": { + "scalingMechanism": { + "oneOf": [ + { + "$ref": "#/definitions/ScalingMechanism" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the mechanism for performing a scaling operation." + }, + "scalingTrigger": { + "oneOf": [ + { + "$ref": "#/definitions/ScalingTrigger" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the trigger for performing a scaling operation." + } + }, + "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." + }, + "ServiceCorrelation": { + "type": "object", + "properties": { + "scheme": { + "oneOf": [ + { + "type": "string", + "enum": [ + "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 ARM Resource ID describing the service resource" + } + }, + "required": [ + "scheme", + "serviceName" + ], + "description": "Creates a particular correlation between services." + }, + "ServiceLoadMetric": { + "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." + }, + "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." + }, + "ServiceResourceProperties": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/StatefulServiceProperties" + }, + { + "$ref": "#/definitions/StatelessServiceProperties" + } + ], + "properties": { + "correlationScheme": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceCorrelation" + } + }, + { + "$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" + } + ] + }, + "partitionDescription": { + "oneOf": [ + { + "$ref": "#/definitions/Partition" + }, + { + "$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)\"." + }, + "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." + }, + "serviceLoadMetrics": { + "oneOf": [ + { + "type": "array", + "items": { + "$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 ServiceLoadMetric 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/ServicePlacementPolicy" + } + }, + { + "$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" + } + }, + "required": [ + "partitionDescription", + "serviceTypeName" + ], + "description": "The service resource properties." + }, + "ServiceTypeHealthPolicy": { + "type": "object", + "properties": { + "maxPercentUnhealthyPartitionsPerService": { + "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 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 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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": { + "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." + }, + "SingletonPartitionScheme": { + "type": "object", + "properties": { + "partitionScheme": { + "type": "string", + "enum": [ + "Singleton" + ] + } + }, + "required": [ + "partitionScheme" + ], + "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", + "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", + "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", + "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", + "enum": [ + "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", + "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format \"hh:mm:ss\"." + }, + "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." + }, + "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": [ + "Stateless" + ] + } + }, + "required": [ + "instanceCount", + "serviceKind" + ], + "description": "The properties of a stateless service resource." + }, + "SubResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Azure resource identifier." + } + }, + "description": "Azure resource identifier." + }, + "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": { + "type": "string", + "description": "The type of identity that created the resource." + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource last modification (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "type": "string", + "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": {} + }, + "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." + }, + "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." + }, + "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/2021-11-01-preview/Microsoft.ServiceFabric.json b/schemas/2021-11-01-preview/Microsoft.ServiceFabric.json new file mode 100644 index 0000000000..a2e8040920 --- /dev/null +++ b/schemas/2021-11-01-preview/Microsoft.ServiceFabric.json @@ -0,0 +1,3064 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-11-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": [ + "2021-11-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_applicationTypes_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": [ + { + "$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/managedClusters" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedClusters" + }, + "managedclusters_applications": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-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": "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/managedclusters_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/managedclusters/applications" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applications" + }, + "managedclusters_applications_services": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applications/services" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applications/services" + }, + "managedclusters_applicationTypes": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters_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/managedclusters/applicationTypes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applicationTypes" + }, + "managedclusters_applicationTypes_versions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applicationTypes/versions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedclusters/applicationTypes/versions" + }, + "managedClusters_nodeTypes": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-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." + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/NodeTypeSku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes a node type sku." + }, + "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/managedClusters/nodeTypes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedClusters/nodeTypes" + } + }, + "definitions": { + "ApplicationHealthPolicy": { + "type": "object", + "properties": { + "considerWarningAsError": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$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/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" + }, + "maxPercentUnhealthyDeployedApplications": { + "oneOf": [ + { + "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" + }, + "serviceTypeHealthPolicyMap": { + "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" + } + }, + "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", + "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." + }, + "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." + }, + "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." + }, + "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." + }, + "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" + ], + "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", + "properties": { + "applicationHealthPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/ApplicationHealthPolicy" + }, + { + "$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)." + }, + "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": [ + { + "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." + }, + "rollingUpgradeMonitoringPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/RollingUpgradeMonitoringPolicy" + }, + { + "$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": [ + "Monitored", + "UnmonitoredAuto" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "upgradeReplicaSetCheckTimeout": { + "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)." + } + }, + "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" + ] + }, + "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": "Indicates if the client certificate has admin access to the cluster. Non admin clients can perform only read only operations on the cluster." + }, + "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" + }, + "FrontendConfiguration": { + "type": "object", + "properties": { + "ipAddressType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "IPv4", + "IPv6" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The IP address type of this frontend configuration. If omitted the default value is IPv4." + }, + "loadBalancerBackendAddressPoolId": { + "type": "string", + "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/'." + }, + "loadBalancerInboundNatPoolId": { + "type": "string", + "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", + "description": "The IP tag type." + }, + "tag": { + "type": "string", + "description": "The value of the IP tag." + } + }, + "required": [ + "ipTagType", + "tag" + ], + "description": "IPTag associated with the object." + }, + "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." + }, + "probePort": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 65534 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The prob port used by the load balancing rule. Acceptable values are between 1 and 65535." + }, + "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": "List of add-on features to enable on the cluster." + }, + "adminPassword": { + "type": "string", + "format": "password", + "description": "VM admin user password." + }, + "adminUserName": { + "type": "string", + "description": "VM admin user name." + }, + "allowRdpAccess": { + "oneOf": [ + { + "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." + }, + "applicationTypeVersionsCleanupPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/ApplicationTypeVersionsCleanupPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "auxiliarySubnets": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Auxiliary subnets for 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." + }, + "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 that are allowed to manage the cluster." + }, + "clusterCodeVersion": { + "type": "string", + "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**." + }, + "clusterUpgradeCadence": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Wave0", + "Wave1", + "Wave2" + ] + }, + { + "$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 **clusterUpgradeMode** is set to 'Automatic'." + }, + "clusterUpgradeMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Automatic", + "Manual" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "dnsName": { + "type": "string", + "description": "The cluster dns name." + }, + "enableAutoOSUpgrade": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "enableIpv6": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "enableServicePublicIP": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "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." + }, + "ipTags": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/IPTag" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of IP tags associated with the default public IP address of the cluster." + }, + "loadBalancingRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingRule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Load balancing rules that are applied to the public load balancer of the cluster." + }, + "networkSecurityRules": { + "oneOf": [ + { + "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." + }, + "serviceEndpoints": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceEndpoint" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Service endpoints for subnets in the cluster." + }, + "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." + }, + "zonalResiliency": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates if the cluster has zone resiliency." + } + }, + "required": [ + "adminUserName", + "dnsName" + ], + "description": "Describes the managed cluster resource properties." + }, + "managedclusters_applications_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-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": "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/managedclusters/applications" + }, + "managedclusters_applications_services_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applications/services" + }, + "managedclusters_applicationTypes_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applicationTypes" + }, + "managedclusters_applicationTypes_versions_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01-preview" + ] + }, + "location": { + "type": "string", + "description": "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/managedclusters/applicationTypes/versions" + }, + "managedClusters_nodeTypes_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-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." + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/NodeTypeSku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes a node type sku." + }, + "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": [ + "nodeTypes" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceFabric/managedClusters/nodeTypes" + }, + "ManagedIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "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." + }, + "NetworkSecurityRule": { + "type": "object", + "properties": { + "access": { + "oneOf": [ + { + "type": "string", + "enum": [ + "allow", + "deny" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The network traffic is allowed or denied." + }, + "description": { + "type": "string", + "description": "Network security rule description." + }, + "destinationAddressPrefix": { + "type": "string", + "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." + }, + "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." + }, + "destinationPortRange": { + "type": "string", + "description": "he destination port or range. Integer or range between 0 and 65535. Asterisk '*' can also be used to match all ports." + }, + "destinationPortRanges": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The destination port ranges." + }, + "direction": { + "oneOf": [ + { + "type": "string", + "enum": [ + "inbound", + "outbound" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Network security rule direction." + }, + "name": { + "type": "string", + "description": "Network security rule name." + }, + "priority": { + "oneOf": [ + { + "type": "integer", + "minimum": 1000, + "maximum": 3000 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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": [ + "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." + }, + "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": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + } + }, + "required": [ + "access", + "direction", + "name", + "priority", + "protocol" + ], + "description": "Describes a network security rule." + }, + "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": [ + { + "$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." + }, + "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" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Disk size for the managed disk attached to the vms on the node type in GBs." + }, + "dataDiskType": { + "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." + }, + "enableAcceleratedNetworking": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether the network interface is accelerated networking-enabled." + }, + "enableEncryptionAtHost": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "ephemeralPorts": { + "oneOf": [ + { + "$ref": "#/definitions/EndpointRangeDescription" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Port range details" + }, + "frontendConfigurations": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendConfiguration" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "isPrimary": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "isStateless": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates if the node type can only host Stateless workloads." + }, + "multiplePlacementGroups": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates if scale set associated with the node type can be composed of multiple placement groups." + }, + "networkSecurityRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/NetworkSecurityRule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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." + }, + "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." + }, + "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." + }, + "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.

**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." + }, + "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": [ + "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": [ + "capacity" + ], + "description": "Describes a node type sku." + }, + "Partition": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/SingletonPartitionScheme" + } + ], + "properties": {}, + "description": "Describes how the service is partitioned." + }, + "RollingUpgradeMonitoringPolicy": { + "type": "object", + "properties": { + "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 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\"." + }, + "upgradeTimeout": { + "type": "string", + "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": [ + "failureAction", + "healthCheckRetryTimeout", + "healthCheckStableDuration", + "healthCheckWaitDuration", + "upgradeDomainTimeout", + "upgradeTimeout" + ], + "description": "The policy used for monitoring the application upgrade" + }, + "ScalingMechanism": { + "type": "object", + "properties": {}, + "description": "Describes the mechanism for performing a scaling operation." + }, + "ScalingPolicy": { + "type": "object", + "properties": { + "scalingMechanism": { + "oneOf": [ + { + "$ref": "#/definitions/ScalingMechanism" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the mechanism for performing a scaling operation." + }, + "scalingTrigger": { + "oneOf": [ + { + "$ref": "#/definitions/ScalingTrigger" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the trigger for performing a scaling operation." + } + }, + "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." + }, + "ServiceCorrelation": { + "type": "object", + "properties": { + "scheme": { + "oneOf": [ + { + "type": "string", + "enum": [ + "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 ARM Resource ID describing the service resource" + } + }, + "required": [ + "scheme", + "serviceName" + ], + "description": "Creates a particular correlation between services." + }, + "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": { + "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." + }, + "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." + }, + "ServiceResourceProperties": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/StatefulServiceProperties" + }, + { + "$ref": "#/definitions/StatelessServiceProperties" + } + ], + "properties": { + "correlationScheme": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ServiceCorrelation" + } + }, + { + "$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" + } + ] + }, + "partitionDescription": { + "oneOf": [ + { + "$ref": "#/definitions/Partition" + }, + { + "$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)\"." + }, + "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." + }, + "serviceLoadMetrics": { + "oneOf": [ + { + "type": "array", + "items": { + "$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 ServiceLoadMetric 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/ServicePlacementPolicy" + } + }, + { + "$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" + } + }, + "required": [ + "partitionDescription", + "serviceTypeName" + ], + "description": "The service resource properties." + }, + "ServiceTypeHealthPolicy": { + "type": "object", + "properties": { + "maxPercentUnhealthyPartitionsPerService": { + "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 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 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "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": { + "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." + }, + "SingletonPartitionScheme": { + "type": "object", + "properties": { + "partitionScheme": { + "type": "string", + "enum": [ + "Singleton" + ] + } + }, + "required": [ + "partitionScheme" + ], + "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", + "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", + "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", + "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", + "enum": [ + "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", + "description": "The definition on how long StandBy replicas should be maintained before being removed, represented in ISO 8601 format \"hh:mm:ss\"." + }, + "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." + }, + "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": [ + "Stateless" + ] + } + }, + "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": { + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." + }, + "createdBy": { + "type": "string", + "description": "The identity that created the resource." + }, + "createdByType": { + "type": "string", + "description": "The type of identity that created the resource." + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource last modification (UTC)." + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "type": "string", + "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": {} + }, + "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." + }, + "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." + }, + "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/2021-11-01/Microsoft.ServiceBus.json b/schemas/2021-11-01/Microsoft.ServiceBus.json new file mode 100644 index 0000000000..2314afa929 --- /dev/null +++ b/schemas/2021-11-01/Microsoft.ServiceBus.json @@ -0,0 +1,2218 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-11-01/Microsoft.ServiceBus.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.ServiceBus", + "description": "Microsoft ServiceBus Resource Types", + "resourceDefinitions": { + "namespaces": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/Identity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to configure User Assigned Identities for Bring your Own Keys" + }, + "location": { + "type": "string", + "description": "The Geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The namespace name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SBNamespaceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the namespace." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/namespaces_networkRuleSets_childResource" + }, + { + "$ref": "#/definitions/namespaces_AuthorizationRules_childResource" + }, + { + "$ref": "#/definitions/namespaces_privateEndpointConnections_childResource" + }, + { + "$ref": "#/definitions/namespaces_disasterRecoveryConfigs_childResource" + }, + { + "$ref": "#/definitions/namespaces_migrationConfigurations_childResource" + }, + { + "$ref": "#/definitions/namespaces_queues_childResource" + }, + { + "$ref": "#/definitions/namespaces_topics_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/SBSku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "SKU of the namespace." + }, + "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.ServiceBus/namespaces" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces" + }, + "namespaces_AuthorizationRules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The authorization rule name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SBAuthorizationRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "AuthorizationRule properties." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ServiceBus/namespaces/AuthorizationRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/AuthorizationRules" + }, + "namespaces_disasterRecoveryConfigs": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The Disaster Recovery configuration name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ArmDisasterRecoveryProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties required to the Create Or Update Alias(Disaster Recovery configurations)" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ServiceBus/namespaces/disasterRecoveryConfigs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/disasterRecoveryConfigs" + }, + "namespaces_migrationConfigurations": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/\\$default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The configuration name. Should always be \"$default\"." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MigrationConfigPropertiesProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties required to the Create Migration Configuration" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ServiceBus/namespaces/migrationConfigurations" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/migrationConfigurations" + }, + "namespaces_networkRuleSets": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/NetworkRuleSetProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "NetworkRuleSet properties" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ServiceBus/namespaces/networkRuleSets" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/networkRuleSets" + }, + "namespaces_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "description": "The PrivateEndpointConnection name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the private endpoint connection resource." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ServiceBus/namespaces/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/privateEndpointConnections" + }, + "namespaces_queues": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The queue name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SBQueueProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Queue Properties definition." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/namespaces_queues_authorizationRules_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ServiceBus/namespaces/queues" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/queues" + }, + "namespaces_queues_authorizationRules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The authorization rule name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SBAuthorizationRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "AuthorizationRule properties." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ServiceBus/namespaces/queues/authorizationRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/queues/authorizationRules" + }, + "namespaces_topics": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The topic name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SBTopicProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Topic Properties definition." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/namespaces_topics_authorizationRules_childResource" + }, + { + "$ref": "#/definitions/namespaces_topics_subscriptions_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ServiceBus/namespaces/topics" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/topics" + }, + "namespaces_topics_authorizationRules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The authorization rule name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SBAuthorizationRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "AuthorizationRule properties." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ServiceBus/namespaces/topics/authorizationRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/topics/authorizationRules" + }, + "namespaces_topics_subscriptions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The subscription name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SBSubscriptionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Description of Subscription Resource." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/namespaces_topics_subscriptions_rules_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ServiceBus/namespaces/topics/subscriptions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/topics/subscriptions" + }, + "namespaces_topics_subscriptions_rules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The rule name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/Ruleproperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Description of Rule Resource." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.ServiceBus/namespaces/topics/subscriptions/rules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/topics/subscriptions/rules" + } + }, + "definitions": { + "Action": { + "type": "object", + "properties": { + "compatibilityLevel": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This property is reserved for future use. An integer value showing the compatibility level, currently hard-coded to 20." + }, + "requiresPreprocessing": { + "oneOf": [ + { + "type": "boolean", + "default": true + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value that indicates whether the rule action requires preprocessing." + }, + "sqlExpression": { + "type": "string", + "description": "SQL expression. e.g. MyProperty='ABC'" + } + }, + "description": "Represents the filter actions which are allowed for the transformation of a message that have been matched by a filter expression." + }, + "ArmDisasterRecoveryProperties": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Primary/Secondary eventhub namespace name, which is part of GEO DR pairing" + }, + "partnerNamespace": { + "type": "string", + "description": "ARM Id of the Primary/Secondary eventhub namespace name, which is part of GEO DR pairing" + } + }, + "description": "Properties required to the Create Or Update Alias(Disaster Recovery configurations)" + }, + "ConnectionState": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of the connection state." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Status of the connection." + } + }, + "description": "ConnectionState information." + }, + "CorrelationFilter": { + "type": "object", + "properties": { + "contentType": { + "type": "string", + "description": "Content type of the message." + }, + "correlationId": { + "type": "string", + "description": "Identifier of the correlation." + }, + "label": { + "type": "string", + "description": "Application specific label." + }, + "messageId": { + "type": "string", + "description": "Identifier of the message." + }, + "properties": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "dictionary object for custom filters" + }, + "replyTo": { + "type": "string", + "description": "Address of the queue to reply to." + }, + "replyToSessionId": { + "type": "string", + "description": "Session identifier to reply to." + }, + "requiresPreprocessing": { + "oneOf": [ + { + "type": "boolean", + "default": true + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value that indicates whether the rule action requires preprocessing." + }, + "sessionId": { + "type": "string", + "description": "Session identifier." + }, + "to": { + "type": "string", + "description": "Address to send to." + } + }, + "description": "Represents the correlation filter expression." + }, + "Encryption": { + "type": "object", + "properties": { + "keySource": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Microsoft.KeyVault" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enumerates the possible value of keySource for Encryption." + }, + "keyVaultProperties": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/KeyVaultProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of KeyVault" + }, + "requireInfrastructureEncryption": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enable Infrastructure Encryption (Double Encryption)" + } + }, + "description": "Properties to configure Encryption" + }, + "Identity": { + "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": "Type of managed service identity." + }, + "userAssignedIdentities": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties for User Assigned Identities" + } + }, + "description": "Properties to configure User Assigned Identities for Bring your Own Keys" + }, + "KeyVaultProperties": { + "type": "object", + "properties": { + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/UserAssignedIdentityProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "keyName": { + "type": "string", + "description": "Name of the Key from KeyVault" + }, + "keyVaultUri": { + "type": "string", + "description": "Uri of KeyVault" + }, + "keyVersion": { + "type": "string", + "description": "Version of KeyVault" + } + }, + "description": "Properties to configure keyVault Properties" + }, + "MigrationConfigPropertiesProperties": { + "type": "object", + "properties": { + "postMigrationName": { + "type": "string", + "description": "Name to access Standard Namespace after migration" + }, + "targetNamespace": { + "type": "string", + "description": "Existing premium Namespace ARM Id name which has no entities, will be used for migration" + } + }, + "required": [ + "postMigrationName", + "targetNamespace" + ], + "description": "Properties required to the Create Migration Configuration" + }, + "namespaces_AuthorizationRules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The authorization rule name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SBAuthorizationRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "AuthorizationRule properties." + }, + "type": { + "type": "string", + "enum": [ + "AuthorizationRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/AuthorizationRules" + }, + "namespaces_disasterRecoveryConfigs_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The Disaster Recovery configuration name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ArmDisasterRecoveryProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties required to the Create Or Update Alias(Disaster Recovery configurations)" + }, + "type": { + "type": "string", + "enum": [ + "disasterRecoveryConfigs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/disasterRecoveryConfigs" + }, + "namespaces_migrationConfigurations_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "enum": [ + "$default" + ], + "description": "The configuration name. Should always be \"$default\"." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MigrationConfigPropertiesProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties required to the Create Migration Configuration" + }, + "type": { + "type": "string", + "enum": [ + "migrationConfigurations" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/migrationConfigurations" + }, + "namespaces_networkRuleSets_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/NetworkRuleSetProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "NetworkRuleSet properties" + }, + "type": { + "type": "string", + "enum": [ + "networkRuleSets" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/networkRuleSets" + }, + "namespaces_privateEndpointConnections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "description": "The PrivateEndpointConnection name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the private endpoint connection resource." + }, + "type": { + "type": "string", + "enum": [ + "privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/privateEndpointConnections" + }, + "namespaces_queues_authorizationRules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The authorization rule name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SBAuthorizationRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "AuthorizationRule properties." + }, + "type": { + "type": "string", + "enum": [ + "authorizationRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/queues/authorizationRules" + }, + "namespaces_queues_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The queue name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SBQueueProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Queue Properties definition." + }, + "type": { + "type": "string", + "enum": [ + "queues" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/queues" + }, + "namespaces_topics_authorizationRules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The authorization rule name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SBAuthorizationRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "AuthorizationRule properties." + }, + "type": { + "type": "string", + "enum": [ + "authorizationRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/topics/authorizationRules" + }, + "namespaces_topics_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The topic name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SBTopicProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Topic Properties definition." + }, + "type": { + "type": "string", + "enum": [ + "topics" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/topics" + }, + "namespaces_topics_subscriptions_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The subscription name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SBSubscriptionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Description of Subscription Resource." + }, + "type": { + "type": "string", + "enum": [ + "subscriptions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/topics/subscriptions" + }, + "namespaces_topics_subscriptions_rules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The rule name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/Ruleproperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Description of Rule Resource." + }, + "type": { + "type": "string", + "enum": [ + "rules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.ServiceBus/namespaces/topics/subscriptions/rules" + }, + "NetworkRuleSetProperties": { + "type": "object", + "properties": { + "defaultAction": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Allow", + "Deny" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Default Action for Network Rule Set." + }, + "ipRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/NWRuleSetIpRules" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of IpRules" + }, + "publicNetworkAccess": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This determines if traffic is allowed over public network. By default it is enabled." + }, + "trustedServiceAccessEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value that indicates whether Trusted Service Access is Enabled or not." + }, + "virtualNetworkRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/NWRuleSetVirtualNetworkRules" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List VirtualNetwork Rules" + } + }, + "description": "NetworkRuleSet properties" + }, + "NWRuleSetIpRules": { + "type": "object", + "properties": { + "action": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Allow" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The IP Filter Action." + }, + "ipMask": { + "type": "string", + "description": "IP Mask" + } + }, + "description": "Description of NetWorkRuleSet - IpRules resource." + }, + "NWRuleSetVirtualNetworkRules": { + "type": "object", + "properties": { + "ignoreMissingVnetServiceEndpoint": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value that indicates whether to ignore missing VNet Service Endpoint" + }, + "subnet": { + "oneOf": [ + { + "$ref": "#/definitions/Subnet" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties supplied for Subnet" + } + }, + "description": "Description of VirtualNetworkRules - NetworkRules resource." + }, + "PrivateEndpoint": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The ARM identifier for Private Endpoint." + } + }, + "description": "PrivateEndpoint information." + }, + "PrivateEndpointConnection": { + "type": "object", + "properties": { + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the private endpoint connection resource." + } + }, + "description": "Properties of the PrivateEndpointConnection." + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "privateEndpoint": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpoint" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "PrivateEndpoint information." + }, + "privateLinkServiceConnectionState": { + "oneOf": [ + { + "$ref": "#/definitions/ConnectionState" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "ConnectionState information." + }, + "provisioningState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Creating", + "Updating", + "Deleting", + "Succeeded", + "Canceled", + "Failed" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Provisioning state of the Private Endpoint Connection." + } + }, + "description": "Properties of the private endpoint connection resource." + }, + "Ruleproperties": { + "type": "object", + "properties": { + "action": { + "oneOf": [ + { + "$ref": "#/definitions/Action" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represents the filter actions which are allowed for the transformation of a message that have been matched by a filter expression." + }, + "correlationFilter": { + "oneOf": [ + { + "$ref": "#/definitions/CorrelationFilter" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represents the correlation filter expression." + }, + "filterType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SqlFilter", + "CorrelationFilter" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Filter type that is evaluated against a BrokeredMessage." + }, + "sqlFilter": { + "oneOf": [ + { + "$ref": "#/definitions/SqlFilter" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represents a filter which is a composition of an expression and an action that is executed in the pub/sub pipeline." + } + }, + "description": "Description of Rule Resource." + }, + "SBAuthorizationRuleProperties": { + "type": "object", + "properties": { + "rights": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Manage", + "Send", + "Listen" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The rights associated with the rule." + } + }, + "required": [ + "rights" + ], + "description": "AuthorizationRule properties." + }, + "SBClientAffineProperties": { + "type": "object", + "properties": { + "clientId": { + "type": "string", + "description": "Indicates the Client ID of the application that created the client-affine subscription." + }, + "isDurable": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "For client-affine subscriptions, this value indicates whether the subscription is durable or not." + }, + "isShared": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "For client-affine subscriptions, this value indicates whether the subscription is shared or not." + } + }, + "description": "Properties specific to client affine subscriptions." + }, + "SBNamespaceProperties": { + "type": "object", + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate name for namespace" + }, + "disableLocalAuth": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This property disables SAS authentication for the Service Bus namespace." + }, + "encryption": { + "oneOf": [ + { + "$ref": "#/definitions/Encryption" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to configure Encryption" + }, + "privateEndpointConnections": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of private endpoint connections." + }, + "zoneRedundant": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enabling this property creates a Premium Service Bus Namespace in regions supported availability zones." + } + }, + "description": "Properties of the namespace." + }, + "SBQueueProperties": { + "type": "object", + "properties": { + "autoDeleteOnIdle": { + "type": "string", + "format": "duration", + "description": "ISO 8061 timeSpan idle interval after which the queue is automatically deleted. The minimum duration is 5 minutes." + }, + "deadLetteringOnMessageExpiration": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A value that indicates whether this queue has dead letter support when a message expires." + }, + "defaultMessageTimeToLive": { + "type": "string", + "format": "duration", + "description": "ISO 8601 default message timespan to live value. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself." + }, + "duplicateDetectionHistoryTimeWindow": { + "type": "string", + "format": "duration", + "description": "ISO 8601 timeSpan structure that defines the duration of the duplicate detection history. The default value is 10 minutes." + }, + "enableBatchedOperations": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value that indicates whether server-side batched operations are enabled." + }, + "enableExpress": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A value that indicates whether Express Entities are enabled. An express queue holds a message in memory temporarily before writing it to persistent storage." + }, + "enablePartitioning": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A value that indicates whether the queue is to be partitioned across multiple message brokers." + }, + "forwardDeadLetteredMessagesTo": { + "type": "string", + "description": "Queue/Topic name to forward the Dead Letter message" + }, + "forwardTo": { + "type": "string", + "description": "Queue/Topic name to forward the messages" + }, + "lockDuration": { + "type": "string", + "format": "duration", + "description": "ISO 8601 timespan duration of a peek-lock; that is, the amount of time that the message is locked for other receivers. The maximum value for LockDuration is 5 minutes; the default value is 1 minute." + }, + "maxDeliveryCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum delivery count. A message is automatically deadlettered after this number of deliveries. default value is 10." + }, + "maxMessageSizeInKilobytes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Maximum size (in KB) of the message payload that can be accepted by the queue. This property is only used in Premium today and default is 1024." + }, + "maxSizeInMegabytes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The maximum size of the queue in megabytes, which is the size of memory allocated for the queue. Default is 1024." + }, + "requiresDuplicateDetection": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A value indicating if this queue requires duplicate detection." + }, + "requiresSession": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A value that indicates whether the queue supports the concept of sessions." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Active", + "Disabled", + "Restoring", + "SendDisabled", + "ReceiveDisabled", + "Creating", + "Deleting", + "Renaming", + "Unknown" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enumerates the possible values for the status of a messaging entity." + } + }, + "description": "The Queue Properties definition." + }, + "SBSku": { + "type": "object", + "properties": { + "capacity": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The specified messaging units for the tier. For Premium tier, capacity are 1,2 and 4." + }, + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Basic", + "Standard", + "Premium" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Name of this SKU." + }, + "tier": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Basic", + "Standard", + "Premium" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The billing tier of this particular SKU." + } + }, + "required": [ + "name" + ], + "description": "SKU of the namespace." + }, + "SBSubscriptionProperties": { + "type": "object", + "properties": { + "autoDeleteOnIdle": { + "type": "string", + "format": "duration", + "description": "ISO 8061 timeSpan idle interval after which the topic is automatically deleted. The minimum duration is 5 minutes." + }, + "clientAffineProperties": { + "oneOf": [ + { + "$ref": "#/definitions/SBClientAffineProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties specific to client affine subscriptions." + }, + "deadLetteringOnFilterEvaluationExceptions": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value that indicates whether a subscription has dead letter support on filter evaluation exceptions." + }, + "deadLetteringOnMessageExpiration": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value that indicates whether a subscription has dead letter support when a message expires." + }, + "defaultMessageTimeToLive": { + "type": "string", + "format": "duration", + "description": "ISO 8061 Default message timespan to live value. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself." + }, + "duplicateDetectionHistoryTimeWindow": { + "type": "string", + "format": "duration", + "description": "ISO 8601 timeSpan structure that defines the duration of the duplicate detection history. The default value is 10 minutes." + }, + "enableBatchedOperations": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value that indicates whether server-side batched operations are enabled." + }, + "forwardDeadLetteredMessagesTo": { + "type": "string", + "description": "Queue/Topic name to forward the Dead Letter message" + }, + "forwardTo": { + "type": "string", + "description": "Queue/Topic name to forward the messages" + }, + "isClientAffine": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value that indicates whether the subscription has an affinity to the client id." + }, + "lockDuration": { + "type": "string", + "format": "duration", + "description": "ISO 8061 lock duration timespan for the subscription. The default value is 1 minute." + }, + "maxDeliveryCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of maximum deliveries." + }, + "requiresSession": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value indicating if a subscription supports the concept of sessions." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Active", + "Disabled", + "Restoring", + "SendDisabled", + "ReceiveDisabled", + "Creating", + "Deleting", + "Renaming", + "Unknown" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enumerates the possible values for the status of a messaging entity." + } + }, + "description": "Description of Subscription Resource." + }, + "SBTopicProperties": { + "type": "object", + "properties": { + "autoDeleteOnIdle": { + "type": "string", + "format": "duration", + "description": "ISO 8601 timespan idle interval after which the topic is automatically deleted. The minimum duration is 5 minutes." + }, + "defaultMessageTimeToLive": { + "type": "string", + "format": "duration", + "description": "ISO 8601 Default message timespan to live value. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself." + }, + "duplicateDetectionHistoryTimeWindow": { + "type": "string", + "format": "duration", + "description": "ISO8601 timespan structure that defines the duration of the duplicate detection history. The default value is 10 minutes." + }, + "enableBatchedOperations": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value that indicates whether server-side batched operations are enabled." + }, + "enableExpress": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value that indicates whether Express Entities are enabled. An express topic holds a message in memory temporarily before writing it to persistent storage." + }, + "enablePartitioning": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value that indicates whether the topic to be partitioned across multiple message brokers is enabled." + }, + "maxMessageSizeInKilobytes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Maximum size (in KB) of the message payload that can be accepted by the topic. This property is only used in Premium today and default is 1024." + }, + "maxSizeInMegabytes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Maximum size of the topic in megabytes, which is the size of the memory allocated for the topic. Default is 1024." + }, + "requiresDuplicateDetection": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value indicating if this topic requires duplicate detection." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Active", + "Disabled", + "Restoring", + "SendDisabled", + "ReceiveDisabled", + "Creating", + "Deleting", + "Renaming", + "Unknown" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enumerates the possible values for the status of a messaging entity." + }, + "supportOrdering": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value that indicates whether the topic supports ordering." + } + }, + "description": "The Topic Properties definition." + }, + "SqlFilter": { + "type": "object", + "properties": { + "compatibilityLevel": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This property is reserved for future use. An integer value showing the compatibility level, currently hard-coded to 20." + }, + "requiresPreprocessing": { + "oneOf": [ + { + "type": "boolean", + "default": true + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value that indicates whether the rule action requires preprocessing." + }, + "sqlExpression": { + "type": "string", + "description": "The SQL expression. e.g. MyProperty='ABC'" + } + }, + "description": "Represents a filter which is a composition of an expression and an action that is executed in the pub/sub pipeline." + }, + "Subnet": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID of Virtual Network Subnet" + } + }, + "required": [ + "id" + ], + "description": "Properties supplied for Subnet" + }, + "UserAssignedIdentity": { + "type": "object", + "properties": {}, + "description": "Recognized Dictionary value." + }, + "UserAssignedIdentityProperties": { + "type": "object", + "properties": { + "userAssignedIdentity": { + "type": "string", + "description": "ARM ID of user Identity selected for encryption" + } + } + } + } +} \ No newline at end of file diff --git a/schemas/2021-11-10-preview/Microsoft.VideoIndexer.json b/schemas/2021-11-10-preview/Microsoft.VideoIndexer.json new file mode 100644 index 0000000000..704fc4a62c --- /dev/null +++ b/schemas/2021-11-10-preview/Microsoft.VideoIndexer.json @@ -0,0 +1,169 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-11-10-preview/Microsoft.VideoIndexer.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.VideoIndexer", + "description": "Microsoft VideoIndexer Resource Types", + "resourceDefinitions": { + "accounts": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-11-10-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Managed service identity (system assigned and/or user assigned identities)" + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-z0-9]+(-[a-z0-9]+)*", + "maxLength": 50 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the Azure Video Analyzer for Media account." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AccountPropertiesForPutRequest" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Video Analyzer for Media account 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.VideoIndexer/accounts" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.VideoIndexer/accounts" + } + }, + "definitions": { + "AccountPropertiesForPutRequest": { + "type": "object", + "properties": { + "accountId": { + "type": "string", + "description": "The account's data-plane ID" + }, + "mediaServices": { + "oneOf": [ + { + "$ref": "#/definitions/MediaServicesForPutRequest" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The media services details" + } + }, + "description": "Azure Video Analyzer for Media account properties" + }, + "ManagedServiceIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned,UserAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "userAssignedIdentities": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/UserAssignedIdentity" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The set of user assigned identities associated with the resource. The userAssignedIdentities dictionary keys will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}. The dictionary values can be empty objects ({}) in requests." + } + }, + "required": [ + "type" + ], + "description": "Managed service identity (system assigned and/or user assigned identities)" + }, + "MediaServicesForPutRequest": { + "type": "object", + "properties": { + "resourceId": { + "type": "string", + "description": "The media services resource id" + }, + "userAssignedIdentity": { + "type": "string", + "description": "The user assigned identity to be used to grant permissions" + } + }, + "description": "The media services details" + }, + "UserAssignedIdentity": { + "type": "object", + "properties": {}, + "description": "User assigned identity properties" + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 90a23d98fc..9d5bb9653d 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -11371,6 +11371,42 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-06-01-preview/Microsoft.ServiceBus.json#/resourceDefinitions/namespaces_topics_subscriptions_rules" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01/Microsoft.ServiceBus.json#/resourceDefinitions/namespaces" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01/Microsoft.ServiceBus.json#/resourceDefinitions/namespaces_AuthorizationRules" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01/Microsoft.ServiceBus.json#/resourceDefinitions/namespaces_disasterRecoveryConfigs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01/Microsoft.ServiceBus.json#/resourceDefinitions/namespaces_migrationConfigurations" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01/Microsoft.ServiceBus.json#/resourceDefinitions/namespaces_networkRuleSets" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01/Microsoft.ServiceBus.json#/resourceDefinitions/namespaces_privateEndpointConnections" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01/Microsoft.ServiceBus.json#/resourceDefinitions/namespaces_queues" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01/Microsoft.ServiceBus.json#/resourceDefinitions/namespaces_queues_authorizationRules" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01/Microsoft.ServiceBus.json#/resourceDefinitions/namespaces_topics" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01/Microsoft.ServiceBus.json#/resourceDefinitions/namespaces_topics_authorizationRules" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01/Microsoft.ServiceBus.json#/resourceDefinitions/namespaces_topics_subscriptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01/Microsoft.ServiceBus.json#/resourceDefinitions/namespaces_topics_subscriptions_rules" + }, { "$ref": "https://schema.management.azure.com/schemas/2016-09-01/Microsoft.ServiceFabric.json#/resourceDefinitions/clusters" }, @@ -11488,6 +11524,42 @@ { "$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" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-01-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applications" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-01-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applications_services" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-01-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applicationTypes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-01-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applicationTypes_versions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-01-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedClusters_nodeTypes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ServiceFabric.json#/resourceDefinitions/managedClusters" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applications" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applications_services" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applicationTypes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-05-01/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applicationTypes_versions" + }, + { + "$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" }, @@ -11503,6 +11575,42 @@ { "$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" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-07-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applications" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-07-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applications_services" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-07-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applicationTypes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-07-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applicationTypes_versions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-07-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedClusters_nodeTypes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedClusters" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applications" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applications_services" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applicationTypes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedclusters_applicationTypes_versions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-01-preview/Microsoft.ServiceFabric.json#/resourceDefinitions/managedClusters_nodeTypes" + }, { "$ref": "https://schema.management.azure.com/schemas/2018-07-01-preview/Microsoft.ServiceFabricMesh.json#/resourceDefinitions/applications" }, @@ -14317,6 +14425,9 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-10-27-preview/Microsoft.VideoIndexer.json#/resourceDefinitions/accounts" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-11-10-preview/Microsoft.VideoIndexer.json#/resourceDefinitions/accounts" + }, { "$ref": "https://schema.management.azure.com/schemas/2018-02-01-preview/Microsoft.VirtualMachineImages.json#/resourceDefinitions/imageTemplates" }, From 12c89b6f05213c430256da9f896b778cf5b60adb Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 24 Nov 2021 13:59:10 +0000 Subject: [PATCH 13/23] Update resource list --- generator/resources.json | 75 ++++++++++++++++++++++++++++++++-------- 1 file changed, 60 insertions(+), 15 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index c7c1f08ca0..210a6928e5 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -7301,20 +7301,23 @@ "2017-04-01", "2018-01-01-preview", "2021-01-01-preview", - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.ServiceBus/namespaces/AuthorizationRules": [ "2015-08-01", "2017-04-01", "2018-01-01-preview", "2021-01-01-preview", - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.ServiceBus/namespaces/disasterRecoveryConfigs": [ "2017-04-01", "2018-01-01-preview", "2021-01-01-preview", - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.ServiceBus/namespaces/ipfilterrules": [ "2018-01-01-preview" @@ -7323,59 +7326,68 @@ "2017-04-01", "2018-01-01-preview", "2021-01-01-preview", - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.ServiceBus/namespaces/networkRuleSets": [ "2017-04-01", "2018-01-01-preview", "2021-01-01-preview", - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.ServiceBus/namespaces/privateEndpointConnections": [ "2018-01-01-preview", "2021-01-01-preview", - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.ServiceBus/namespaces/queues": [ "2015-08-01", "2017-04-01", "2018-01-01-preview", "2021-01-01-preview", - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.ServiceBus/namespaces/queues/authorizationRules": [ "2015-08-01", "2017-04-01", "2018-01-01-preview", "2021-01-01-preview", - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.ServiceBus/namespaces/topics": [ "2015-08-01", "2017-04-01", "2018-01-01-preview", "2021-01-01-preview", - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.ServiceBus/namespaces/topics/authorizationRules": [ "2015-08-01", "2017-04-01", "2018-01-01-preview", "2021-01-01-preview", - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.ServiceBus/namespaces/topics/subscriptions": [ "2015-08-01", "2017-04-01", "2018-01-01-preview", "2021-01-01-preview", - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.ServiceBus/namespaces/topics/subscriptions/rules": [ "2017-04-01", "2018-01-01-preview", "2021-01-01-preview", - "2021-06-01-preview" + "2021-06-01-preview", + "2021-11-01" ], "Microsoft.ServiceBus/namespaces/virtualnetworkrules": [ "2018-01-01-preview" @@ -7433,10 +7445,42 @@ "2021-06-01" ], "Microsoft.ServiceFabric/managedClusters": [ - "2020-01-01-preview" + "2020-01-01-preview", + "2021-01-01-preview", + "2021-05-01", + "2021-07-01-preview", + "2021-11-01-preview" ], "Microsoft.ServiceFabric/managedClusters/nodeTypes": [ - "2020-01-01-preview" + "2020-01-01-preview", + "2021-01-01-preview", + "2021-05-01", + "2021-07-01-preview", + "2021-11-01-preview" + ], + "Microsoft.ServiceFabric/managedclusters/applicationTypes": [ + "2021-01-01-preview", + "2021-05-01", + "2021-07-01-preview", + "2021-11-01-preview" + ], + "Microsoft.ServiceFabric/managedclusters/applicationTypes/versions": [ + "2021-01-01-preview", + "2021-05-01", + "2021-07-01-preview", + "2021-11-01-preview" + ], + "Microsoft.ServiceFabric/managedclusters/applications": [ + "2021-01-01-preview", + "2021-05-01", + "2021-07-01-preview", + "2021-11-01-preview" + ], + "Microsoft.ServiceFabric/managedclusters/applications/services": [ + "2021-01-01-preview", + "2021-05-01", + "2021-07-01-preview", + "2021-11-01-preview" ], "Microsoft.ServiceFabricMesh/applications": [ "2018-07-01-preview", @@ -8798,7 +8842,8 @@ ], "Microsoft.VideoIndexer/accounts": [ "2021-10-18-preview", - "2021-10-27-preview" + "2021-10-27-preview", + "2021-11-10-preview" ], "Microsoft.VirtualMachineImages/imageTemplates": [ "2018-02-01-preview", From 3bdba09329100ecd000058b195de9fcc2f9e296f Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 26 Nov 2021 09:31:16 +0000 Subject: [PATCH 14/23] Autogenerate schemas --- .../Microsoft.LoadTestService.json | 114 ++++++++++++++++++ schemas/common/autogeneratedResources.json | 3 + 2 files changed, 117 insertions(+) create mode 100644 schemas/2021-12-01-preview/Microsoft.LoadTestService.json diff --git a/schemas/2021-12-01-preview/Microsoft.LoadTestService.json b/schemas/2021-12-01-preview/Microsoft.LoadTestService.json new file mode 100644 index 0000000000..d522000941 --- /dev/null +++ b/schemas/2021-12-01-preview/Microsoft.LoadTestService.json @@ -0,0 +1,114 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-12-01-preview/Microsoft.LoadTestService.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.LoadTestService", + "description": "Microsoft LoadTestService Resource Types", + "resourceDefinitions": { + "loadTests": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-12-01-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/SystemAssignedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Managed service identity (either system assigned, or none)" + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "Load Test name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/LoadTestProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "LoadTest 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.LoadTestService/loadTests" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.LoadTestService/loadTests" + } + }, + "definitions": { + "LoadTestProperties": { + "type": "object", + "properties": { + "description": { + "type": "string", + "maxLength": 512, + "description": "Description of the resource." + } + }, + "description": "LoadTest resource properties." + }, + "SystemAssignedServiceIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "SystemAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "required": [ + "type" + ], + "description": "Managed service identity (either system assigned, or none)" + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 9d5bb9653d..54c00feda2 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -8881,6 +8881,9 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-11-15-preview/Microsoft.LabServices.json#/resourceDefinitions/labs_users" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-12-01-preview/Microsoft.LoadTestService.json#/resourceDefinitions/loadTests" + }, { "$ref": "https://schema.management.azure.com/schemas/2020-10-01/Microsoft.Logz.json#/resourceDefinitions/monitors" }, From 7579d21d66bf6b845fafce8f8d202f1d761c18fa Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 26 Nov 2021 09:31:33 +0000 Subject: [PATCH 15/23] Update resource list --- generator/resources.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/generator/resources.json b/generator/resources.json index 210a6928e5..ebb091d385 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -4333,6 +4333,9 @@ "2021-10-01-preview", "2021-11-15-preview" ], + "Microsoft.LoadTestService/loadTests": [ + "2021-12-01-preview" + ], "Microsoft.Logic/integrationAccounts": [ "2016-06-01" ], From e52494a01b02e41fd7062c169fb0b788dac9dbc4 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 26 Nov 2021 10:32:25 +0000 Subject: [PATCH 16/23] Autogenerate schemas --- schemas/2021-08-01/Microsoft.NetApp.json | 2378 +++++++++ .../Microsoft.RecoveryServices.Backup.json | 4272 +++++++++++++++++ schemas/common/autogeneratedResources.json | 51 + 3 files changed, 6701 insertions(+) create mode 100644 schemas/2021-08-01/Microsoft.NetApp.json create mode 100644 schemas/2021-10-01/Microsoft.RecoveryServices.Backup.json diff --git a/schemas/2021-08-01/Microsoft.NetApp.json b/schemas/2021-08-01/Microsoft.NetApp.json new file mode 100644 index 0000000000..b1923c8938 --- /dev/null +++ b/schemas/2021-08-01/Microsoft.NetApp.json @@ -0,0 +1,2378 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-08-01/Microsoft.NetApp.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.NetApp", + "description": "Microsoft NetApp Resource Types", + "resourceDefinitions": { + "netAppAccounts": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the NetApp account" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AccountProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "NetApp account properties" + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/netAppAccounts_capacityPools_childResource" + }, + { + "$ref": "#/definitions/netAppAccounts_snapshotPolicies_childResource" + }, + { + "$ref": "#/definitions/netAppAccounts_backupPolicies_childResource" + }, + { + "$ref": "#/definitions/netAppAccounts_volumeGroups_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.NetApp/netAppAccounts" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.NetApp/netAppAccounts" + }, + "netAppAccounts_backupPolicies": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "Backup policy Name which uniquely identify backup policy." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BackupPolicyProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup policy properties" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.NetApp/netAppAccounts/backupPolicies" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.NetApp/netAppAccounts/backupPolicies" + }, + "netAppAccounts_capacityPools": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,63}$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the capacity pool" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PoolProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Pool properties" + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/netAppAccounts_capacityPools_volumes_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.NetApp/netAppAccounts/capacityPools" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.NetApp/netAppAccounts/capacityPools" + }, + "netAppAccounts_capacityPools_volumes": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z][a-zA-Z0-9\\-_]{0,63}$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the volume" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VolumeProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Volume properties" + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/netAppAccounts_capacityPools_volumes_snapshots_childResource" + }, + { + "$ref": "#/definitions/netAppAccounts_capacityPools_volumes_backups_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.NetApp/netAppAccounts/capacityPools/volumes" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes" + }, + "netAppAccounts_capacityPools_volumes_backups": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the backup" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BackupProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup properties" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups" + }, + "netAppAccounts_capacityPools_volumes_snapshots": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the snapshot" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SnapshotProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Snapshot properties" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots" + }, + "netAppAccounts_snapshotPolicies": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the snapshot policy" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SnapshotPolicyProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Snapshot policy properties" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.NetApp/netAppAccounts/snapshotPolicies" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.NetApp/netAppAccounts/snapshotPolicies" + }, + "netAppAccounts_volumeGroups": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,63}$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the volumeGroup" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VolumeGroupProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Volume group properties" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.NetApp/netAppAccounts/volumeGroups" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.NetApp/netAppAccounts/volumeGroups" + } + }, + "definitions": { + "AccountEncryption": { + "type": "object", + "properties": { + "keySource": { + "type": "string", + "description": "Encryption Key Source. Possible values are: 'Microsoft.NetApp'." + } + }, + "description": "Encryption settings" + }, + "AccountProperties": { + "type": "object", + "properties": { + "activeDirectories": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ActiveDirectory" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Active Directories" + }, + "encryption": { + "oneOf": [ + { + "$ref": "#/definitions/AccountEncryption" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Encryption settings" + } + }, + "description": "NetApp account properties" + }, + "ActiveDirectory": { + "type": "object", + "properties": { + "activeDirectoryId": { + "type": "string", + "description": "Id of the Active Directory" + }, + "administrators": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Users to be added to the Built-in Administrators active directory group. A list of unique usernames without domain specifier" + }, + "adName": { + "type": "string", + "minLength": 1, + "maxLength": 64, + "description": "Name of the active directory machine. This optional parameter is used only while creating kerberos volume" + }, + "aesEncryption": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If enabled, AES encryption will be enabled for SMB communication." + }, + "allowLocalNfsUsersWithLdap": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": " If enabled, NFS client local users can also (in addition to LDAP users) access the NFS volumes." + }, + "backupOperators": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Users to be added to the Built-in Backup Operator active directory group. A list of unique usernames without domain specifier" + }, + "dns": { + "oneOf": [ + { + "type": "string", + "pattern": "^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)((, ?)(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Comma separated list of DNS server IP addresses (IPv4 only) for the Active Directory domain" + }, + "domain": { + "type": "string", + "description": "Name of the Active Directory domain" + }, + "encryptDCConnections": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If enabled, Traffic between the SMB server to Domain Controller (DC) will be encrypted." + }, + "kdcIP": { + "oneOf": [ + { + "type": "string", + "pattern": "^(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)((, ?)(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?))*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "kdc server IP addresses for the active directory machine. This optional parameter is used only while creating kerberos volume." + }, + "ldapOverTLS": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether or not the LDAP traffic needs to be secured via TLS." + }, + "ldapSigning": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether or not the LDAP traffic needs to be signed." + }, + "organizationalUnit": { + "type": "string", + "default": "CN=Computers", + "description": "The Organizational Unit (OU) within the Windows Active Directory" + }, + "password": { + "type": "string", + "description": "Plain text password of Active Directory domain administrator, value is masked in the response" + }, + "securityOperators": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Domain Users in the Active directory to be given SeSecurityPrivilege privilege (Needed for SMB Continuously available shares for SQL). A list of unique usernames without domain specifier" + }, + "serverRootCACertificate": { + "type": "string", + "minLength": 1, + "maxLength": 10240, + "description": "When LDAP over SSL/TLS is enabled, the LDAP client is required to have base64 encoded Active Directory Certificate Service's self-signed root CA certificate, this optional parameter is used only for dual protocol with LDAP user-mapping volumes." + }, + "site": { + "type": "string", + "description": "The Active Directory site the service will limit Domain Controller discovery to" + }, + "smbServerName": { + "type": "string", + "description": "NetBIOS name of the SMB server. This name will be registered as a computer account in the AD and used to mount volumes" + }, + "username": { + "type": "string", + "description": "Username of Active Directory domain administrator" + } + }, + "description": "Active Directory" + }, + "BackupPolicyProperties": { + "type": "object", + "properties": { + "dailyBackupsToKeep": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Daily backups count to keep" + }, + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The property to decide policy is enabled or not" + }, + "monthlyBackupsToKeep": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Monthly backups count to keep" + }, + "weeklyBackupsToKeep": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Weekly backups count to keep" + } + }, + "description": "Backup policy properties" + }, + "BackupProperties": { + "type": "object", + "properties": { + "label": { + "type": "string", + "description": "Label for backup" + }, + "useExistingSnapshot": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Manual backup an already existing snapshot. This will always be false for scheduled backups and true/false for manual backups" + } + }, + "description": "Backup properties" + }, + "DailySchedule": { + "type": "object", + "properties": { + "hour": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates which hour in UTC timezone a snapshot should be taken" + }, + "minute": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates which minute snapshot should be taken" + }, + "snapshotsToKeep": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Daily snapshot count to keep" + }, + "usedBytes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource size in bytes, current storage usage for the volume in bytes" + } + }, + "description": "Daily Schedule properties" + }, + "ExportPolicyRule": { + "type": "object", + "properties": { + "allowedClients": { + "type": "string", + "description": "Client ingress specification as comma separated string with IPv4 CIDRs, IPv4 host addresses and host names" + }, + "chownMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Restricted", + "Unrestricted" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This parameter specifies who is authorized to change the ownership of a file. restricted - Only root user can change the ownership of the file. unrestricted - Non-root users can change ownership of files that they own." + }, + "cifs": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Allows CIFS protocol" + }, + "hasRootAccess": { + "oneOf": [ + { + "type": "boolean", + "default": true + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Has root access to volume" + }, + "kerberos5iReadOnly": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Kerberos5i Read only access. To be use with swagger version 2020-05-01 or later" + }, + "kerberos5iReadWrite": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Kerberos5i Read and write access. To be use with swagger version 2020-05-01 or later" + }, + "kerberos5pReadOnly": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Kerberos5p Read only access. To be use with swagger version 2020-05-01 or later" + }, + "kerberos5pReadWrite": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Kerberos5p Read and write access. To be use with swagger version 2020-05-01 or later" + }, + "kerberos5ReadOnly": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Kerberos5 Read only access. To be use with swagger version 2020-05-01 or later" + }, + "kerberos5ReadWrite": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Kerberos5 Read and write access. To be use with swagger version 2020-05-01 or later" + }, + "nfsv3": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Allows NFSv3 protocol. Enable only for NFSv3 type volumes" + }, + "nfsv41": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Allows NFSv4.1 protocol. Enable only for NFSv4.1 type volumes" + }, + "ruleIndex": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Order index" + }, + "unixReadOnly": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Read only access" + }, + "unixReadWrite": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Read and write access" + } + }, + "description": "Volume Export Policy Rule" + }, + "HourlySchedule": { + "type": "object", + "properties": { + "minute": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates which minute snapshot should be taken" + }, + "snapshotsToKeep": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Hourly snapshot count to keep" + }, + "usedBytes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource size in bytes, current storage usage for the volume in bytes" + } + }, + "description": "Hourly Schedule properties" + }, + "MonthlySchedule": { + "type": "object", + "properties": { + "daysOfMonth": { + "type": "string", + "description": "Indicates which days of the month snapshot should be taken. A comma delimited string." + }, + "hour": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates which hour in UTC timezone a snapshot should be taken" + }, + "minute": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates which minute snapshot should be taken" + }, + "snapshotsToKeep": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Monthly snapshot count to keep" + }, + "usedBytes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource size in bytes, current storage usage for the volume in bytes" + } + }, + "description": "Monthly Schedule properties" + }, + "netAppAccounts_backupPolicies_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "Backup policy Name which uniquely identify backup policy." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BackupPolicyProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup policy properties" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource" + }, + "type": { + "type": "string", + "enum": [ + "backupPolicies" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.NetApp/netAppAccounts/backupPolicies" + }, + "netAppAccounts_capacityPools_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,63}$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the capacity pool" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PoolProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Pool properties" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource" + }, + "type": { + "type": "string", + "enum": [ + "capacityPools" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.NetApp/netAppAccounts/capacityPools" + }, + "netAppAccounts_capacityPools_volumes_backups_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the backup" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BackupProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup properties" + }, + "type": { + "type": "string", + "enum": [ + "backups" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups" + }, + "netAppAccounts_capacityPools_volumes_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z][a-zA-Z0-9\\-_]{0,63}$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the volume" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VolumeProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Volume properties" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource" + }, + "type": { + "type": "string", + "enum": [ + "volumes" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes" + }, + "netAppAccounts_capacityPools_volumes_snapshots_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the snapshot" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SnapshotProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Snapshot properties" + }, + "type": { + "type": "string", + "enum": [ + "snapshots" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots" + }, + "netAppAccounts_snapshotPolicies_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the snapshot policy" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SnapshotPolicyProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Snapshot policy properties" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource" + }, + "type": { + "type": "string", + "enum": [ + "snapshotPolicies" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.NetApp/netAppAccounts/snapshotPolicies" + }, + "netAppAccounts_volumeGroups_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9][a-zA-Z0-9\\-_]{0,63}$", + "minLength": 1, + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the volumeGroup" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VolumeGroupProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Volume group properties" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource" + }, + "type": { + "type": "string", + "enum": [ + "volumeGroups" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.NetApp/netAppAccounts/volumeGroups" + }, + "PlacementKeyValuePairs": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Key for an application specific parameter for the placement of volumes in the volume group" + }, + "value": { + "type": "string", + "description": "Value for an application specific parameter for the placement of volumes in the volume group" + } + }, + "required": [ + "key", + "value" + ], + "description": "Application specific parameters for the placement of volumes in the volume group" + }, + "PoolProperties": { + "type": "object", + "properties": { + "coolAccess": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If enabled (true) the pool can contain cool Access enabled volumes." + }, + "encryptionType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Single", + "Double" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Encryption type of the capacity pool, set encryption type for data at rest for this pool and all volumes in it. This value can only be set when creating new pool." + }, + "qosType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Auto", + "Manual" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The qos type of the pool." + }, + "serviceLevel": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard", + "Premium", + "Ultra", + "StandardZRS" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "size": { + "oneOf": [ + { + "type": "integer", + "minimum": 4398046511104, + "maximum": 549755813888000 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Provisioned size of the pool (in bytes). Allowed values are in 4TiB chunks (value must be multiply of 4398046511104)." + } + }, + "required": [ + "serviceLevel", + "size" + ], + "description": "Pool properties" + }, + "ReplicationObject": { + "type": "object", + "properties": { + "endpointType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "src", + "dst" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether the local volume is the source or destination for the Volume Replication." + }, + "remoteVolumeRegion": { + "type": "string", + "description": "The remote region for the other end of the Volume Replication." + }, + "remoteVolumeResourceId": { + "type": "string", + "description": "The resource ID of the remote volume." + }, + "replicationId": { + "type": "string", + "description": "Id" + }, + "replicationSchedule": { + "oneOf": [ + { + "type": "string", + "enum": [ + "_10minutely", + "hourly", + "daily" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Schedule." + } + }, + "required": [ + "remoteVolumeResourceId" + ], + "description": "Replication properties" + }, + "SnapshotPolicyProperties": { + "type": "object", + "properties": { + "dailySchedule": { + "oneOf": [ + { + "$ref": "#/definitions/DailySchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Daily Schedule properties" + }, + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The property to decide policy is enabled or not" + }, + "hourlySchedule": { + "oneOf": [ + { + "$ref": "#/definitions/HourlySchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Hourly Schedule properties" + }, + "monthlySchedule": { + "oneOf": [ + { + "$ref": "#/definitions/MonthlySchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Monthly Schedule properties" + }, + "weeklySchedule": { + "oneOf": [ + { + "$ref": "#/definitions/WeeklySchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Weekly Schedule properties, make a snapshot every week at a specific day or days" + } + }, + "description": "Snapshot policy properties" + }, + "SnapshotProperties": { + "type": "object", + "properties": {}, + "description": "Snapshot properties" + }, + "VolumeBackupProperties": { + "type": "object", + "properties": { + "backupEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup Enabled" + }, + "backupPolicyId": { + "type": "string", + "description": "Backup Policy Resource ID" + }, + "policyEnforced": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Policy Enforced" + }, + "vaultId": { + "type": "string", + "description": "Vault Resource ID" + } + }, + "description": "Volume Backup Properties" + }, + "VolumeGroupMetaData": { + "type": "object", + "properties": { + "applicationIdentifier": { + "type": "string", + "description": "Application specific identifier" + }, + "applicationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SAP-HANA" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Application Type." + }, + "deploymentSpecId": { + "type": "string", + "description": "Application specific identifier of deployment rules for the volume group" + }, + "globalPlacementRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/PlacementKeyValuePairs" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Application specific placement rules for the volume group" + }, + "groupDescription": { + "type": "string", + "description": "Group Description" + } + }, + "description": "Volume group properties" + }, + "VolumeGroupProperties": { + "type": "object", + "properties": { + "groupMetaData": { + "oneOf": [ + { + "$ref": "#/definitions/VolumeGroupMetaData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Volume group properties" + }, + "volumes": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/VolumeGroupVolumeProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of volumes from group" + } + }, + "description": "Volume group properties" + }, + "VolumeGroupVolumeProperties": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Resource name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VolumeProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Volume properties" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags are a list of key-value pairs that describe the resource" + } + }, + "required": [ + "properties" + ], + "description": "Volume resource" + }, + "VolumeProperties": { + "type": "object", + "properties": { + "avsDataStore": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether the volume is enabled for Azure VMware Solution (AVS) datastore purpose." + }, + "backupId": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\\\?([^\\/]*[\\/])*)([^\\/]+)$", + "minLength": 36, + "maxLength": 36 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "UUID v4 or resource identifier used to identify the Backup." + }, + "capacityPoolResourceId": { + "type": "string", + "description": "Pool Resource Id used in case of creating a volume through volume group" + }, + "coolAccess": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether Cool Access(tiering) is enabled for the volume." + }, + "coolnessPeriod": { + "oneOf": [ + { + "type": "integer", + "minimum": 7, + "maximum": 63 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the number of days after which data that is not accessed by clients will be tiered." + }, + "creationToken": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z][a-zA-Z0-9\\-]{0,79}$", + "minLength": 1, + "maxLength": 80 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A unique file path for the volume. Used when creating mount targets" + }, + "dataProtection": { + "oneOf": [ + { + "$ref": "#/definitions/VolumePropertiesDataProtection" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "DataProtection type volumes include an object containing details of the replication" + }, + "defaultGroupQuotaInKiBs": { + "oneOf": [ + { + "type": "integer", + "default": "0" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Default group quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies." + }, + "defaultUserQuotaInKiBs": { + "oneOf": [ + { + "type": "integer", + "default": "0" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Default user quota for volume in KiBs. If isDefaultQuotaEnabled is set, the minimum value of 4 KiBs applies ." + }, + "encryptionKeySource": { + "type": "string", + "description": "Encryption Key Source. Possible values are: 'Microsoft.NetApp'" + }, + "exportPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/VolumePropertiesExportPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Set of export policy rules" + }, + "isDefaultQuotaEnabled": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies if default quota is enabled for the volume." + }, + "isRestoring": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Restoring" + }, + "kerberosEnabled": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describe if a volume is KerberosEnabled. To be use with swagger version 2020-05-01 or later" + }, + "ldapEnabled": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether LDAP is enabled or not for a given NFS volume." + }, + "networkFeatures": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Basic", + "Standard" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Basic network, or Standard features available to the volume." + }, + "placementRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/PlacementKeyValuePairs" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Application specific placement rules for the particular volume" + }, + "protocolTypes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Set of protocol types, default NFSv3, CIFS for SMB protocol" + }, + "proximityPlacementGroup": { + "type": "string", + "description": "Proximity placement group associated with the volume" + }, + "securityStyle": { + "oneOf": [ + { + "type": "string", + "enum": [ + "ntfs", + "unix" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The security style of volume, default unix, defaults to ntfs for dual protocol or CIFS protocol." + }, + "serviceLevel": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard", + "Premium", + "Ultra", + "StandardZRS" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "smbContinuouslyAvailable": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enables continuously available share property for smb volume. Only applicable for SMB volume" + }, + "smbEncryption": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enables encryption for in-flight smb3 data. Only applicable for SMB/DualProtocol volume. To be used with swagger version 2020-08-01 or later" + }, + "snapshotDirectoryVisible": { + "oneOf": [ + { + "type": "boolean", + "default": true + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If enabled (true) the volume will contain a read-only snapshot directory which provides access to each of the volume's snapshots (default to true)." + }, + "snapshotId": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}|(\\\\?([^\\/]*[\\/])*)([^\\/]+)$", + "minLength": 36, + "maxLength": 36 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "UUID v4 or resource identifier used to identify the Snapshot." + }, + "subnetId": { + "type": "string", + "description": "The Azure Resource URI for a delegated subnet. Must have the delegation Microsoft.NetApp/volumes" + }, + "throughputMibps": { + "oneOf": [ + { + "type": "number", + "default": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "unixPermissions": { + "type": "string", + "minLength": 4, + "maxLength": 4, + "default": "0770", + "description": "UNIX permissions for NFS volume accepted in octal 4 digit format. First digit selects the set user ID(4), set group ID (2) and sticky (1) attributes. Second digit selects permission for the owner of the file: read (4), write (2) and execute (1). Third selects permissions for other users in the same group. the fourth for other users not in the group. 0755 - gives read/write/execute permissions to owner and read/execute to group and other users." + }, + "usageThreshold": { + "oneOf": [ + { + "type": "integer", + "minimum": 107374182400, + "maximum": 109951162777600, + "default": "107374182400" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Maximum storage quota allowed for a file system in bytes. This is a soft quota used for alerting only. Minimum size is 100 GiB. Upper limit is 100TiB. Specified in bytes." + }, + "volumeSpecName": { + "type": "string", + "description": "Volume spec name is the application specific designation or identifier for the particular volume in a volume group for e.g. data, log" + }, + "volumeType": { + "type": "string", + "description": "What type of volume is this. For destination volumes in Cross Region Replication, set type to DataProtection" + } + }, + "required": [ + "creationToken", + "subnetId", + "usageThreshold" + ], + "description": "Volume properties" + }, + "VolumePropertiesDataProtection": { + "type": "object", + "properties": { + "backup": { + "oneOf": [ + { + "$ref": "#/definitions/VolumeBackupProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Volume Backup Properties" + }, + "replication": { + "oneOf": [ + { + "$ref": "#/definitions/ReplicationObject" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Replication properties" + }, + "snapshot": { + "oneOf": [ + { + "$ref": "#/definitions/VolumeSnapshotProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Volume Snapshot Properties" + } + }, + "description": "DataProtection type volumes include an object containing details of the replication" + }, + "VolumePropertiesExportPolicy": { + "type": "object", + "properties": { + "rules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ExportPolicyRule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Export policy rule" + } + }, + "description": "Set of export policy rules" + }, + "VolumeSnapshotProperties": { + "type": "object", + "properties": { + "snapshotPolicyId": { + "type": "string", + "description": "Snapshot Policy ResourceId" + } + }, + "description": "Volume Snapshot Properties" + }, + "WeeklySchedule": { + "type": "object", + "properties": { + "day": { + "type": "string", + "description": "Indicates which weekdays snapshot should be taken, accepts a comma separated list of week day names in english" + }, + "hour": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates which hour in UTC timezone a snapshot should be taken" + }, + "minute": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates which minute snapshot should be taken" + }, + "snapshotsToKeep": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Weekly snapshot count to keep" + }, + "usedBytes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource size in bytes, current storage usage for the volume in bytes" + } + }, + "description": "Weekly Schedule properties, make a snapshot every week at a specific day or days" + } + } +} \ No newline at end of file diff --git a/schemas/2021-10-01/Microsoft.RecoveryServices.Backup.json b/schemas/2021-10-01/Microsoft.RecoveryServices.Backup.json new file mode 100644 index 0000000000..244b4ce654 --- /dev/null +++ b/schemas/2021-10-01/Microsoft.RecoveryServices.Backup.json @@ -0,0 +1,4272 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.RecoveryServices.Backup.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.RecoveryServices", + "description": "Microsoft RecoveryServices Resource Types", + "resourceDefinitions": { + "vaults_backupconfig": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/vaultconfig$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BackupResourceVaultConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup resource vault config details." + }, + "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.RecoveryServices/vaults/backupconfig" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupconfig" + }, + "vaults_backupEncryptionConfigs": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/backupResourceEncryptionConfig$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BackupResourceEncryptionConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "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.RecoveryServices/vaults/backupEncryptionConfigs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupEncryptionConfigs" + }, + "vaults_backupFabrics_backupProtectionIntent": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "Intent object name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ProtectionIntent" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup ProtectionIntent." + }, + "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.RecoveryServices/vaults/backupFabrics/backupProtectionIntent" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupFabrics/backupProtectionIntent" + }, + "vaults_backupFabrics_protectionContainers": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "Name of the container to be registered." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for container with backup items. Containers with specific workloads are derived from this class." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/vaults_backupFabrics_protectionContainers_protectedItems_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.RecoveryServices/vaults/backupFabrics/protectionContainers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers" + }, + "vaults_backupFabrics_protectionContainers_protectedItems": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "Item name to be backed up." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ProtectedItem" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup items." + }, + "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.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems" + }, + "vaults_backupPolicies": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "Backup policy to be created." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup policy. Workload-specific backup policies are derived from this class." + }, + "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.RecoveryServices/vaults/backupPolicies" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupPolicies" + }, + "vaults_backupResourceGuardProxies": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "name": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.RecoveryServices/vaults/backupResourceGuardProxies" + ] + } + }, + "required": [ + "apiVersion", + "name", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupResourceGuardProxies" + }, + "vaults_backupstorageconfig": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/vaultstorageconfig$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BackupResourceConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The resource storage details." + }, + "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.RecoveryServices/vaults/backupstorageconfig" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupstorageconfig" + }, + "vaults_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Private Endpoint Connection Response 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.RecoveryServices/vaults/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/privateEndpointConnections" + } + }, + "definitions": { + "AzureBackupServerContainer": { + "type": "object", + "properties": { + "containerType": { + "type": "string", + "enum": [ + "AzureBackupServerContainer" + ] + } + }, + "required": [ + "containerType" + ], + "description": "AzureBackupServer (DPMVenus) workload-specific protection container." + }, + "AzureFileshareProtectedItem": { + "type": "object", + "properties": { + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/AzureFileshareProtectedItemExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information about Azure File Share backup item." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of the fileshare represented by this backup item." + }, + "kpisHealths": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KPIResourceHealthDetails" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health details of different KPIs" + }, + "lastBackupStatus": { + "type": "string", + "description": "Last backup operation status. Possible values: Healthy, Unhealthy." + }, + "lastBackupTime": { + "type": "string", + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item." + }, + "protectedItemType": { + "type": "string", + "enum": [ + "AzureFileShareProtectedItem" + ] + }, + "protectionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup state of this backup item." + }, + "protectionStatus": { + "type": "string", + "description": "Backup status of this backup item." + } + }, + "required": [ + "protectedItemType" + ], + "description": "Azure File Share workload-specific backup item." + }, + "AzureFileshareProtectedItemExtendedInfo": { + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "The oldest backup copy available for this item in the service." + }, + "policyState": { + "type": "string", + "description": "Indicates consistency of policy object and policy applied to this backup item." + }, + "recoveryPointCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of available backup copies associated with this backup item." + } + }, + "description": "Additional information about Azure File Share backup item." + }, + "AzureFileShareProtectionPolicy": { + "type": "object", + "properties": { + "backupManagementType": { + "type": "string", + "enum": [ + "AzureStorage" + ] + }, + "retentionPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for retention policy." + }, + "schedulePolicy": { + "oneOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup schedule." + }, + "timeZone": { + "type": "string", + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\"." + }, + "workLoadType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of workload for the backup management." + } + }, + "required": [ + "backupManagementType" + ], + "description": "AzureStorage backup policy." + }, + "AzureIaaSClassicComputeVMContainer": { + "type": "object", + "properties": { + "containerType": { + "type": "string", + "enum": [ + "Microsoft.ClassicCompute/virtualMachines" + ] + } + }, + "required": [ + "containerType" + ], + "description": "IaaS VM workload-specific backup item representing a classic virtual machine." + }, + "AzureIaaSClassicComputeVMProtectedItem": { + "type": "object", + "properties": { + "protectedItemType": { + "type": "string", + "enum": [ + "Microsoft.ClassicCompute/virtualMachines" + ] + } + }, + "required": [ + "protectedItemType" + ], + "description": "IaaS VM workload-specific backup item representing the Classic Compute VM." + }, + "AzureIaaSComputeVMContainer": { + "type": "object", + "properties": { + "containerType": { + "type": "string", + "enum": [ + "Microsoft.Compute/virtualMachines" + ] + } + }, + "required": [ + "containerType" + ], + "description": "IaaS VM workload-specific backup item representing an Azure Resource Manager virtual machine." + }, + "AzureIaaSComputeVMProtectedItem": { + "type": "object", + "properties": { + "protectedItemType": { + "type": "string", + "enum": [ + "Microsoft.Compute/virtualMachines" + ] + } + }, + "required": [ + "protectedItemType" + ], + "description": "IaaS VM workload-specific backup item representing the Azure Resource Manager VM." + }, + "AzureIaaSVMHealthDetails": { + "type": "object", + "properties": {}, + "description": "Azure IaaS VM workload-specific Health Details." + }, + "AzureIaaSVMProtectedItem": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureIaaSClassicComputeVMProtectedItem" + }, + { + "$ref": "#/definitions/AzureIaaSComputeVMProtectedItem" + } + ], + "properties": { + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/AzureIaaSVMProtectedItemExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information on Azure IaaS VM specific backup item." + }, + "extendedProperties": { + "oneOf": [ + { + "$ref": "#/definitions/ExtendedProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Extended Properties for Azure IaasVM Backup." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of the VM represented by this backup item." + }, + "healthDetails": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/AzureIaaSVMHealthDetails" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health details on this backup item." + }, + "healthStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Passed", + "ActionRequired", + "ActionSuggested", + "Invalid" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health status of protected item." + }, + "kpisHealths": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KPIResourceHealthDetails" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health details of different KPIs" + }, + "lastBackupStatus": { + "type": "string", + "description": "Last backup operation status." + }, + "lastBackupTime": { + "type": "string", + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item." + }, + "protectedItemDataId": { + "type": "string", + "description": "Data ID of the protected item." + }, + "protectedItemType": { + "type": "string", + "enum": [ + "AzureIaaSVMProtectedItem" + ] + }, + "protectionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup state of this backup item." + }, + "protectionStatus": { + "type": "string", + "description": "Backup status of this backup item." + }, + "virtualMachineId": { + "type": "string", + "description": "Fully qualified ARM ID of the virtual machine represented by this item." + } + }, + "required": [ + "protectedItemType" + ], + "description": "IaaS VM workload-specific backup item." + }, + "AzureIaaSVMProtectedItemExtendedInfo": { + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "The oldest backup copy available for this backup item." + }, + "policyInconsistent": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies if backup policy associated with the backup item is inconsistent." + }, + "recoveryPointCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of backup copies available for this backup item." + } + }, + "description": "Additional information on Azure IaaS VM specific backup item." + }, + "AzureIaaSVMProtectionPolicy": { + "type": "object", + "properties": { + "backupManagementType": { + "type": "string", + "enum": [ + "AzureIaasVM" + ] + }, + "instantRPDetails": { + "oneOf": [ + { + "$ref": "#/definitions/InstantRPAdditionalDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "instantRpRetentionRangeInDays": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Instant RP retention policy range in days" + }, + "retentionPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for retention policy." + }, + "schedulePolicy": { + "oneOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup schedule." + }, + "timeZone": { + "type": "string", + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\"." + } + }, + "required": [ + "backupManagementType" + ], + "description": "IaaS VM workload-specific backup policy." + }, + "AzureRecoveryServiceVaultProtectionIntent": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureWorkloadAutoProtectionIntent" + } + ], + "properties": { + "protectionIntentItemType": { + "type": "string", + "enum": [ + "RecoveryServiceVaultItem" + ] + } + }, + "required": [ + "protectionIntentItemType" + ], + "description": "Azure Recovery Services Vault specific protection intent item." + }, + "AzureResourceProtectionIntent": { + "type": "object", + "properties": { + "friendlyName": { + "type": "string", + "description": "Friendly name of the VM represented by this backup item." + }, + "protectionIntentItemType": { + "type": "string", + "enum": [ + "AzureResourceItem" + ] + } + }, + "required": [ + "protectionIntentItemType" + ], + "description": "IaaS VM specific backup protection intent item." + }, + "AzureSQLAGWorkloadContainerProtectionContainer": { + "type": "object", + "properties": { + "containerType": { + "type": "string", + "enum": [ + "SQLAGWorkLoadContainer" + ] + } + }, + "required": [ + "containerType" + ], + "description": "Container for SQL workloads under SQL Availability Group." + }, + "AzureSqlContainer": { + "type": "object", + "properties": { + "containerType": { + "type": "string", + "enum": [ + "AzureSqlContainer" + ] + } + }, + "required": [ + "containerType" + ], + "description": "Azure Sql workload-specific container." + }, + "AzureSqlProtectedItem": { + "type": "object", + "properties": { + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/AzureSqlProtectedItemExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information on Azure Sql specific protected item." + }, + "protectedItemDataId": { + "type": "string", + "description": "Internal ID of a backup item. Used by Azure SQL Backup engine to contact Recovery Services." + }, + "protectedItemType": { + "type": "string", + "enum": [ + "Microsoft.Sql/servers/databases" + ] + }, + "protectionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup state of the backed up item." + } + }, + "required": [ + "protectedItemType" + ], + "description": "Azure SQL workload-specific backup item." + }, + "AzureSqlProtectedItemExtendedInfo": { + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "The oldest backup copy available for this item in the service." + }, + "policyState": { + "type": "string", + "description": "State of the backup policy associated with this backup item." + }, + "recoveryPointCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of available backup copies associated with this backup item." + } + }, + "description": "Additional information on Azure Sql specific protected item." + }, + "AzureSqlProtectionPolicy": { + "type": "object", + "properties": { + "backupManagementType": { + "type": "string", + "enum": [ + "AzureSql" + ] + }, + "retentionPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for retention policy." + } + }, + "required": [ + "backupManagementType" + ], + "description": "Azure SQL workload-specific backup policy." + }, + "AzureStorageContainer": { + "type": "object", + "properties": { + "acquireStorageAccountLock": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Acquire", + "NotAcquire" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether storage account lock is to be acquired for this container or not." + }, + "containerType": { + "type": "string", + "enum": [ + "StorageContainer" + ] + }, + "protectedItemCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of items backed up in this container." + }, + "resourceGroup": { + "type": "string", + "description": "Resource group name of Recovery Services Vault." + }, + "sourceResourceId": { + "type": "string", + "description": "Fully qualified ARM url." + }, + "storageAccountVersion": { + "type": "string", + "description": "Storage account version." + } + }, + "required": [ + "containerType" + ], + "description": "Azure Storage Account workload-specific container." + }, + "AzureVMAppContainerProtectionContainer": { + "type": "object", + "properties": { + "containerType": { + "type": "string", + "enum": [ + "VMAppContainer" + ] + } + }, + "required": [ + "containerType" + ], + "description": "Container for SQL workloads under Azure Virtual Machines." + }, + "AzureVmWorkloadProtectedItem": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadSAPAseDatabaseProtectedItem" + }, + { + "$ref": "#/definitions/AzureVmWorkloadSAPHanaDatabaseProtectedItem" + }, + { + "$ref": "#/definitions/AzureVmWorkloadSQLDatabaseProtectedItem" + } + ], + "properties": { + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItemExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information on Azure Workload for SQL specific backup item." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of the DB represented by this backup item." + }, + "kpisHealths": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KPIResourceHealthDetails" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health details of different KPIs" + }, + "lastBackupErrorDetail": { + "oneOf": [ + { + "$ref": "#/definitions/ErrorDetail" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Error Detail class which encapsulates Code, Message and Recommendations." + }, + "lastBackupStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Healthy", + "Unhealthy", + "IRPending" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Last backup operation status. Possible values: Healthy, Unhealthy." + }, + "lastBackupTime": { + "type": "string", + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item." + }, + "parentName": { + "type": "string", + "description": "Parent name of the DB such as Instance or Availability Group." + }, + "parentType": { + "type": "string", + "description": "Parent type of protected item, example: for a DB, standalone server or distributed" + }, + "protectedItemDataSourceId": { + "type": "string", + "description": "Data ID of the protected item." + }, + "protectedItemHealthStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Healthy", + "Unhealthy", + "NotReachable", + "IRPending" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health status of the backup item, evaluated based on last heartbeat received." + }, + "protectedItemType": { + "type": "string", + "enum": [ + "AzureVmWorkloadProtectedItem" + ] + }, + "protectionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup state of this backup item." + }, + "protectionStatus": { + "type": "string", + "description": "Backup status of this backup item." + }, + "serverName": { + "type": "string", + "description": "Host/Cluster Name for instance or AG" + } + }, + "required": [ + "protectedItemType" + ], + "description": "Azure VM workload-specific protected item." + }, + "AzureVmWorkloadProtectedItemExtendedInfo": { + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "The oldest backup copy available for this backup item." + }, + "policyState": { + "type": "string", + "description": "Indicates consistency of policy object and policy applied to this backup item." + }, + "recoveryPointCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of backup copies available for this backup item." + } + }, + "description": "Additional information on Azure Workload for SQL specific backup item." + }, + "AzureVmWorkloadProtectionPolicy": { + "type": "object", + "properties": { + "backupManagementType": { + "type": "string", + "enum": [ + "AzureWorkload" + ] + }, + "makePolicyConsistent": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Fix the policy inconsistency" + }, + "settings": { + "oneOf": [ + { + "$ref": "#/definitions/Settings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Common settings field for backup management" + }, + "subProtectionPolicy": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/SubProtectionPolicy" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of sub-protection policies which includes schedule and retention" + }, + "workLoadType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of workload for the backup management." + } + }, + "required": [ + "backupManagementType" + ], + "description": "Azure VM (Mercury) workload-specific backup policy." + }, + "AzureVmWorkloadSAPAseDatabaseProtectedItem": { + "type": "object", + "properties": { + "protectedItemType": { + "type": "string", + "enum": [ + "AzureVmWorkloadSAPAseDatabase" + ] + } + }, + "required": [ + "protectedItemType" + ], + "description": "Azure VM workload-specific protected item representing SAP ASE Database." + }, + "AzureVmWorkloadSAPHanaDatabaseProtectedItem": { + "type": "object", + "properties": { + "protectedItemType": { + "type": "string", + "enum": [ + "AzureVmWorkloadSAPHanaDatabase" + ] + } + }, + "required": [ + "protectedItemType" + ], + "description": "Azure VM workload-specific protected item representing SAP HANA Database." + }, + "AzureVmWorkloadSQLDatabaseProtectedItem": { + "type": "object", + "properties": { + "protectedItemType": { + "type": "string", + "enum": [ + "AzureVmWorkloadSQLDatabase" + ] + } + }, + "required": [ + "protectedItemType" + ], + "description": "Azure VM workload-specific protected item representing SQL Database." + }, + "AzureWorkloadAutoProtectionIntent": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLAutoProtectionIntent" + } + ], + "properties": { + "protectionIntentItemType": { + "type": "string", + "enum": [ + "AzureWorkloadAutoProtectionIntent" + ] + } + }, + "required": [ + "protectionIntentItemType" + ], + "description": "Azure Recovery Services Vault specific protection intent item." + }, + "AzureWorkloadContainer": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureSQLAGWorkloadContainerProtectionContainer" + }, + { + "$ref": "#/definitions/AzureVMAppContainerProtectionContainer" + } + ], + "properties": { + "containerType": { + "type": "string", + "enum": [ + "AzureWorkloadContainer" + ] + }, + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/AzureWorkloadContainerExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Extended information of the container." + }, + "lastUpdatedTime": { + "type": "string", + "format": "date-time", + "description": "Time stamp when this container was updated." + }, + "operationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Register", + "Reregister" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Re-Do Operation." + }, + "sourceResourceId": { + "type": "string", + "description": "ARM ID of the virtual machine represented by this Azure Workload Container" + }, + "workloadType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Workload type for which registration was sent." + } + }, + "required": [ + "containerType" + ], + "description": "Container for the workloads running inside Azure Compute or Classic Compute." + }, + "AzureWorkloadContainerAutoProtectionIntent": { + "type": "object", + "properties": { + "protectionIntentItemType": { + "type": "string", + "enum": [ + "AzureWorkloadContainerAutoProtectionIntent" + ] + } + }, + "required": [ + "protectionIntentItemType" + ], + "description": "Azure workload specific protection intent item." + }, + "AzureWorkloadContainerExtendedInfo": { + "type": "object", + "properties": { + "hostServerName": { + "type": "string", + "description": "Host Os Name in case of Stand Alone and Cluster Name in case of distributed container." + }, + "inquiryInfo": { + "oneOf": [ + { + "$ref": "#/definitions/InquiryInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Details about inquired protectable items under a given container." + }, + "nodesList": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/DistributedNodesInfo" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of the nodes in case of distributed container." + } + }, + "description": "Extended information of the container." + }, + "AzureWorkloadSQLAutoProtectionIntent": { + "type": "object", + "properties": { + "protectionIntentItemType": { + "type": "string", + "enum": [ + "AzureWorkloadSQLAutoProtectionIntent" + ] + }, + "workloadItemType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "SQLInstance", + "SQLDataBase", + "SAPHanaSystem", + "SAPHanaDatabase", + "SAPAseSystem", + "SAPAseDatabase" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Workload item type of the item for which intent is to be set." + } + }, + "required": [ + "protectionIntentItemType" + ], + "description": "Azure Workload SQL Auto Protection intent item." + }, + "BackupResourceConfig": { + "type": "object", + "properties": { + "crossRegionRestoreFlag": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Opt in details of Cross Region Restore feature." + }, + "storageModelType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "GeoRedundant", + "LocallyRedundant", + "ZoneRedundant", + "ReadAccessGeoZoneRedundant" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Storage type." + }, + "storageType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "GeoRedundant", + "LocallyRedundant", + "ZoneRedundant", + "ReadAccessGeoZoneRedundant" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Storage type." + }, + "storageTypeState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Locked", + "Unlocked" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Locked or Unlocked. Once a machine is registered against a resource, the storageTypeState is always Locked." + } + }, + "description": "The resource storage details." + }, + "BackupResourceEncryptionConfig": { + "type": "object", + "properties": { + "encryptionAtRestType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "MicrosoftManaged", + "CustomerManaged" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Encryption At Rest Type." + }, + "infrastructureEncryptionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Disabled", + "Enabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "keyUri": { + "type": "string", + "description": "Key Vault Key URI" + }, + "lastUpdateStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "NotEnabled", + "PartiallySucceeded", + "PartiallyFailed", + "Failed", + "Succeeded", + "Initialized", + "FirstInitialization" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "subscriptionId": { + "type": "string", + "description": "Key Vault Subscription Id" + } + } + }, + "BackupResourceVaultConfig": { + "type": "object", + "properties": { + "enhancedSecurityState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enabled or Disabled." + }, + "resourceGuardOperationRequests": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "ResourceGuard Operation Requests" + }, + "softDeleteFeatureState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Soft Delete feature state." + }, + "storageModelType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "GeoRedundant", + "LocallyRedundant", + "ZoneRedundant", + "ReadAccessGeoZoneRedundant" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Storage type." + }, + "storageType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "GeoRedundant", + "LocallyRedundant", + "ZoneRedundant", + "ReadAccessGeoZoneRedundant" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Storage type." + }, + "storageTypeState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Locked", + "Unlocked" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Locked or Unlocked. Once a machine is registered against a resource, the storageTypeState is always Locked." + } + }, + "description": "Backup resource vault config details." + }, + "ContainerIdentityInfo": { + "type": "object", + "properties": { + "aadTenantId": { + "type": "string", + "description": "Protection container identity - AAD Tenant" + }, + "audience": { + "type": "string", + "description": "Protection container identity - Audience" + }, + "servicePrincipalClientId": { + "type": "string", + "description": "Protection container identity - AAD Service Principal" + }, + "uniqueName": { + "type": "string", + "description": "Unique name of the container" + } + }, + "description": "Container identity information" + }, + "DailyRetentionFormat": { + "type": "object", + "properties": { + "daysOfTheMonth": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Day" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of days of the month." + } + }, + "description": "Daily retention format." + }, + "DailyRetentionSchedule": { + "type": "object", + "properties": { + "retentionDuration": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionDuration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention duration." + }, + "retentionTimes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention times of retention policy." + } + }, + "description": "Daily retention schedule." + }, + "Day": { + "type": "object", + "properties": { + "date": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Date of the month" + }, + "isLast": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether Date is last date of month" + } + }, + "description": "Day of the week." + }, + "DiskExclusionProperties": { + "type": "object", + "properties": { + "diskLunList": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "integer" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of Disks' Logical Unit Numbers (LUN) to be used for VM Protection." + }, + "isInclusionList": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag to indicate whether DiskLunList is to be included/ excluded from backup." + } + } + }, + "DistributedNodesInfo": { + "type": "object", + "properties": { + "errorDetail": { + "oneOf": [ + { + "$ref": "#/definitions/ErrorDetail" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Error Detail class which encapsulates Code, Message and Recommendations." + }, + "nodeName": { + "type": "string", + "description": "Name of the node under a distributed container." + }, + "status": { + "type": "string", + "description": "Status of this Node.\r\nFailed | Succeeded" + } + }, + "description": "This is used to represent the various nodes of the distributed container." + }, + "DpmContainer": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureBackupServerContainer" + } + ], + "properties": { + "canReRegister": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether the container is re-registrable." + }, + "containerId": { + "type": "string", + "description": "ID of container." + }, + "containerType": { + "type": "string", + "enum": [ + "DPMContainer" + ] + }, + "dpmAgentVersion": { + "type": "string", + "description": "Backup engine Agent version" + }, + "dpmServers": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of BackupEngines protecting the container" + }, + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/DPMContainerExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information of the DPMContainer." + }, + "protectedItemCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of protected items in the BackupEngine" + }, + "protectionStatus": { + "type": "string", + "description": "Protection status of the container." + }, + "upgradeAvailable": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "To check if upgrade available" + } + }, + "required": [ + "containerType" + ], + "description": "DPM workload-specific protection container." + }, + "DPMContainerExtendedInfo": { + "type": "object", + "properties": { + "lastRefreshedAt": { + "type": "string", + "format": "date-time", + "description": "Last refresh time of the DPMContainer." + } + }, + "description": "Additional information of the DPMContainer." + }, + "DPMProtectedItem": { + "type": "object", + "properties": { + "backupEngineName": { + "type": "string", + "description": "Backup Management server protecting this backup item" + }, + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/DPMProtectedItemExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information of DPM Protected item." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of the managed item" + }, + "protectedItemType": { + "type": "string", + "enum": [ + "DPMProtectedItem" + ] + }, + "protectionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Protection state of the backup engine." + } + }, + "required": [ + "protectedItemType" + ], + "description": "Additional information on Backup engine specific backup item." + }, + "DPMProtectedItemExtendedInfo": { + "type": "object", + "properties": { + "diskStorageUsedInBytes": { + "type": "string", + "description": "Used Disk storage in bytes." + }, + "isCollocated": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "To check if backup item is collocated." + }, + "isPresentOnCloud": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "To check if backup item is cloud protected." + }, + "lastBackupStatus": { + "type": "string", + "description": "Last backup status information on backup item." + }, + "lastRefreshedAt": { + "type": "string", + "format": "date-time", + "description": "Last refresh time on backup item." + }, + "oldestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "Oldest cloud recovery point time." + }, + "onPremiseLatestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "latest disk recovery point time." + }, + "onPremiseOldestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "Oldest disk recovery point time." + }, + "onPremiseRecoveryPointCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "disk recovery point count." + }, + "protectableObjectLoadPath": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Attribute to provide information on various DBs." + }, + "protected": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "To check if backup item is disk protected." + }, + "protectionGroupName": { + "type": "string", + "description": "Protection group name of the backup item." + }, + "recoveryPointCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "cloud recovery point count." + }, + "totalDiskStorageSizeInBytes": { + "type": "string", + "description": "total Disk storage in bytes." + } + }, + "description": "Additional information of DPM Protected item." + }, + "ErrorDetail": { + "type": "object", + "properties": {}, + "description": "Error Detail class which encapsulates Code, Message and Recommendations." + }, + "ExtendedProperties": { + "type": "object", + "properties": { + "diskExclusionProperties": { + "oneOf": [ + { + "$ref": "#/definitions/DiskExclusionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "description": "Extended Properties for Azure IaasVM Backup." + }, + "GenericContainer": { + "type": "object", + "properties": { + "containerType": { + "type": "string", + "enum": [ + "GenericContainer" + ] + }, + "extendedInformation": { + "oneOf": [ + { + "$ref": "#/definitions/GenericContainerExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Container extended information" + }, + "fabricName": { + "type": "string", + "description": "Name of the container's fabric" + } + }, + "required": [ + "containerType" + ], + "description": "Base class for generic container of backup items" + }, + "GenericContainerExtendedInfo": { + "type": "object", + "properties": { + "containerIdentityInfo": { + "oneOf": [ + { + "$ref": "#/definitions/ContainerIdentityInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Container identity information" + }, + "rawCertData": { + "type": "string", + "description": "Public key of container cert" + }, + "serviceEndpoints": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Backup Service Endpoints for the container" + } + }, + "description": "Container extended information" + }, + "GenericProtectedItem": { + "type": "object", + "properties": { + "fabricName": { + "type": "string", + "description": "Name of this backup item's fabric." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of the container." + }, + "policyState": { + "type": "string", + "description": "Indicates consistency of policy object and policy applied to this backup item." + }, + "protectedItemId": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data Plane Service ID of the protected item." + }, + "protectedItemType": { + "type": "string", + "enum": [ + "GenericProtectedItem" + ] + }, + "protectionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup state of this backup item." + }, + "sourceAssociations": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Loosely coupled (type, value) associations (example - parent of a protected item)" + } + }, + "required": [ + "protectedItemType" + ], + "description": "Base class for backup items." + }, + "GenericProtectionPolicy": { + "type": "object", + "properties": { + "backupManagementType": { + "type": "string", + "enum": [ + "GenericProtectionPolicy" + ] + }, + "fabricName": { + "type": "string", + "description": "Name of this policy's fabric." + }, + "subProtectionPolicy": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/SubProtectionPolicy" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of sub-protection policies which includes schedule and retention" + }, + "timeZone": { + "type": "string", + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\"." + } + }, + "required": [ + "backupManagementType" + ], + "description": "Azure VM (Mercury) workload-specific backup policy." + }, + "HourlySchedule": { + "type": "object", + "properties": { + "interval": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Interval at which backup needs to be triggered. For hourly the value\r\n can be 4/6/8/12" + }, + "scheduleWindowDuration": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "To specify duration of the backup window" + }, + "scheduleWindowStartTime": { + "type": "string", + "format": "date-time", + "description": "To specify start time of the backup window" + } + } + }, + "IaaSVMContainer": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureIaaSClassicComputeVMContainer" + }, + { + "$ref": "#/definitions/AzureIaaSComputeVMContainer" + } + ], + "properties": { + "containerType": { + "type": "string", + "enum": [ + "IaaSVMContainer" + ] + }, + "resourceGroup": { + "type": "string", + "description": "Resource group name of Recovery Services Vault." + }, + "virtualMachineId": { + "type": "string", + "description": "Fully qualified ARM url of the virtual machine represented by this Azure IaaS VM container." + }, + "virtualMachineVersion": { + "type": "string", + "description": "Specifies whether the container represents a Classic or an Azure Resource Manager VM." + } + }, + "required": [ + "containerType" + ], + "description": "IaaS VM workload-specific container." + }, + "InquiryInfo": { + "type": "object", + "properties": { + "errorDetail": { + "oneOf": [ + { + "$ref": "#/definitions/ErrorDetail" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Error Detail class which encapsulates Code, Message and Recommendations." + }, + "inquiryDetails": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadInquiryDetails" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Inquiry Details which will have workload specific details.\r\nFor e.g. - For SQL and oracle this will contain different details." + }, + "status": { + "type": "string", + "description": "Inquiry Status for this container such as\r\nInProgress | Failed | Succeeded" + } + }, + "description": "Details about inquired protectable items under a given container." + }, + "InquiryValidation": { + "type": "object", + "properties": { + "errorDetail": { + "oneOf": [ + { + "$ref": "#/definitions/ErrorDetail" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Error Detail class which encapsulates Code, Message and Recommendations." + }, + "status": { + "type": "string", + "description": "Status for the Inquiry Validation." + } + }, + "description": "Validation for inquired protectable items under a given container." + }, + "InstantRPAdditionalDetails": { + "type": "object", + "properties": { + "azureBackupRGNamePrefix": { + "type": "string" + }, + "azureBackupRGNameSuffix": { + "type": "string" + } + } + }, + "KPIResourceHealthDetails": { + "type": "object", + "properties": { + "resourceHealthDetails": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceHealthDetails" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource Health Status" + }, + "resourceHealthStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Healthy", + "TransientDegraded", + "PersistentDegraded", + "TransientUnhealthy", + "PersistentUnhealthy", + "Invalid" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource Health Status." + } + }, + "description": "KPI Resource Health Details" + }, + "LogSchedulePolicy": { + "type": "object", + "properties": { + "scheduleFrequencyInMins": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Frequency of the log schedule operation of this policy in minutes." + }, + "schedulePolicyType": { + "type": "string", + "enum": [ + "LogSchedulePolicy" + ] + } + }, + "required": [ + "schedulePolicyType" + ], + "description": "Log policy schedule." + }, + "LongTermRetentionPolicy": { + "type": "object", + "properties": { + "dailySchedule": { + "oneOf": [ + { + "$ref": "#/definitions/DailyRetentionSchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Daily retention schedule." + }, + "monthlySchedule": { + "oneOf": [ + { + "$ref": "#/definitions/MonthlyRetentionSchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Monthly retention schedule." + }, + "retentionPolicyType": { + "type": "string", + "enum": [ + "LongTermRetentionPolicy" + ] + }, + "weeklySchedule": { + "oneOf": [ + { + "$ref": "#/definitions/WeeklyRetentionSchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Weekly retention schedule." + }, + "yearlySchedule": { + "oneOf": [ + { + "$ref": "#/definitions/YearlyRetentionSchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Yearly retention schedule." + } + }, + "required": [ + "retentionPolicyType" + ], + "description": "Long term retention policy." + }, + "LongTermSchedulePolicy": { + "type": "object", + "properties": { + "schedulePolicyType": { + "type": "string", + "enum": [ + "LongTermSchedulePolicy" + ] + } + }, + "required": [ + "schedulePolicyType" + ], + "description": "Long term policy schedule." + }, + "MabContainer": { + "type": "object", + "properties": { + "agentVersion": { + "type": "string", + "description": "Agent version of this container." + }, + "canReRegister": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Can the container be registered one more time." + }, + "containerHealthState": { + "type": "string", + "description": "Health state of mab container." + }, + "containerId": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "ContainerID represents the container." + }, + "containerType": { + "type": "string", + "enum": [ + "Windows" + ] + }, + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/MabContainerExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information of the container." + }, + "mabContainerHealthDetails": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MABContainerHealthDetails" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health details on this mab container." + }, + "protectedItemCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of items backed up in this container." + } + }, + "required": [ + "containerType" + ], + "description": "Container with items backed up using MAB backup engine." + }, + "MabContainerExtendedInfo": { + "type": "object", + "properties": { + "backupItems": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of backup items associated with this container." + }, + "backupItemType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of backup items associated with this container." + }, + "lastBackupStatus": { + "type": "string", + "description": "Latest backup status of this container." + }, + "lastRefreshedAt": { + "type": "string", + "format": "date-time", + "description": "Time stamp when this container was refreshed." + }, + "policyName": { + "type": "string", + "description": "Backup policy associated with this container." + } + }, + "description": "Additional information of the container." + }, + "MABContainerHealthDetails": { + "type": "object", + "properties": { + "code": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health Code" + }, + "message": { + "type": "string", + "description": "Health Message" + }, + "recommendations": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health Recommended Actions" + }, + "title": { + "type": "string", + "description": "Health Title" + } + }, + "description": "MAB workload-specific Health Details." + }, + "MabFileFolderProtectedItem": { + "type": "object", + "properties": { + "computerName": { + "type": "string", + "description": "Name of the computer associated with this backup item." + }, + "deferredDeleteSyncTimeInUTC": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sync time for deferred deletion in UTC" + }, + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/MabFileFolderProtectedItemExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information on the backed up item." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of this backup item." + }, + "lastBackupStatus": { + "type": "string", + "description": "Status of last backup operation." + }, + "lastBackupTime": { + "type": "string", + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item." + }, + "protectedItemType": { + "type": "string", + "enum": [ + "MabFileFolderProtectedItem" + ] + }, + "protectionState": { + "type": "string", + "description": "Protected, ProtectionStopped, IRPending or ProtectionError" + } + }, + "required": [ + "protectedItemType" + ], + "description": "MAB workload-specific backup item." + }, + "MabFileFolderProtectedItemExtendedInfo": { + "type": "object", + "properties": { + "lastRefreshedAt": { + "type": "string", + "format": "date-time", + "description": "Last time when the agent data synced to service." + }, + "oldestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "The oldest backup copy available." + }, + "recoveryPointCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of backup copies associated with the backup item." + } + }, + "description": "Additional information on the backed up item." + }, + "MabProtectionPolicy": { + "type": "object", + "properties": { + "backupManagementType": { + "type": "string", + "enum": [ + "MAB" + ] + }, + "retentionPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for retention policy." + }, + "schedulePolicy": { + "oneOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup schedule." + } + }, + "required": [ + "backupManagementType" + ], + "description": "Mab container-specific backup policy." + }, + "MonthlyRetentionSchedule": { + "type": "object", + "properties": { + "retentionDuration": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionDuration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention duration." + }, + "retentionScheduleDaily": { + "oneOf": [ + { + "$ref": "#/definitions/DailyRetentionFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Daily retention format." + }, + "retentionScheduleFormatType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention schedule format type for monthly retention policy." + }, + "retentionScheduleWeekly": { + "oneOf": [ + { + "$ref": "#/definitions/WeeklyRetentionFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Weekly retention format." + }, + "retentionTimes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention times of retention policy." + } + }, + "description": "Monthly retention schedule." + }, + "PrivateEndpoint": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Gets or sets id" + } + }, + "description": "The Private Endpoint network resource that is linked to the Private Endpoint connection" + }, + "PrivateEndpointConnection": { + "type": "object", + "properties": { + "privateEndpoint": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpoint" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Private Endpoint network resource that is linked to the Private Endpoint connection" + }, + "privateLinkServiceConnectionState": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Private Link Service Connection State" + }, + "provisioningState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Succeeded", + "Deleting", + "Failed", + "Pending" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets provisioning state of the private endpoint connection." + } + }, + "description": "Private Endpoint Connection Response Properties" + }, + "PrivateLinkServiceConnectionState": { + "type": "object", + "properties": { + "actionRequired": { + "type": "string", + "description": "Gets or sets actions required" + }, + "description": { + "type": "string", + "description": "Gets or sets description" + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the status." + } + }, + "description": "Private Link Service Connection State" + }, + "ProtectedItem": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureFileshareProtectedItem" + }, + { + "$ref": "#/definitions/AzureIaaSVMProtectedItem" + }, + { + "$ref": "#/definitions/AzureSqlProtectedItem" + }, + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItem" + }, + { + "$ref": "#/definitions/DPMProtectedItem" + }, + { + "$ref": "#/definitions/GenericProtectedItem" + }, + { + "$ref": "#/definitions/MabFileFolderProtectedItem" + } + ], + "properties": { + "backupManagementType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of backup management for the backed up item." + }, + "backupSetName": { + "type": "string", + "description": "Name of the backup set the backup item belongs to" + }, + "containerName": { + "type": "string", + "description": "Unique name of container" + }, + "createMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Default", + "Recover" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Create mode to indicate recovery of existing soft deleted data source or creation of new data source." + }, + "deferredDeleteTimeInUTC": { + "type": "string", + "format": "date-time", + "description": "Time for deferred deletion in UTC" + }, + "deferredDeleteTimeRemaining": { + "type": "string", + "description": "Time remaining before the DS marked for deferred delete is permanently deleted" + }, + "isDeferredDeleteScheduleUpcoming": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag to identify whether the deferred deleted DS is to be purged soon" + }, + "isRehydrate": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag to identify that deferred deleted DS is to be moved into Pause state" + }, + "isScheduledForDeferredDelete": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag to identify whether the DS is scheduled for deferred delete" + }, + "lastRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "Timestamp when the last (latest) backup copy was created for this backup item." + }, + "policyId": { + "type": "string", + "description": "ID of the backup policy with which this item is backed up." + }, + "resourceGuardOperationRequests": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "ResourceGuardOperationRequests on which LAC check will be performed" + }, + "sourceResourceId": { + "type": "string", + "description": "ARM ID of the resource to be backed up." + }, + "workloadType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of workload this item represents." + } + }, + "description": "Base class for backup items." + }, + "ProtectionContainer": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureSqlContainer" + }, + { + "$ref": "#/definitions/AzureStorageContainer" + }, + { + "$ref": "#/definitions/AzureWorkloadContainer" + }, + { + "$ref": "#/definitions/DpmContainer" + }, + { + "$ref": "#/definitions/GenericContainer" + }, + { + "$ref": "#/definitions/IaaSVMContainer" + }, + { + "$ref": "#/definitions/MabContainer" + } + ], + "properties": { + "backupManagementType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of backup management for the container." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of the container." + }, + "healthStatus": { + "type": "string", + "description": "Status of health of the container." + }, + "registrationStatus": { + "type": "string", + "description": "Status of registration of the container with the Recovery Services Vault." + } + }, + "description": "Base class for container with backup items. Containers with specific workloads are derived from this class." + }, + "ProtectionIntent": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureRecoveryServiceVaultProtectionIntent" + }, + { + "$ref": "#/definitions/AzureResourceProtectionIntent" + }, + { + "$ref": "#/definitions/AzureWorkloadContainerAutoProtectionIntent" + } + ], + "properties": { + "backupManagementType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of backup management for the backed up item." + }, + "itemId": { + "type": "string", + "description": "ID of the item which is getting protected, In case of Azure Vm , it is ProtectedItemId" + }, + "policyId": { + "type": "string", + "description": "ID of the backup policy with which this item is backed up." + }, + "protectionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup state of this backup item." + }, + "sourceResourceId": { + "type": "string", + "description": "ARM ID of the resource to be backed up." + } + }, + "description": "Base class for backup ProtectionIntent." + }, + "ProtectionPolicy": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectionPolicy" + }, + { + "$ref": "#/definitions/AzureFileShareProtectionPolicy" + }, + { + "$ref": "#/definitions/AzureIaaSVMProtectionPolicy" + }, + { + "$ref": "#/definitions/AzureSqlProtectionPolicy" + }, + { + "$ref": "#/definitions/GenericProtectionPolicy" + }, + { + "$ref": "#/definitions/MabProtectionPolicy" + } + ], + "properties": { + "protectedItemsCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of items associated with this policy." + }, + "resourceGuardOperationRequests": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "ResourceGuard Operation Requests" + } + }, + "description": "Base class for backup policy. Workload-specific backup policies are derived from this class." + }, + "ResourceHealthDetails": { + "type": "object", + "properties": {}, + "description": "Health Details for backup items." + }, + "RetentionDuration": { + "type": "object", + "properties": { + "count": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Count of duration types. Retention duration is obtained by the counting the duration type Count times.\r\nFor example, when Count = 3 and DurationType = Weeks, retention duration will be three weeks." + }, + "durationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Days", + "Weeks", + "Months", + "Years" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention duration type of retention policy." + } + }, + "description": "Retention duration." + }, + "RetentionPolicy": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/LongTermRetentionPolicy" + }, + { + "$ref": "#/definitions/SimpleRetentionPolicy" + } + ], + "properties": {}, + "description": "Base class for retention policy." + }, + "SchedulePolicy": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/LogSchedulePolicy" + }, + { + "$ref": "#/definitions/LongTermSchedulePolicy" + }, + { + "$ref": "#/definitions/SimpleSchedulePolicy" + } + ], + "properties": {}, + "description": "Base class for backup schedule." + }, + "Settings": { + "type": "object", + "properties": { + "isCompression": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Workload compression flag. This has been added so that 'isSqlCompression'\r\nwill be deprecated once clients upgrade to consider this flag." + }, + "issqlcompression": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "SQL compression flag" + }, + "timeZone": { + "type": "string", + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\"." + } + }, + "description": "Common settings field for backup management" + }, + "SimpleRetentionPolicy": { + "type": "object", + "properties": { + "retentionDuration": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionDuration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention duration." + }, + "retentionPolicyType": { + "type": "string", + "enum": [ + "SimpleRetentionPolicy" + ] + } + }, + "required": [ + "retentionPolicyType" + ], + "description": "Simple policy retention." + }, + "SimpleSchedulePolicy": { + "type": "object", + "properties": { + "hourlySchedule": { + "oneOf": [ + { + "$ref": "#/definitions/HourlySchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "schedulePolicyType": { + "type": "string", + "enum": [ + "SimpleSchedulePolicy" + ] + }, + "scheduleRunDays": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of days of week this schedule has to be run." + }, + "scheduleRunFrequency": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Daily", + "Weekly", + "Hourly" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Frequency of the schedule operation of this policy." + }, + "scheduleRunTimes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of times of day this schedule has to be run." + }, + "scheduleWeeklyFrequency": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "At every number weeks this schedule has to be run." + } + }, + "required": [ + "schedulePolicyType" + ], + "description": "Simple policy schedule." + }, + "SubProtectionPolicy": { + "type": "object", + "properties": { + "policyType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Full", + "Differential", + "Log", + "CopyOnlyFull", + "Incremental" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of backup policy type." + }, + "retentionPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for retention policy." + }, + "schedulePolicy": { + "oneOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup schedule." + } + }, + "description": "Sub-protection policy which includes schedule and retention" + }, + "vaults_backupFabrics_protectionContainers_protectedItems_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-10-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "Item name to be backed up." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ProtectedItem" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup items." + }, + "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": [ + "protectedItems" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems" + }, + "WeeklyRetentionFormat": { + "type": "object", + "properties": { + "daysOfTheWeek": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of days of the week." + }, + "weeksOfTheMonth": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "First", + "Second", + "Third", + "Fourth", + "Last", + "Invalid" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of weeks of month." + } + }, + "description": "Weekly retention format." + }, + "WeeklyRetentionSchedule": { + "type": "object", + "properties": { + "daysOfTheWeek": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of days of week for weekly retention policy." + }, + "retentionDuration": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionDuration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention duration." + }, + "retentionTimes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention times of retention policy." + } + }, + "description": "Weekly retention schedule." + }, + "WorkloadInquiryDetails": { + "type": "object", + "properties": { + "inquiryValidation": { + "oneOf": [ + { + "$ref": "#/definitions/InquiryValidation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Validation for inquired protectable items under a given container." + }, + "itemCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Contains the protectable item Count inside this Container." + }, + "type": { + "type": "string", + "description": "Type of the Workload such as SQL, Oracle etc." + } + }, + "description": "Details of an inquired protectable item." + }, + "YearlyRetentionSchedule": { + "type": "object", + "properties": { + "monthsOfYear": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Invalid", + "January", + "February", + "March", + "April", + "May", + "June", + "July", + "August", + "September", + "October", + "November", + "December" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of months of year of yearly retention policy." + }, + "retentionDuration": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionDuration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention duration." + }, + "retentionScheduleDaily": { + "oneOf": [ + { + "$ref": "#/definitions/DailyRetentionFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Daily retention format." + }, + "retentionScheduleFormatType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention schedule format for yearly retention policy." + }, + "retentionScheduleWeekly": { + "oneOf": [ + { + "$ref": "#/definitions/WeeklyRetentionFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Weekly retention format." + }, + "retentionTimes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention times of retention policy." + } + }, + "description": "Yearly retention schedule." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 54c00feda2..30bccd202b 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -9757,6 +9757,30 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-06-01/Microsoft.NetApp.json#/resourceDefinitions/netAppAccounts_snapshotPolicies" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-08-01/Microsoft.NetApp.json#/resourceDefinitions/netAppAccounts" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-08-01/Microsoft.NetApp.json#/resourceDefinitions/netAppAccounts_backupPolicies" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-08-01/Microsoft.NetApp.json#/resourceDefinitions/netAppAccounts_capacityPools" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-08-01/Microsoft.NetApp.json#/resourceDefinitions/netAppAccounts_capacityPools_volumes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-08-01/Microsoft.NetApp.json#/resourceDefinitions/netAppAccounts_capacityPools_volumes_backups" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-08-01/Microsoft.NetApp.json#/resourceDefinitions/netAppAccounts_capacityPools_volumes_snapshots" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-08-01/Microsoft.NetApp.json#/resourceDefinitions/netAppAccounts_snapshotPolicies" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-08-01/Microsoft.NetApp.json#/resourceDefinitions/netAppAccounts_volumeGroups" + }, { "$ref": "https://schema.management.azure.com/schemas/2018-08-01/Microsoft.Network.FrontDoor.json#/resourceDefinitions/frontDoors" }, @@ -10420,6 +10444,33 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-08-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_privateEndpointConnections" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_backupconfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_backupEncryptionConfigs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_backupFabrics_backupProtectionIntent" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_backupFabrics_protectionContainers" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_backupFabrics_protectionContainers_protectedItems" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_backupPolicies" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_backupResourceGuardProxies" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_backupstorageconfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-10-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_privateEndpointConnections" + }, { "$ref": "https://schema.management.azure.com/schemas/2016-06-01/Microsoft.RecoveryServices.json#/resourceDefinitions/vaults" }, From 94a1f3a3d78dd88c5231d2012830f1ac3451580f Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 26 Nov 2021 10:32:38 +0000 Subject: [PATCH 17/23] Update resource list --- generator/resources.json | 51 +++++++++++++++++++++++++++------------- 1 file changed, 35 insertions(+), 16 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index ebb091d385..af5a552f81 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -4817,7 +4817,8 @@ "2021-02-01", "2021-04-01", "2021-04-01-preview", - "2021-06-01" + "2021-06-01", + "2021-08-01" ], "Microsoft.NetApp/netAppAccounts/backupPolicies": [ "2020-05-01", @@ -4830,7 +4831,8 @@ "2021-02-01", "2021-04-01", "2021-04-01-preview", - "2021-06-01" + "2021-06-01", + "2021-08-01" ], "Microsoft.NetApp/netAppAccounts/capacityPools": [ "2017-08-15", @@ -4852,7 +4854,8 @@ "2021-02-01", "2021-04-01", "2021-04-01-preview", - "2021-06-01" + "2021-06-01", + "2021-08-01" ], "Microsoft.NetApp/netAppAccounts/capacityPools/volumes": [ "2017-08-15", @@ -4874,7 +4877,8 @@ "2021-02-01", "2021-04-01", "2021-04-01-preview", - "2021-06-01" + "2021-06-01", + "2021-08-01" ], "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups": [ "2020-05-01", @@ -4887,7 +4891,8 @@ "2021-02-01", "2021-04-01", "2021-04-01-preview", - "2021-06-01" + "2021-06-01", + "2021-08-01" ], "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots": [ "2017-08-15", @@ -4909,7 +4914,8 @@ "2021-02-01", "2021-04-01", "2021-04-01-preview", - "2021-06-01" + "2021-06-01", + "2021-08-01" ], "Microsoft.NetApp/netAppAccounts/snapshotPolicies": [ "2020-05-01", @@ -4922,7 +4928,11 @@ "2021-02-01", "2021-04-01", "2021-04-01-preview", - "2021-06-01" + "2021-06-01", + "2021-08-01" + ], + "Microsoft.NetApp/netAppAccounts/volumeGroups": [ + "2021-08-01" ], "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies": [ "2018-12-01", @@ -6737,7 +6747,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/backupFabrics/backupProtectionIntent": [ "2017-07-01", @@ -6749,7 +6760,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers": [ "2016-12-01", @@ -6763,7 +6775,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems": [ "2016-06-01", @@ -6780,7 +6793,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/backupPolicies": [ "2016-06-01", @@ -6797,12 +6811,14 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/backupResourceGuardProxies": [ "2021-02-01-preview", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/backupconfig": [ "2019-06-15", @@ -6816,14 +6832,16 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/backupstorageconfig": [ "2016-12-01", "2018-12-20", "2021-04-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/certificates": [ "2016-06-01", @@ -6861,7 +6879,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/replicationAlertSettings": [ "2016-08-10", From fccbbca4ed001e75e9899c2c6ea0bf08c32a6c16 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 26 Nov 2021 14:01:19 +0000 Subject: [PATCH 18/23] Generated report --- onboarded-report/result.json | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/onboarded-report/result.json b/onboarded-report/result.json index fa54a08ae1..dc5e09dae4 100644 --- a/onboarded-report/result.json +++ b/onboarded-report/result.json @@ -619,6 +619,12 @@ "missing": [], "onboarded": [] }, + { + "basePath": "loadtestservice/resource-manager", + "onboardedToAutogen": "yes", + "missing": [], + "onboarded": [] + }, { "basePath": "logic/resource-manager", "onboardedToAutogen": "no", From dd52abe450a4ab3bad05df84c0eaaef089af7023 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Mon, 29 Nov 2021 09:29:46 +0000 Subject: [PATCH 19/23] Update resource list --- generator/resources.json | 42 ++++++++++++++++++++++++++-------------- 1 file changed, 28 insertions(+), 14 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index af5a552f81..b6de8e2e51 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -6891,7 +6891,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/replicationFabrics": [ "2016-08-10", @@ -6902,7 +6903,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings": [ "2016-08-10", @@ -6913,7 +6915,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers": [ "2016-08-10", @@ -6924,7 +6927,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems": [ "2018-01-10", @@ -6934,7 +6938,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems": [ "2016-08-10", @@ -6945,7 +6950,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings": [ "2016-08-10", @@ -6956,7 +6962,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders": [ "2018-01-10", @@ -6966,7 +6973,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings": [ "2016-08-10", @@ -6977,7 +6985,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters": [ "2016-08-10", @@ -6988,7 +6997,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/replicationPolicies": [ "2016-08-10", @@ -6999,7 +7009,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/replicationProtectionIntents": [ "2018-07-10", @@ -7008,7 +7019,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans": [ "2016-08-10", @@ -7019,7 +7031,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RecoveryServices/vaults/replicationVaultSettings": [ "2018-07-10", @@ -7028,7 +7041,8 @@ "2021-04-01", "2021-06-01", "2021-07-01", - "2021-08-01" + "2021-08-01", + "2021-10-01" ], "Microsoft.RedHatOpenShift/openShiftClusters": [ "2020-04-30", From 8e0bb05d2f7c7fc65fd97ad062487edc8279ecc7 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 30 Nov 2021 09:12:20 +0000 Subject: [PATCH 20/23] Autogenerate schemas --- .../Microsoft.Confluent.json | 23 ------------------- 1 file changed, 23 deletions(-) diff --git a/schemas/2020-03-01-preview/Microsoft.Confluent.json b/schemas/2020-03-01-preview/Microsoft.Confluent.json index 7e5419c9ba..6b75a2946f 100644 --- a/schemas/2020-03-01-preview/Microsoft.Confluent.json +++ b/schemas/2020-03-01-preview/Microsoft.Confluent.json @@ -204,29 +204,6 @@ "maxLength": 50, "description": "Publisher Id" }, - "status": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Started", - "PendingFulfillmentStart", - "InProgress", - "Subscribed", - "Suspended", - "Reinstated", - "Succeeded", - "Failed", - "Unsubscribed", - "Updating" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "SaaS Offer Status." - }, "termUnit": { "type": "string", "maxLength": 25, From 31ec9c6709171937dac2a40d80f3bd06b7114715 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 1 Dec 2021 09:06:06 +0000 Subject: [PATCH 21/23] Autogenerate schemas --- schemas/2021-10-01/Microsoft.CostManagement.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/schemas/2021-10-01/Microsoft.CostManagement.json b/schemas/2021-10-01/Microsoft.CostManagement.json index a31eb0ab71..40fac7f1b6 100644 --- a/schemas/2021-10-01/Microsoft.CostManagement.json +++ b/schemas/2021-10-01/Microsoft.CostManagement.json @@ -719,7 +719,7 @@ "ReportConfigDefinition": { "type": "object", "properties": { - "dataSet": { + "dataset": { "oneOf": [ { "$ref": "#/definitions/ReportConfigDataset" From 7b6bcf509ca282f3d3c8088972b90d817f9fa9fa Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 1 Dec 2021 09:06:22 +0000 Subject: [PATCH 22/23] Update resource list --- generator/resources.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/generator/resources.json b/generator/resources.json index b6de8e2e51..c0fa05169e 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -8885,7 +8885,8 @@ "2018-02-01-preview", "2019-02-01-preview", "2019-05-01-preview", - "2020-02-14" + "2020-02-14", + "2021-10-01" ], "Microsoft.Web/certificates": [ "2015-08-01", From 019479a94bca5e032dd47f3201364a8a1151851a Mon Sep 17 00:00:00 2001 From: Jorge Cotillo Date: Mon, 6 Dec 2021 09:16:55 -0800 Subject: [PATCH 23/23] use localPath to ensure dir exists --- generator/cmd/generateall.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/generator/cmd/generateall.ts b/generator/cmd/generateall.ts index 0cf0f1ba5e..4b3f90b939 100644 --- a/generator/cmd/generateall.ts +++ b/generator/cmd/generateall.ts @@ -34,6 +34,7 @@ executeSynchronous(async () => { let localPath = args['local-path']; let summaryPath = args['summary-log-path']; + // localPath refers to the specs repo (azure-rest-api-specs) if (!localPath) { localPath = constants.specsRepoPath; basePaths = await cloneAndGenerateBasePaths(localPath, constants.specsRepoUri, constants.specsRepoCommitHash); @@ -43,8 +44,9 @@ executeSynchronous(async () => { } if (!summaryPath) { - // generate default full path - summaryPath = path.join(constants.specsRepoPath, 'summary.log'); + // using 'localPath' here because at this point it is guaranteed that the folder got created (when cloneAndGenerateBasePaths function is invoked) + // or is an existing path + summaryPath = path.join(localPath, 'summary.log'); } // resolve absolute path