From 5df51f3dfab15be2ed682227d1c230f7e1ed4db1 Mon Sep 17 00:00:00 2001 From: Lei Ni Date: Mon, 31 Aug 2020 17:16:43 +0800 Subject: [PATCH 1/9] use multiapi instead of all-api-versions --- generator/generate.ts | 36 ++++++++++++++++-------------------- generator/package-lock.json | 12 ++++++------ generator/package.json | 2 +- 3 files changed, 23 insertions(+), 27 deletions(-) diff --git a/generator/generate.ts b/generator/generate.ts index 039f16cd08..ed4128b17f 100644 --- a/generator/generate.ts +++ b/generator/generate.ts @@ -7,7 +7,7 @@ import { ScopeType, AutogenlistConfig } from './models'; import { resetFile } from './git'; import { get, set, flatten, uniq, concat, Dictionary, groupBy, keys, difference, pickBy, flatMap, values, uniqBy } from 'lodash'; -const autorestBinary = os.platform() === 'win32' ? 'autorest-beta.cmd' : 'autorest-beta'; +const autorestBinary = os.platform() === 'win32' ? 'autorest.cmd' : 'autorest'; const apiVersionRegex = /^\d{4}-\d{2}-\d{2}(|-preview)$/; export interface SchemaConfiguration { @@ -50,31 +50,28 @@ export async function generateSchemas(readme: string, autogenlistConfig?: Autoge await getApiVersionsByNamespace(readme), (_, key) => !autogenlistConfig || lowerCaseEquals(key, autogenlistConfig.namespace)); - const apiVersions = uniqBy(flatMap(values(apiVersionsByNamespace)), s => s.toLowerCase()); const namespaces = keys(apiVersionsByNamespace); const schemaConfigs: SchemaConfiguration[] = []; - for (const apiVersion of apiVersions) { - const tmpFolder = path.join(os.tmpdir(), Math.random().toString(36).substr(2)); + const tmpFolder = path.join(os.tmpdir(), Math.random().toString(36).substr(2)); - try { - const generatedSchemas = await generateSchema(readme, tmpFolder, apiVersion); + try { + const generatedSchemas = await generateSchema(readme, tmpFolder); - for (const schemaPath of generatedSchemas) { - const namespace = path.basename(schemaPath.substring(0, schemaPath.lastIndexOf(path.extname(schemaPath)))); - if (!lowerCaseContains(namespaces, namespace)) { - continue; - } + for (const schemaPath of generatedSchemas) { + const namespace = path.basename(schemaPath.substring(0, schemaPath.lastIndexOf(path.extname(schemaPath)))); + if (!lowerCaseContains(namespaces, namespace)) { + continue; + } - const generatedSchemaConfig = await handleGeneratedSchema(readme, schemaPath, autogenlistConfig); + const generatedSchemaConfig = await handleGeneratedSchema(readme, schemaPath, autogenlistConfig); - schemaConfigs.push(generatedSchemaConfig); - } - } - finally { - await rmdirRecursive(tmpFolder); + schemaConfigs.push(generatedSchemaConfig); } } + finally { + await rmdirRecursive(tmpFolder); + } return schemaConfigs; } @@ -134,14 +131,13 @@ async function execAutoRest(tmpFolder: string, params: string[]) { return await findRecursive(tmpFolder, p => path.extname(p) === '.json'); } -async function generateSchema(readme: string, tmpFolder: string, apiVersion: string) { +async function generateSchema(readme: string, tmpFolder: string) { const autoRestParams = [ `--version=${constants.autorestCoreVersion}`, `--use=@autorest/azureresourceschema@${constants.azureresourceschemaVersion}`, '--azureresourceschema', `--output-folder=${tmpFolder}`, - `--tag=all-api-versions`, - `--api-version=${apiVersion}`, + `--multiapi`, '--title=none', '--pass-thru:subset-reducer', readme, diff --git a/generator/package-lock.json b/generator/package-lock.json index 62c64a8225..1cbd3de087 100644 --- a/generator/package-lock.json +++ b/generator/package-lock.json @@ -4,12 +4,6 @@ "lockfileVersion": 1, "requires": true, "dependencies": { - "@autorest/autorest": { - "version": "3.0.6187", - "resolved": "https://registry.npmjs.org/@autorest/autorest/-/autorest-3.0.6187.tgz", - "integrity": "sha512-BUTLfV6GufjgcSp0ysB1wdhMIG8RGQMiY4ZQnP76fHcR2KZW0QinnEAR99mMy7BVOdXiurWkNW7rilEJfKhXWg==", - "dev": true - }, "@autorest/azureresourceschema": { "version": "3.0.79", "resolved": "https://registry.npmjs.org/@autorest/azureresourceschema/-/azureresourceschema-3.0.79.tgz", @@ -179,6 +173,12 @@ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" }, + "autorest": { + "version": "3.0.6187", + "resolved": "https://registry.npmjs.org/autorest/-/autorest-3.0.6187.tgz", + "integrity": "sha512-Xk27qVfsAbmp95Kx+Wwr7LiKlwsoFtcixu46sEaXCRr9zS+lZJDO50uZLXa2ZIE8/z9accpNt3HTdv/9DHk7yg==", + "dev": true + }, "aws-sign2": { "version": "0.7.0", "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", diff --git a/generator/package.json b/generator/package.json index 83c697fc5a..55189f2b2a 100644 --- a/generator/package.json +++ b/generator/package.json @@ -12,7 +12,7 @@ "postprocessor": "ts-node cmd/postprocessor" }, "devDependencies": { - "@autorest/autorest": "^3.0.6187", + "autorest": "^3.0.6187", "@autorest/azureresourceschema": "^3.0.79", "@autorest/core": "^3.0.6257", "@types/async": "^3.2.0", From f2ec31c663447e0b0eb101766c69c47732dd6c7f Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 1 Sep 2020 06:56:55 +0000 Subject: [PATCH 2/9] Autogenerate schemas --- schemas/2015-04-01/Microsoft.DocumentDB.json | 2666 +++++++++++++++++ .../Microsoft.Automation.json | 4 +- .../Microsoft.DocumentDB.json | 8 +- .../Microsoft.ContainerService.json | 516 ++++ .../Microsoft.OperationalInsights.json | 2 +- schemas/2020-04-01/Microsoft.DataBox.json | 1035 +++++++ schemas/2020-07-01/Microsoft.AppPlatform.json | 1378 +++++++++ .../Microsoft.OperationalInsights.json | 12 +- schemas/common/autogeneratedResources.json | 75 + 9 files changed, 5684 insertions(+), 12 deletions(-) create mode 100644 schemas/2015-04-01/Microsoft.DocumentDB.json create mode 100644 schemas/2019-09-30-preview/Microsoft.ContainerService.json create mode 100644 schemas/2020-04-01/Microsoft.DataBox.json create mode 100644 schemas/2020-07-01/Microsoft.AppPlatform.json diff --git a/schemas/2015-04-01/Microsoft.DocumentDB.json b/schemas/2015-04-01/Microsoft.DocumentDB.json new file mode 100644 index 0000000000..c29ccea671 --- /dev/null +++ b/schemas/2015-04-01/Microsoft.DocumentDB.json @@ -0,0 +1,2666 @@ +{ + "id": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.DocumentDB", + "description": "Microsoft DocumentDB Resource Types", + "resourceDefinitions": { + "databaseAccounts": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "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." + }, + "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_apis_databases": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "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_apis_databases_settings_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_apis_databases_containers_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_apis_databases_collections_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_apis_databases_graphs_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/apis/databases" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases" + }, + "databaseAccounts_apis_databases_collections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "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_apis_databases_collections_settings_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/apis/databases/collections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/collections" + }, + "databaseAccounts_apis_databases_collections_settings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/throughput$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/apis/databases/collections/settings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/collections/settings" + }, + "databaseAccounts_apis_databases_containers": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "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_apis_databases_containers_settings_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/apis/databases/containers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/containers" + }, + "databaseAccounts_apis_databases_containers_settings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/throughput$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/apis/databases/containers/settings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/containers/settings" + }, + "databaseAccounts_apis_databases_graphs": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "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_apis_databases_graphs_settings_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs" + }, + "databaseAccounts_apis_databases_graphs_settings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/throughput$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs/settings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs/settings" + }, + "databaseAccounts_apis_databases_settings": { + "type": "object", + "oneOf": [ + { + "type": "object", + "properties": { + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/throughput$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + } + }, + "required": [ + "name", + "properties" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/settings" + }, + { + "type": "object", + "properties": { + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/throughput$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + } + }, + "required": [ + "name", + "properties" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/settings" + }, + { + "type": "object", + "properties": { + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/throughput$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + } + }, + "required": [ + "name", + "properties" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/settings" + } + ], + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/apis/databases/settings" + ] + } + }, + "required": [ + "apiVersion", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/settings" + }, + "databaseAccounts_apis_keyspaces": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "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_apis_keyspaces_settings_childResource" + }, + { + "$ref": "#/definitions/databaseAccounts_apis_keyspaces_tables_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/apis/keyspaces" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/keyspaces" + }, + "databaseAccounts_apis_keyspaces_settings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/throughput$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/apis/keyspaces/settings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/keyspaces/settings" + }, + "databaseAccounts_apis_keyspaces_tables": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "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_apis_keyspaces_tables_settings_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/apis/keyspaces/tables" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/keyspaces/tables" + }, + "databaseAccounts_apis_keyspaces_tables_settings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/throughput$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/apis/keyspaces/tables/settings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/keyspaces/tables/settings" + }, + "databaseAccounts_apis_tables": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "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_apis_tables_settings_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/apis/tables" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/tables" + }, + "databaseAccounts_apis_tables_settings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/throughput$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DocumentDB/databaseAccounts/apis/tables/settings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/tables/settings" + } + }, + "definitions": { + "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" + }, + "CassandraKeyspaceCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$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 id object" + } + }, + "required": [ + "options", + "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 id 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": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$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 id object" + } + }, + "required": [ + "options", + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB Cassandra table." + }, + "CassandraTableResource": { + "type": "object", + "properties": { + "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 id 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" + }, + "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" + }, + "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" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates the kind of algorithm used for partitioning." + }, + "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" + } + }, + "description": "The configuration of the partition key to be used for partitioning data into multiple partitions" + }, + "DatabaseAccountCreateUpdateProperties": { + "type": "object", + "properties": { + "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" + }, + "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." + }, + "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" + }, + "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" + }, + "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" + }, + "ipRangeFilter": { + "type": "string", + "description": "Cosmos DB Firewall Support: This value specifies the set of IP addresses or IP address ranges in CIDR form to be included as the allowed list of client IPs for a given database account. IP addresses/ranges must be comma separated and must not contain any spaces." + }, + "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." + }, + "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." + }, + "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_apis_databases_collections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "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." + }, + "type": { + "type": "string", + "enum": [ + "collections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/collections" + }, + "databaseAccounts_apis_databases_collections_settings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "name": { + "type": "string", + "enum": [ + "throughput" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "type": { + "type": "string", + "enum": [ + "settings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/collections/settings" + }, + "databaseAccounts_apis_databases_containers_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "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." + }, + "type": { + "type": "string", + "enum": [ + "containers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/containers" + }, + "databaseAccounts_apis_databases_containers_settings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "name": { + "type": "string", + "enum": [ + "throughput" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "type": { + "type": "string", + "enum": [ + "settings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/containers/settings" + }, + "databaseAccounts_apis_databases_graphs_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "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." + }, + "type": { + "type": "string", + "enum": [ + "graphs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs" + }, + "databaseAccounts_apis_databases_graphs_settings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "name": { + "type": "string", + "enum": [ + "throughput" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "type": { + "type": "string", + "enum": [ + "settings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs/settings" + }, + "databaseAccounts_apis_databases_settings_childResource": { + "type": "object", + "oneOf": [ + { + "type": "object", + "properties": { + "name": { + "type": "string", + "enum": [ + "throughput" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + } + }, + "required": [ + "name", + "properties" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/settings" + }, + { + "type": "object", + "properties": { + "name": { + "type": "string", + "enum": [ + "throughput" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + } + }, + "required": [ + "name", + "properties" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/settings" + }, + { + "type": "object", + "properties": { + "name": { + "type": "string", + "enum": [ + "throughput" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + } + }, + "required": [ + "name", + "properties" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/settings" + } + ], + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "type": { + "type": "string", + "enum": [ + "settings" + ] + } + }, + "required": [ + "apiVersion", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/databases/settings" + }, + "databaseAccounts_apis_keyspaces_settings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "name": { + "type": "string", + "enum": [ + "throughput" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "type": { + "type": "string", + "enum": [ + "settings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/keyspaces/settings" + }, + "databaseAccounts_apis_keyspaces_tables_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "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." + }, + "type": { + "type": "string", + "enum": [ + "tables" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/keyspaces/tables" + }, + "databaseAccounts_apis_keyspaces_tables_settings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "name": { + "type": "string", + "enum": [ + "throughput" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "type": { + "type": "string", + "enum": [ + "settings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/keyspaces/tables/settings" + }, + "databaseAccounts_apis_tables_settings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2015-04-01" + ] + }, + "name": { + "type": "string", + "enum": [ + "throughput" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to update Azure Cosmos DB resource throughput." + }, + "type": { + "type": "string", + "enum": [ + "settings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DocumentDB/databaseAccounts/apis/tables/settings" + }, + "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/*)" + } + } + }, + "GremlinDatabaseCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$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 id object" + } + }, + "required": [ + "options", + "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 id object" + }, + "GremlinGraphCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$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": [ + "options", + "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" + }, + "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." + } + }, + "description": "Cosmos DB indexing policy" + }, + "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. 'Offline' - the Cosmos DB account is not active. 'DeletionFailed' – the Cosmos DB account deletion failed." + } + }, + "description": "A region in which the Azure Cosmos DB database account is deployed." + }, + "MongoDBCollectionCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$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": [ + "options", + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB MongoDB collection." + }, + "MongoDBCollectionResource": { + "type": "object", + "properties": { + "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": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$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 id object" + } + }, + "required": [ + "options", + "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 id 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" + }, + "SqlContainerCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$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": [ + "options", + "resource" + ], + "description": "Properties to create and update Azure Cosmos DB container." + }, + "SqlContainerResource": { + "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 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": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$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 id object" + } + }, + "required": [ + "options", + "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 id object" + }, + "TableCreateUpdateProperties": { + "type": "object", + "properties": { + "options": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$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 id object" + } + }, + "required": [ + "options", + "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 id object" + }, + "ThroughputResource": { + "type": "object", + "properties": { + "throughput": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Value of the Cosmos DB resource throughput" + } + }, + "required": [ + "throughput" + ], + "description": "Cosmos DB resource throughput object" + }, + "ThroughputUpdateProperties": { + "type": "object", + "properties": { + "resource": { + "oneOf": [ + { + "$ref": "#/definitions/ThroughputResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cosmos DB resource throughput object" + } + }, + "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/2017-05-15-preview/Microsoft.Automation.json b/schemas/2017-05-15-preview/Microsoft.Automation.json index a5e2b52601..4d79c321f9 100644 --- a/schemas/2017-05-15-preview/Microsoft.Automation.json +++ b/schemas/2017-05-15-preview/Microsoft.Automation.json @@ -484,7 +484,7 @@ }, "description": "The runbook property associated with the entity." }, - "SchedulePropertiesModel": { + "ScheduleProperties": { "type": "object", "properties": { "advancedSchedule": { @@ -615,7 +615,7 @@ "scheduleInfo": { "oneOf": [ { - "$ref": "#/definitions/SchedulePropertiesModel" + "$ref": "#/definitions/ScheduleProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" diff --git a/schemas/2019-08-01-preview/Microsoft.DocumentDB.json b/schemas/2019-08-01-preview/Microsoft.DocumentDB.json index 841d212463..a6259d586e 100644 --- a/schemas/2019-08-01-preview/Microsoft.DocumentDB.json +++ b/schemas/2019-08-01-preview/Microsoft.DocumentDB.json @@ -20,7 +20,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/PrivateEndpointConnectionPropertiesModel" + "$ref": "#/definitions/PrivateEndpointConnectionProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -45,7 +45,7 @@ } }, "definitions": { - "PrivateEndpointConnectionPropertiesModel": { + "PrivateEndpointConnectionProperties": { "type": "object", "properties": { "groupId": { @@ -94,6 +94,10 @@ "PrivateLinkServiceConnectionStateProperty": { "type": "object", "properties": { + "description": { + "type": "string", + "description": "The private link service connection description." + }, "status": { "type": "string", "description": "The private link service connection status." diff --git a/schemas/2019-09-30-preview/Microsoft.ContainerService.json b/schemas/2019-09-30-preview/Microsoft.ContainerService.json new file mode 100644 index 0000000000..f6fd4f596a --- /dev/null +++ b/schemas/2019-09-30-preview/Microsoft.ContainerService.json @@ -0,0 +1,516 @@ +{ + "id": "https://schema.management.azure.com/schemas/2019-09-30-preview/Microsoft.ContainerService.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.ContainerService", + "description": "Microsoft ContainerService Resource Types", + "resourceDefinitions": { + "openShiftManagedClusters": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2019-09-30-preview" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the OpenShift managed cluster resource." + }, + "plan": { + "oneOf": [ + { + "$ref": "#/definitions/PurchasePlan" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/OpenShiftManagedClusterProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the OpenShift 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/openShiftManagedClusters" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.ContainerService/openShiftManagedClusters" + } + }, + "definitions": { + "NetworkProfile": { + "type": "object", + "properties": { + "peerVnetId": { + "type": "string", + "description": "CIDR of the Vnet to peer." + }, + "vnetCidr": { + "type": "string", + "default": "10.0.0.0/8", + "description": "CIDR for the OpenShift Vnet." + }, + "vnetId": { + "type": "string", + "description": "ID of the Vnet created for OSA cluster." + } + }, + "description": "Represents the OpenShift networking configuration" + }, + "OpenShiftManagedClusterAADIdentityProvider": { + "type": "object", + "properties": { + "clientId": { + "type": "string", + "description": "The clientId password associated with the provider." + }, + "customerAdminGroupId": { + "type": "string", + "description": "The groupId to be granted cluster admin role." + }, + "kind": { + "type": "string", + "enum": [ + "AADIdentityProvider" + ] + }, + "secret": { + "type": "string", + "description": "The secret password associated with the provider." + }, + "tenantId": { + "type": "string", + "description": "The tenantId associated with the provider." + } + }, + "required": [ + "kind" + ], + "description": "Defines the Identity provider for MS AAD." + }, + "OpenShiftManagedClusterAgentPoolProfile": { + "type": "object", + "properties": { + "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." + }, + "name": { + "type": "string", + "description": "Unique name of the pool profile in the context of the subscription and resource group." + }, + "osType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Linux", + "Windows" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." + }, + "role": { + "oneOf": [ + { + "type": "string", + "enum": [ + "compute", + "infra" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Define the role of the AgentPoolProfile." + }, + "subnetCidr": { + "type": "string", + "default": "10.0.0.0/24", + "description": "Subnet CIDR for the peering." + }, + "vmSize": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard_D2s_v3", + "Standard_D4s_v3", + "Standard_D8s_v3", + "Standard_D16s_v3", + "Standard_D32s_v3", + "Standard_D64s_v3", + "Standard_DS4_v2", + "Standard_DS5_v2", + "Standard_F8s_v2", + "Standard_F16s_v2", + "Standard_F32s_v2", + "Standard_F64s_v2", + "Standard_F72s_v2", + "Standard_F8s", + "Standard_F16s", + "Standard_E4s_v3", + "Standard_E8s_v3", + "Standard_E16s_v3", + "Standard_E20s_v3", + "Standard_E32s_v3", + "Standard_E64s_v3", + "Standard_GS2", + "Standard_GS3", + "Standard_GS4", + "Standard_GS5", + "Standard_DS12_v2", + "Standard_DS13_v2", + "Standard_DS14_v2", + "Standard_DS15_v2", + "Standard_L4s", + "Standard_L8s", + "Standard_L16s", + "Standard_L32s" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Size of agent VMs." + } + }, + "required": [ + "count", + "name", + "vmSize" + ], + "description": "Defines the configuration of the OpenShift cluster VMs." + }, + "OpenShiftManagedClusterAuthProfile": { + "type": "object", + "properties": { + "identityProviders": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/OpenShiftManagedClusterIdentityProvider" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of authentication profile to use." + } + }, + "description": "Defines all possible authentication profiles for the OpenShift cluster." + }, + "OpenShiftManagedClusterBaseIdentityProvider": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/OpenShiftManagedClusterAADIdentityProvider" + } + ], + "properties": {}, + "description": "Structure for any Identity provider." + }, + "OpenShiftManagedClusterIdentityProvider": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the provider." + }, + "provider": { + "oneOf": [ + { + "$ref": "#/definitions/OpenShiftManagedClusterBaseIdentityProvider" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Structure for any Identity provider." + } + }, + "description": "Defines the configuration of the identity providers to be used in the OpenShift cluster." + }, + "OpenShiftManagedClusterMasterPoolProfile": { + "type": "object", + "properties": { + "count": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of masters (VMs) to host docker containers. The default value is 3." + }, + "name": { + "type": "string", + "description": "Unique name of the master pool profile in the context of the subscription and resource group." + }, + "osType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Linux", + "Windows" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux." + }, + "subnetCidr": { + "type": "string", + "description": "Subnet CIDR for the peering." + }, + "vmSize": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard_D2s_v3", + "Standard_D4s_v3", + "Standard_D8s_v3", + "Standard_D16s_v3", + "Standard_D32s_v3", + "Standard_D64s_v3", + "Standard_DS4_v2", + "Standard_DS5_v2", + "Standard_F8s_v2", + "Standard_F16s_v2", + "Standard_F32s_v2", + "Standard_F64s_v2", + "Standard_F72s_v2", + "Standard_F8s", + "Standard_F16s", + "Standard_E4s_v3", + "Standard_E8s_v3", + "Standard_E16s_v3", + "Standard_E20s_v3", + "Standard_E32s_v3", + "Standard_E64s_v3", + "Standard_GS2", + "Standard_GS3", + "Standard_GS4", + "Standard_GS5", + "Standard_DS12_v2", + "Standard_DS13_v2", + "Standard_DS14_v2", + "Standard_DS15_v2", + "Standard_L4s", + "Standard_L8s", + "Standard_L16s", + "Standard_L32s" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Size of agent VMs." + } + }, + "required": [ + "count", + "vmSize" + ], + "description": "OpenShiftManagedClusterMaterPoolProfile contains configuration for OpenShift master VMs." + }, + "OpenShiftManagedClusterMonitorProfile": { + "type": "object", + "properties": { + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If the Log analytics integration should be turned on or off" + }, + "workspaceResourceID": { + "type": "string", + "description": "Azure Resource Manager Resource ID for the Log Analytics workspace to integrate with." + } + }, + "description": "Defines the configuration for Log Analytics integration." + }, + "OpenShiftManagedClusterProperties": { + "type": "object", + "properties": { + "agentPoolProfiles": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/OpenShiftManagedClusterAgentPoolProfile" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Configuration of OpenShift cluster VMs." + }, + "authProfile": { + "oneOf": [ + { + "$ref": "#/definitions/OpenShiftManagedClusterAuthProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Defines all possible authentication profiles for the OpenShift cluster." + }, + "masterPoolProfile": { + "oneOf": [ + { + "$ref": "#/definitions/OpenShiftManagedClusterMasterPoolProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "OpenShiftManagedClusterMaterPoolProfile contains configuration for OpenShift master VMs." + }, + "monitorProfile": { + "oneOf": [ + { + "$ref": "#/definitions/OpenShiftManagedClusterMonitorProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Defines the configuration for Log Analytics integration." + }, + "networkProfile": { + "oneOf": [ + { + "$ref": "#/definitions/NetworkProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represents the OpenShift networking configuration" + }, + "openShiftVersion": { + "type": "string", + "description": "Version of OpenShift specified when creating the cluster." + }, + "routerProfiles": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/OpenShiftRouterProfile" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Configuration for OpenShift router(s)." + } + }, + "required": [ + "openShiftVersion" + ], + "description": "Properties of the OpenShift managed cluster." + }, + "OpenShiftRouterProfile": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name of the router profile." + } + }, + "description": "Represents an OpenShift router" + }, + "PurchasePlan": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The plan ID." + }, + "product": { + "type": "string", + "description": "Specifies the product of the image from the marketplace. This is the same value as Offer under the imageReference element." + }, + "promotionCode": { + "type": "string", + "description": "The promotion code." + }, + "publisher": { + "type": "string", + "description": "The plan ID." + } + }, + "description": "Used for establishing the purchase context of any 3rd Party artifact through MarketPlace." + } + } +} \ No newline at end of file diff --git a/schemas/2020-03-01-preview/Microsoft.OperationalInsights.json b/schemas/2020-03-01-preview/Microsoft.OperationalInsights.json index 0e95134e85..6d7564e35e 100644 --- a/schemas/2020-03-01-preview/Microsoft.OperationalInsights.json +++ b/schemas/2020-03-01-preview/Microsoft.OperationalInsights.json @@ -946,7 +946,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "The workspace daily quota for ingestion." + "description": "The workspace daily quota for ingestion. -1 means unlimited." } }, "description": "The daily volume cap for ingestion." diff --git a/schemas/2020-04-01/Microsoft.DataBox.json b/schemas/2020-04-01/Microsoft.DataBox.json new file mode 100644 index 0000000000..f41366e35b --- /dev/null +++ b/schemas/2020-04-01/Microsoft.DataBox.json @@ -0,0 +1,1035 @@ +{ + "id": "https://schema.management.azure.com/schemas/2020-04-01/Microsoft.DataBox.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.DataBox", + "description": "Microsoft DataBox Resource Types", + "resourceDefinitions": { + "jobs": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-04-01" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Msi identity details of the resource" + }, + "location": { + "type": "string", + "description": "The location of the resource. This will be one of the supported and registered Azure Regions (e.g. West US, East US, Southeast Asia, etc.). The region of a resource cannot be changed once it is created, but if an identical region is specified on update the request will succeed." + }, + "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 job Resource within the specified resource group. job names must be between 3 and 24 characters in length and use any alphanumeric and underscore only" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/JobProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Job Properties" + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/Sku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Sku." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of key value pairs that describe the resource. These tags can be used in viewing and grouping this resource (across resource groups)." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataBox/jobs" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "sku", + "type" + ], + "description": "Microsoft.DataBox/jobs" + } + }, + "definitions": { + "AzureFileFilterDetails": { + "type": "object", + "properties": { + "filePathList": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of full path of the files to be transferred." + }, + "filePrefixList": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Prefix list of the Azure files to be transferred." + }, + "fileShareList": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of file shares to be transferred." + } + }, + "description": "Filter details to transfer Azure files" + }, + "BlobFilterDetails": { + "type": "object", + "properties": { + "blobPathList": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of full path of the blobs to be transferred." + }, + "blobPrefixList": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Prefix list of the Azure blobs to be transferred." + }, + "containerList": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of blob containers to be transferred." + } + }, + "description": "Filter details to transfer Azure Blobs" + }, + "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." + }, + "notificationPreference": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/NotificationPreference" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Notification preference for a job stage." + }, + "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." + }, + "DataAccountDetails": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/ManagedDiskDetails" + }, + { + "$ref": "#/definitions/StorageAccountDetails" + } + ], + "properties": { + "sharePassword": { + "type": "string", + "description": "Password for all the shares to be created on the device. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements : Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : @#\\-$%^!+=;:_()]+" + } + }, + "description": "Account details of the data to be transferred" + }, + "DataBoxDiskJobDetails": { + "type": "object", + "properties": { + "jobDetailsType": { + "type": "string", + "enum": [ + "DataBoxDisk" + ] + }, + "passkey": { + "type": "string", + "description": "User entered passkey for DataBox Disk job." + }, + "preferredDisks": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "integer" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "User preference on what size disks are needed for the job. The map is from the disk size in TB to the count. Eg. {2,5} means 5 disks of 2 TB size. Key is string but will be checked against an int." + } + }, + "required": [ + "jobDetailsType" + ], + "description": "DataBox Disk Job Details." + }, + "DataBoxHeavyJobDetails": { + "type": "object", + "properties": { + "devicePassword": { + "type": "string", + "description": "Set Device password for unlocking Databox Heavy. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements : Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : @#\\-$%^!+=;:_()]+" + }, + "jobDetailsType": { + "type": "string", + "enum": [ + "DataBoxHeavy" + ] + } + }, + "required": [ + "jobDetailsType" + ], + "description": "Databox Heavy Device Job Details" + }, + "DataBoxJobDetails": { + "type": "object", + "properties": { + "devicePassword": { + "type": "string", + "description": "Set Device password for unlocking Databox. Should not be passed for TransferType:ExportFromAzure jobs. If this is not passed, the service will generate password itself. This will not be returned in Get Call. Password Requirements : Password must be minimum of 12 and maximum of 64 characters. Password must have at least one uppercase alphabet, one number and one special character. Password cannot have the following characters : IilLoO0 Password can have only alphabets, numbers and these characters : @#\\-$%^!+=;:_()]+" + }, + "jobDetailsType": { + "type": "string", + "enum": [ + "DataBox" + ] + } + }, + "required": [ + "jobDetailsType" + ], + "description": "Databox Job Details" + }, + "DataExportDetails": { + "type": "object", + "properties": { + "accountDetails": { + "oneOf": [ + { + "$ref": "#/definitions/DataAccountDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Account details of the data to be transferred" + }, + "logCollectionLevel": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Error", + "Verbose" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Level of the logs to be collected." + }, + "transferConfiguration": { + "oneOf": [ + { + "$ref": "#/definitions/TransferConfiguration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Configuration for defining the transfer of data." + } + }, + "required": [ + "accountDetails", + "transferConfiguration" + ], + "description": "Details of the data to be used for exporting data from azure." + }, + "DataImportDetails": { + "type": "object", + "properties": { + "accountDetails": { + "oneOf": [ + { + "$ref": "#/definitions/DataAccountDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Account details of the data to be transferred" + } + }, + "required": [ + "accountDetails" + ], + "description": "Details of the data to be used for importing data to azure." + }, + "FilterFileDetails": { + "type": "object", + "properties": { + "filterFilePath": { + "type": "string", + "description": "Path of the file that contains the details of all items to transfer." + }, + "filterFileType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "AzureBlob", + "AzureFile" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of the filter file." + } + }, + "required": [ + "filterFilePath", + "filterFileType" + ], + "description": "Details of the filter files to be used for data transfer." + }, + "JobDeliveryInfo": { + "type": "object", + "properties": { + "scheduledDateTime": { + "type": "string", + "format": "date-time", + "description": "Scheduled date time." + } + }, + "description": "Additional delivery info." + }, + "JobDetails": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/DataBoxDiskJobDetails" + }, + { + "$ref": "#/definitions/DataBoxHeavyJobDetails" + }, + { + "$ref": "#/definitions/DataBoxJobDetails" + } + ], + "properties": { + "contactDetails": { + "oneOf": [ + { + "$ref": "#/definitions/ContactDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Contact Details." + }, + "dataExportDetails": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/DataExportDetails" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Details of the data to be exported from azure." + }, + "dataImportDetails": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/DataImportDetails" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Details of the data to be imported into azure." + }, + "expectedDataSizeInTerabytes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The expected size of the data, which needs to be transferred in this job, in terabytes." + }, + "preferences": { + "oneOf": [ + { + "$ref": "#/definitions/Preferences" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Preferences related to the order" + }, + "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": "Job details." + }, + "JobProperties": { + "type": "object", + "properties": { + "deliveryInfo": { + "oneOf": [ + { + "$ref": "#/definitions/JobDeliveryInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional delivery info." + }, + "deliveryType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "NonScheduled", + "Scheduled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Delivery type of Job." + }, + "details": { + "oneOf": [ + { + "$ref": "#/definitions/JobDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Job details." + }, + "transferType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "ImportToAzure", + "ExportFromAzure" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of the data transfer." + } + }, + "required": [ + "transferType" + ], + "description": "Job Properties" + }, + "ManagedDiskDetails": { + "type": "object", + "properties": { + "dataAccountType": { + "type": "string", + "enum": [ + "ManagedDisk" + ] + }, + "resourceGroupId": { + "type": "string", + "description": "Resource Group Id of the compute disks." + }, + "stagingStorageAccountId": { + "type": "string", + "description": "Resource Id of the storage account that can be used to copy the vhd for staging." + } + }, + "required": [ + "dataAccountType", + "resourceGroupId", + "stagingStorageAccountId" + ], + "description": "Details of the managed disks." + }, + "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": [ + "DevicePrepared", + "Dispatched", + "Delivered", + "PickedUp", + "AtAzureDC", + "DataCopy" + ] + }, + { + "$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." + }, + "Preferences": { + "type": "object", + "properties": { + "preferredDataCenterRegion": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Preferred data center region." + }, + "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" + }, + "ResourceIdentity": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "Identity type" + } + }, + "description": "Msi identity details of the resource" + }, + "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", + "postalCode", + "streetAddress1" + ], + "description": "Shipping address where customer wishes to receive the device." + }, + "Sku": { + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "The display name of the sku." + }, + "family": { + "type": "string", + "description": "The sku family." + }, + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "DataBox", + "DataBoxDisk", + "DataBoxHeavy" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The sku name." + } + }, + "required": [ + "name" + ], + "description": "The Sku." + }, + "StorageAccountDetails": { + "type": "object", + "properties": { + "dataAccountType": { + "type": "string", + "enum": [ + "StorageAccount" + ] + }, + "storageAccountId": { + "type": "string", + "description": "Storage Account Resource Id." + } + }, + "required": [ + "dataAccountType", + "storageAccountId" + ], + "description": "Details for the storage account." + }, + "TransferAllDetails": { + "type": "object", + "properties": { + "dataAccountType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "StorageAccount", + "ManagedDisk" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of the account of data." + }, + "transferAllBlobs": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "To indicate if all Azure blobs have to be transferred" + }, + "transferAllFiles": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "To indicate if all Azure Files have to be transferred" + } + }, + "required": [ + "dataAccountType" + ], + "description": "Details to transfer all data." + }, + "TransferConfiguration": { + "type": "object", + "properties": { + "transferAllDetails": { + "oneOf": [ + { + "$ref": "#/definitions/TransferConfigurationTransferAllDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Map of filter type and the details to transfer all data. This field is required only if the TransferConfigurationType is given as TransferAll" + }, + "transferConfigurationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "TransferAll", + "TransferUsingFilter" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of the configuration for transfer." + }, + "transferFilterDetails": { + "oneOf": [ + { + "$ref": "#/definitions/TransferConfigurationTransferFilterDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Map of filter type and the details to filter. This field is required only if the TransferConfigurationType is given as TransferUsingFilter." + } + }, + "required": [ + "transferConfigurationType" + ], + "description": "Configuration for defining the transfer of data." + }, + "TransferConfigurationTransferAllDetails": { + "type": "object", + "properties": { + "include": { + "oneOf": [ + { + "$ref": "#/definitions/TransferAllDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Details to transfer all data." + } + }, + "description": "Map of filter type and the details to transfer all data. This field is required only if the TransferConfigurationType is given as TransferAll" + }, + "TransferConfigurationTransferFilterDetails": { + "type": "object", + "properties": { + "include": { + "oneOf": [ + { + "$ref": "#/definitions/TransferFilterDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Details of the filtering the transfer of data." + } + }, + "description": "Map of filter type and the details to filter. This field is required only if the TransferConfigurationType is given as TransferUsingFilter." + }, + "TransferFilterDetails": { + "type": "object", + "properties": { + "azureFileFilterDetails": { + "oneOf": [ + { + "$ref": "#/definitions/AzureFileFilterDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Filter details to transfer Azure files" + }, + "blobFilterDetails": { + "oneOf": [ + { + "$ref": "#/definitions/BlobFilterDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Filter details to transfer Azure Blobs" + }, + "dataAccountType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "StorageAccount", + "ManagedDisk" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of the account of data." + }, + "filterFileDetails": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/FilterFileDetails" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Details of the filter files to be used for data transfer." + } + }, + "required": [ + "dataAccountType" + ], + "description": "Details of the filtering the transfer of data." + }, + "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/2020-07-01/Microsoft.AppPlatform.json b/schemas/2020-07-01/Microsoft.AppPlatform.json new file mode 100644 index 0000000000..9eeb103575 --- /dev/null +++ b/schemas/2020-07-01/Microsoft.AppPlatform.json @@ -0,0 +1,1378 @@ +{ + "id": "https://schema.management.azure.com/schemas/2020-07-01/Microsoft.AppPlatform.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.AppPlatform", + "description": "Microsoft AppPlatform Resource Types", + "resourceDefinitions": { + "Spring": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-01" + ] + }, + "location": { + "type": "string", + "description": "The GEO location of the resource." + }, + "name": { + "type": "string", + "description": "The name of the Service resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ClusterResourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Service properties payload" + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/Spring_configServers_childResource" + }, + { + "$ref": "#/definitions/Spring_monitoringSettings_childResource" + }, + { + "$ref": "#/definitions/Spring_apps_childResource" + }, + { + "$ref": "#/definitions/Spring_certificates_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/Sku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sku of Azure Spring Cloud" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Tags of the service which is a list of key value pairs that describe the resource." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.AppPlatform/Spring" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AppPlatform/Spring" + }, + "Spring_apps": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-01" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedIdentityProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Managed identity properties retrieved from ARM request headers." + }, + "location": { + "type": "string", + "description": "The GEO location of the application, always the same with its parent resource" + }, + "name": { + "type": "string", + "description": "The name of the App resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AppResourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "App resource properties payload" + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/Spring_apps_bindings_childResource" + }, + { + "$ref": "#/definitions/Spring_apps_domains_childResource" + }, + { + "$ref": "#/definitions/Spring_apps_deployments_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.AppPlatform/Spring/apps" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AppPlatform/Spring/apps" + }, + "Spring_apps_bindings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the Binding resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BindingResourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Binding resource properties payload" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.AppPlatform/Spring/apps/bindings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AppPlatform/Spring/apps/bindings" + }, + "Spring_apps_deployments": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the Deployment resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DeploymentResourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Deployment resource properties payload" + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/Sku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sku of Azure Spring Cloud" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.AppPlatform/Spring/apps/deployments" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AppPlatform/Spring/apps/deployments" + }, + "Spring_apps_domains": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the custom domain resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CustomDomainProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Custom domain of app resource payload." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.AppPlatform/Spring/apps/domains" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AppPlatform/Spring/apps/domains" + }, + "Spring_certificates": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the certificate resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CertificateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Certificate resource payload." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.AppPlatform/Spring/certificates" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AppPlatform/Spring/certificates" + }, + "Spring_configServers": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-01" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ConfigServerProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Config server git properties payload" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.AppPlatform/Spring/configServers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AppPlatform/Spring/configServers" + }, + "Spring_monitoringSettings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-01" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MonitoringSettingProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Monitoring Setting properties payload" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.AppPlatform/Spring/monitoringSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AppPlatform/Spring/monitoringSettings" + } + }, + "definitions": { + "AppResourceProperties": { + "type": "object", + "properties": { + "activeDeploymentName": { + "type": "string", + "description": "Name of the active deployment of the App" + }, + "fqdn": { + "type": "string", + "description": "Fully qualified dns Name." + }, + "httpsOnly": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicate if only https is allowed." + }, + "persistentDisk": { + "oneOf": [ + { + "$ref": "#/definitions/PersistentDisk" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Persistent disk payload" + }, + "public": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether the App exposes public endpoint" + }, + "temporaryDisk": { + "oneOf": [ + { + "$ref": "#/definitions/TemporaryDisk" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Temporary disk payload" + } + }, + "description": "App resource properties payload" + }, + "BindingResourceProperties": { + "type": "object", + "properties": { + "bindingParameters": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": {} + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Binding parameters of the Binding resource" + }, + "key": { + "type": "string", + "description": "The key of the bound resource" + }, + "resourceId": { + "type": "string", + "description": "The Azure resource id of the bound resource" + } + }, + "description": "Binding resource properties payload" + }, + "CertificateProperties": { + "type": "object", + "properties": { + "certVersion": { + "type": "string", + "description": "The certificate version of key vault." + }, + "keyVaultCertName": { + "type": "string", + "description": "The certificate name of key vault." + }, + "vaultUri": { + "type": "string", + "description": "The vault uri of user key vault." + } + }, + "required": [ + "keyVaultCertName", + "vaultUri" + ], + "description": "Certificate resource payload." + }, + "ClusterResourceProperties": { + "type": "object", + "properties": { + "networkProfile": { + "oneOf": [ + { + "$ref": "#/definitions/NetworkProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Service network profile payload" + } + }, + "description": "Service properties payload" + }, + "ConfigServerGitProperty": { + "type": "object", + "properties": { + "hostKey": { + "type": "string", + "description": "Public sshKey of git repository." + }, + "hostKeyAlgorithm": { + "type": "string", + "description": "SshKey algorithm of git repository." + }, + "label": { + "type": "string", + "description": "Label of the repository" + }, + "password": { + "type": "string", + "description": "Password of git repository basic auth." + }, + "privateKey": { + "type": "string", + "description": "Private sshKey algorithm of git repository." + }, + "repositories": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/GitPatternRepository" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Repositories of git." + }, + "searchPaths": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Searching path of the repository" + }, + "strictHostKeyChecking": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Strict host key checking or not." + }, + "uri": { + "type": "string", + "description": "URI of the repository" + }, + "username": { + "type": "string", + "description": "Username of git repository basic auth." + } + }, + "required": [ + "uri" + ], + "description": "Property of git." + }, + "ConfigServerProperties": { + "type": "object", + "properties": { + "configServer": { + "oneOf": [ + { + "$ref": "#/definitions/ConfigServerSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The settings of config server." + }, + "error": { + "oneOf": [ + { + "$ref": "#/definitions/Error" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The error code compose of code and message." + } + }, + "description": "Config server git properties payload" + }, + "ConfigServerSettings": { + "type": "object", + "properties": { + "gitProperty": { + "oneOf": [ + { + "$ref": "#/definitions/ConfigServerGitProperty" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Property of git." + } + }, + "description": "The settings of config server." + }, + "CustomDomainProperties": { + "type": "object", + "properties": { + "certName": { + "type": "string", + "description": "The bound certificate name of domain." + }, + "thumbprint": { + "type": "string", + "description": "The thumbprint of bound certificate." + } + }, + "description": "Custom domain of app resource payload." + }, + "DeploymentResourceProperties": { + "type": "object", + "properties": { + "deploymentSettings": { + "oneOf": [ + { + "$ref": "#/definitions/DeploymentSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Deployment settings payload" + }, + "source": { + "oneOf": [ + { + "$ref": "#/definitions/UserSourceInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Source information for a deployment" + } + }, + "description": "Deployment resource properties payload" + }, + "DeploymentSettings": { + "type": "object", + "properties": { + "cpu": { + "oneOf": [ + { + "type": "integer", + "default": "1" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Required CPU, basic tier should be 1, standard tier should be in range (1, 4)" + }, + "environmentVariables": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Collection of environment variables" + }, + "jvmOptions": { + "type": "string", + "description": "JVM parameter" + }, + "memoryInGB": { + "oneOf": [ + { + "type": "integer", + "default": "1" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Required Memory size in GB, basic tier should be in range (1, 2), standard tier should be in range (1, 8)" + }, + "netCoreMainEntryPath": { + "type": "string", + "description": "The path to the .NET executable relative to zip root" + }, + "runtimeVersion": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Java_8", + "Java_11", + "NetCore_31" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Runtime version." + } + }, + "description": "Deployment settings payload" + }, + "Error": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "The code of error." + }, + "message": { + "type": "string", + "description": "The message of error." + } + }, + "description": "The error code compose of code and message." + }, + "GitPatternRepository": { + "type": "object", + "properties": { + "hostKey": { + "type": "string", + "description": "Public sshKey of git repository." + }, + "hostKeyAlgorithm": { + "type": "string", + "description": "SshKey algorithm of git repository." + }, + "label": { + "type": "string", + "description": "Label of the repository" + }, + "name": { + "type": "string", + "description": "Name of the repository" + }, + "password": { + "type": "string", + "description": "Password of git repository basic auth." + }, + "pattern": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Collection of pattern of the repository" + }, + "privateKey": { + "type": "string", + "description": "Private sshKey algorithm of git repository." + }, + "searchPaths": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Searching path of the repository" + }, + "strictHostKeyChecking": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Strict host key checking or not." + }, + "uri": { + "type": "string", + "description": "URI of the repository" + }, + "username": { + "type": "string", + "description": "Username of git repository basic auth." + } + }, + "required": [ + "name", + "uri" + ], + "description": "Git repository property payload" + }, + "ManagedIdentityProperties": { + "type": "object", + "properties": { + "principalId": { + "type": "string", + "description": "Principal Id" + }, + "tenantId": { + "type": "string", + "description": "Tenant Id" + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned,UserAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of the managed identity." + } + }, + "description": "Managed identity properties retrieved from ARM request headers." + }, + "MonitoringSettingProperties": { + "type": "object", + "properties": { + "appInsightsInstrumentationKey": { + "type": "string", + "description": "Target application insight instrumentation key" + }, + "error": { + "oneOf": [ + { + "$ref": "#/definitions/Error" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The error code compose of code and message." + }, + "traceEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether enable the trace functionality" + } + }, + "description": "Monitoring Setting properties payload" + }, + "NetworkProfile": { + "type": "object", + "properties": { + "appNetworkResourceGroup": { + "type": "string", + "description": "Name of the resource group containing network resources of Azure Spring Cloud Apps" + }, + "appSubnetId": { + "type": "string", + "description": "Fully qualified resource Id of the subnet to host Azure Spring Cloud Apps" + }, + "serviceCidr": { + "type": "string", + "description": "Azure Spring Cloud service reserved CIDR" + }, + "serviceRuntimeNetworkResourceGroup": { + "type": "string", + "description": "Name of the resource group containing network resources of Azure Spring Cloud Service Runtime" + }, + "serviceRuntimeSubnetId": { + "type": "string", + "description": "Fully qualified resource Id of the subnet to host Azure Spring Cloud Service Runtime" + } + }, + "description": "Service network profile payload" + }, + "PersistentDisk": { + "type": "object", + "properties": { + "mountPath": { + "type": "string", + "description": "Mount path of the persistent disk" + }, + "sizeInGB": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 50 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Size of the persistent disk in GB" + } + }, + "description": "Persistent disk payload" + }, + "Sku": { + "type": "object", + "properties": { + "capacity": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Current capacity of the target resource" + }, + "name": { + "type": "string", + "description": "Name of the Sku" + }, + "tier": { + "type": "string", + "description": "Tier of the Sku" + } + }, + "description": "Sku of Azure Spring Cloud" + }, + "Spring_apps_bindings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the Binding resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BindingResourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Binding resource properties payload" + }, + "type": { + "type": "string", + "enum": [ + "bindings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AppPlatform/Spring/apps/bindings" + }, + "Spring_apps_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-01" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedIdentityProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Managed identity properties retrieved from ARM request headers." + }, + "location": { + "type": "string", + "description": "The GEO location of the application, always the same with its parent resource" + }, + "name": { + "type": "string", + "description": "The name of the App resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AppResourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "App resource properties payload" + }, + "type": { + "type": "string", + "enum": [ + "apps" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AppPlatform/Spring/apps" + }, + "Spring_apps_deployments_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the Deployment resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DeploymentResourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Deployment resource properties payload" + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/Sku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sku of Azure Spring Cloud" + }, + "type": { + "type": "string", + "enum": [ + "deployments" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AppPlatform/Spring/apps/deployments" + }, + "Spring_apps_domains_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the custom domain resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CustomDomainProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Custom domain of app resource payload." + }, + "type": { + "type": "string", + "enum": [ + "domains" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AppPlatform/Spring/apps/domains" + }, + "Spring_certificates_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-01" + ] + }, + "name": { + "type": "string", + "description": "The name of the certificate resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CertificateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Certificate resource payload." + }, + "type": { + "type": "string", + "enum": [ + "certificates" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AppPlatform/Spring/certificates" + }, + "Spring_configServers_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-01" + ] + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ConfigServerProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Config server git properties payload" + }, + "type": { + "type": "string", + "enum": [ + "configServers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AppPlatform/Spring/configServers" + }, + "Spring_monitoringSettings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-01" + ] + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MonitoringSettingProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Monitoring Setting properties payload" + }, + "type": { + "type": "string", + "enum": [ + "monitoringSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.AppPlatform/Spring/monitoringSettings" + }, + "TemporaryDisk": { + "type": "object", + "properties": { + "mountPath": { + "type": "string", + "description": "Mount path of the temporary disk" + }, + "sizeInGB": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 5 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Size of the temporary disk in GB" + } + }, + "description": "Temporary disk payload" + }, + "UserSourceInfo": { + "type": "object", + "properties": { + "artifactSelector": { + "type": "string", + "description": "Selector for the artifact to be used for the deployment for multi-module projects. This should be\r\nthe relative path to the target module/project." + }, + "relativePath": { + "type": "string", + "description": "Relative path of the storage which stores the source" + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Jar", + "NetCoreZip", + "Source" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of the source uploaded." + }, + "version": { + "type": "string", + "description": "Version of the source" + } + }, + "description": "Source information for a deployment" + } + } +} \ No newline at end of file diff --git a/schemas/2020-08-01/Microsoft.OperationalInsights.json b/schemas/2020-08-01/Microsoft.OperationalInsights.json index debb8c0206..891b259b2c 100644 --- a/schemas/2020-08-01/Microsoft.OperationalInsights.json +++ b/schemas/2020-08-01/Microsoft.OperationalInsights.json @@ -129,7 +129,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/WorkspacePropertiesModel" + "$ref": "#/definitions/WorkspaceProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -411,7 +411,6 @@ "CustomLogs", "AzureWatson", "Query", - "Ingestion", "Alerts" ] }, @@ -424,7 +423,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/LinkedStorageAccountsPropertiesModel" + "$ref": "#/definitions/LinkedStorageAccountsProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -774,7 +773,7 @@ }, "description": "Linked service properties." }, - "LinkedStorageAccountsPropertiesModel": { + "LinkedStorageAccountsProperties": { "type": "object", "properties": { "storageAccountIds": { @@ -951,7 +950,7 @@ }, "description": "The daily volume cap for ingestion." }, - "WorkspacePropertiesModel": { + "WorkspaceProperties": { "type": "object", "properties": { "provisioningState": { @@ -1300,7 +1299,6 @@ "CustomLogs", "AzureWatson", "Query", - "Ingestion", "Alerts" ] }, @@ -1313,7 +1311,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/LinkedStorageAccountsPropertiesModel" + "$ref": "#/definitions/LinkedStorageAccountsProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index b24fabf5fe..286fe76c0f 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -949,6 +949,30 @@ { "$ref": "https://schema.management.azure.com/schemas/2019-05-01-preview/Microsoft.AppPlatform.json#/resourceDefinitions/Spring_certificates" }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-07-01/Microsoft.AppPlatform.json#/resourceDefinitions/Spring" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-07-01/Microsoft.AppPlatform.json#/resourceDefinitions/Spring_apps" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-07-01/Microsoft.AppPlatform.json#/resourceDefinitions/Spring_apps_bindings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-07-01/Microsoft.AppPlatform.json#/resourceDefinitions/Spring_apps_deployments" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-07-01/Microsoft.AppPlatform.json#/resourceDefinitions/Spring_apps_domains" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-07-01/Microsoft.AppPlatform.json#/resourceDefinitions/Spring_certificates" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-07-01/Microsoft.AppPlatform.json#/resourceDefinitions/Spring_configServers" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-07-01/Microsoft.AppPlatform.json#/resourceDefinitions/Spring_monitoringSettings" + }, { "$ref": "https://schema.management.azure.com/schemas/2018-09-01-preview/Microsoft.Attestation.json#/resourceDefinitions/attestationProviders" }, @@ -1639,6 +1663,9 @@ { "$ref": "https://schema.management.azure.com/schemas/2019-08-01/Microsoft.ContainerService.json#/resourceDefinitions/managedClusters_agentPools" }, + { + "$ref": "https://schema.management.azure.com/schemas/2019-09-30-preview/Microsoft.ContainerService.json#/resourceDefinitions/openShiftManagedClusters" + }, { "$ref": "https://schema.management.azure.com/schemas/2019-10-01/Microsoft.ContainerService.json#/resourceDefinitions/managedClusters" }, @@ -1705,6 +1732,9 @@ { "$ref": "https://schema.management.azure.com/schemas/2019-09-01/Microsoft.DataBox.json#/resourceDefinitions/jobs" }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-04-01/Microsoft.DataBox.json#/resourceDefinitions/jobs" + }, { "$ref": "https://schema.management.azure.com/schemas/2019-03-01/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices" }, @@ -2440,6 +2470,51 @@ { "$ref": "https://schema.management.azure.com/schemas/2020-03-01-preview/Microsoft.DigitalTwins.json#/resourceDefinitions/digitalTwinsInstances_endpoints" }, + { + "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_apis_databases" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_apis_databases_collections" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_apis_databases_collections_settings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_apis_databases_containers" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_apis_databases_containers_settings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_apis_databases_graphs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_apis_databases_graphs_settings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_apis_databases_settings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_apis_keyspaces" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_apis_keyspaces_settings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_apis_keyspaces_tables" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_apis_keyspaces_tables_settings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_apis_tables" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2015-04-01/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_apis_tables_settings" + }, { "$ref": "https://schema.management.azure.com/schemas/2015-04-08/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts" }, From c57593e44d44501f9589368f30f51e987780b5b8 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 1 Sep 2020 06:57:07 +0000 Subject: [PATCH 3/9] Update resource list --- generator/resources.json | 43 +++++++++++++++++++++++++++++++++------- 1 file changed, 36 insertions(+), 7 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index 20f27a3aea..4283bdb0f9 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -445,22 +445,34 @@ "2020-06-01" ], "Microsoft.AppPlatform/Spring": [ - "2019-05-01-preview" + "2019-05-01-preview", + "2020-07-01" ], "Microsoft.AppPlatform/Spring/apps": [ - "2019-05-01-preview" + "2019-05-01-preview", + "2020-07-01" ], "Microsoft.AppPlatform/Spring/apps/bindings": [ - "2019-05-01-preview" + "2019-05-01-preview", + "2020-07-01" ], "Microsoft.AppPlatform/Spring/apps/deployments": [ - "2019-05-01-preview" + "2019-05-01-preview", + "2020-07-01" ], "Microsoft.AppPlatform/Spring/apps/domains": [ - "2019-05-01-preview" + "2019-05-01-preview", + "2020-07-01" ], "Microsoft.AppPlatform/Spring/certificates": [ - "2019-05-01-preview" + "2019-05-01-preview", + "2020-07-01" + ], + "Microsoft.AppPlatform/Spring/configServers": [ + "2020-07-01" + ], + "Microsoft.AppPlatform/Spring/monitoringSettings": [ + "2020-07-01" ], "Microsoft.Attestation/attestationProviders": [ "2018-09-01-preview" @@ -1084,6 +1096,7 @@ "Microsoft.ContainerService/openShiftManagedClusters": [ "2018-09-30-preview", "2019-04-30", + "2019-09-30-preview", "2019-10-27-preview" ], "Microsoft.CustomProviders/resourceProviders": [ @@ -1186,7 +1199,8 @@ ], "Microsoft.DataBox/jobs": [ "2018-01-01", - "2019-09-01" + "2019-09-01", + "2020-04-01" ], "Microsoft.DataBoxEdge/dataBoxEdgeDevices": [ "2019-03-01", @@ -1553,6 +1567,7 @@ "2020-03-01-preview" ], "Microsoft.DocumentDB/databaseAccounts": [ + "2015-04-01", "2015-04-08", "2015-11-06", "2016-03-19", @@ -1564,84 +1579,98 @@ "2020-06-01-preview" ], "Microsoft.DocumentDB/databaseAccounts/apis/databases": [ + "2015-04-01", "2015-04-08", "2015-11-06", "2016-03-19", "2016-03-31" ], "Microsoft.DocumentDB/databaseAccounts/apis/databases/collections": [ + "2015-04-01", "2015-04-08", "2015-11-06", "2016-03-19", "2016-03-31" ], "Microsoft.DocumentDB/databaseAccounts/apis/databases/collections/settings": [ + "2015-04-01", "2015-04-08", "2015-11-06", "2016-03-19", "2016-03-31" ], "Microsoft.DocumentDB/databaseAccounts/apis/databases/containers": [ + "2015-04-01", "2015-04-08", "2015-11-06", "2016-03-19", "2016-03-31" ], "Microsoft.DocumentDB/databaseAccounts/apis/databases/containers/settings": [ + "2015-04-01", "2015-04-08", "2015-11-06", "2016-03-19", "2016-03-31" ], "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs": [ + "2015-04-01", "2015-04-08", "2015-11-06", "2016-03-19", "2016-03-31" ], "Microsoft.DocumentDB/databaseAccounts/apis/databases/graphs/settings": [ + "2015-04-01", "2015-04-08", "2015-11-06", "2016-03-19", "2016-03-31" ], "Microsoft.DocumentDB/databaseAccounts/apis/databases/settings": [ + "2015-04-01", "2015-04-08", "2015-11-06", "2016-03-19", "2016-03-31" ], "Microsoft.DocumentDB/databaseAccounts/apis/keyspaces": [ + "2015-04-01", "2015-04-08", "2015-11-06", "2016-03-19", "2016-03-31" ], "Microsoft.DocumentDB/databaseAccounts/apis/keyspaces/settings": [ + "2015-04-01", "2015-04-08", "2015-11-06", "2016-03-19", "2016-03-31" ], "Microsoft.DocumentDB/databaseAccounts/apis/keyspaces/tables": [ + "2015-04-01", "2015-04-08", "2015-11-06", "2016-03-19", "2016-03-31" ], "Microsoft.DocumentDB/databaseAccounts/apis/keyspaces/tables/settings": [ + "2015-04-01", "2015-04-08", "2015-11-06", "2016-03-19", "2016-03-31" ], "Microsoft.DocumentDB/databaseAccounts/apis/tables": [ + "2015-04-01", "2015-04-08", "2015-11-06", "2016-03-19", "2016-03-31" ], "Microsoft.DocumentDB/databaseAccounts/apis/tables/settings": [ + "2015-04-01", "2015-04-08", "2015-11-06", "2016-03-19", From aa0e70fbf2a891767a9e4fb4d011abe8f018b7b7 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 1 Sep 2020 07:21:53 +0000 Subject: [PATCH 4/9] Autogenerate schemas --- .../Microsoft.EventHub.json | 22 +- .../Microsoft.GuestConfiguration.json | 20 +- schemas/2018-06-01/Microsoft.DataFactory.json | 49 +- .../Microsoft.GuestConfiguration.json | 16 +- .../Microsoft.Network.FrontDoor.json | 1305 +++++++++++++++++ .../Microsoft.DeploymentManager.json | 12 +- .../Microsoft.EngagementFabric.json | 216 +++ .../Microsoft.GuestConfiguration.json | 4 +- .../Microsoft.DesktopVirtualization.json | 3 +- .../Microsoft.Network.FrontDoor.json | 279 ---- .../Microsoft.HybridCompute.json | 118 ++ .../Microsoft.HybridCompute.json | 410 ++++++ .../Microsoft.DesktopVirtualization.json | 11 +- .../Microsoft.DesktopVirtualization.json | 9 +- .../Microsoft.HybridCompute.json | 8 +- .../2020-08-02/Microsoft.HybridCompute.json | 448 ++++++ .../Microsoft.HybridCompute.json | 763 ++++++++++ schemas/common/autogeneratedResources.json | 42 + 18 files changed, 3400 insertions(+), 335 deletions(-) create mode 100644 schemas/2018-08-01/Microsoft.Network.FrontDoor.json create mode 100644 schemas/2018-09-01-preview/Microsoft.EngagementFabric.json create mode 100644 schemas/2019-03-18-preview/Microsoft.HybridCompute.json create mode 100644 schemas/2019-08-02-preview/Microsoft.HybridCompute.json create mode 100644 schemas/2020-08-02/Microsoft.HybridCompute.json create mode 100644 schemas/2020-08-15-preview/Microsoft.HybridCompute.json diff --git a/schemas/2018-01-01-preview/Microsoft.EventHub.json b/schemas/2018-01-01-preview/Microsoft.EventHub.json index f8d243e0c1..dbfebf19a7 100644 --- a/schemas/2018-01-01-preview/Microsoft.EventHub.json +++ b/schemas/2018-01-01-preview/Microsoft.EventHub.json @@ -108,7 +108,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/EHNamespacePropertiesModel" + "$ref": "#/definitions/EHNamespaceProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -236,7 +236,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/NetworkRuleSetPropertiesModel" + "$ref": "#/definitions/NetworkRuleSetProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -342,7 +342,7 @@ ], "description": "SKU parameters particular to a cluster instance." }, - "EHNamespacePropertiesModel": { + "EHNamespaceProperties": { "type": "object", "properties": { "clusterArmId": { @@ -576,7 +576,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/NetworkRuleSetPropertiesModel" + "$ref": "#/definitions/NetworkRuleSetProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -639,7 +639,7 @@ ], "description": "Microsoft.EventHub/namespaces/virtualnetworkrules" }, - "NetworkRuleSetPropertiesModel": { + "NetworkRuleSetProperties": { "type": "object", "properties": { "defaultAction": { @@ -662,7 +662,7 @@ { "type": "array", "items": { - "$ref": "#/definitions/NWRuleSetIpRulesModel" + "$ref": "#/definitions/NWRuleSetIpRules" } }, { @@ -687,7 +687,7 @@ { "type": "array", "items": { - "$ref": "#/definitions/NWRuleSetVirtualNetworkRulesModel" + "$ref": "#/definitions/NWRuleSetVirtualNetworkRules" } }, { @@ -699,7 +699,7 @@ }, "description": "NetworkRuleSet properties" }, - "NWRuleSetIpRulesModel": { + "NWRuleSetIpRules": { "type": "object", "properties": { "action": { @@ -723,7 +723,7 @@ }, "description": "The response from the List namespace operation." }, - "NWRuleSetVirtualNetworkRulesModel": { + "NWRuleSetVirtualNetworkRules": { "type": "object", "properties": { "ignoreMissingVnetServiceEndpoint": { @@ -740,7 +740,7 @@ "subnet": { "oneOf": [ { - "$ref": "#/definitions/SubnetModel" + "$ref": "#/definitions/Subnet" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -803,7 +803,7 @@ ], "description": "SKU parameters supplied to the create namespace operation" }, - "SubnetModel": { + "Subnet": { "type": "object", "properties": { "id": { diff --git a/schemas/2018-01-20-preview/Microsoft.GuestConfiguration.json b/schemas/2018-01-20-preview/Microsoft.GuestConfiguration.json index 3891ceceba..1b3ee64dae 100644 --- a/schemas/2018-01-20-preview/Microsoft.GuestConfiguration.json +++ b/schemas/2018-01-20-preview/Microsoft.GuestConfiguration.json @@ -25,7 +25,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/GuestConfigurationAssignmentPropertiesModelModelModel" + "$ref": "#/definitions/GuestConfigurationAssignmentProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -50,6 +50,11 @@ } }, "definitions": { + "ConfigurationParameter": { + "type": "object", + "properties": {}, + "description": "Represents a configuration parameter." + }, "ConfigurationParameterList": { "type": "object", "properties": { @@ -58,7 +63,7 @@ { "type": "array", "items": { - "$ref": "#/definitions/ConfigurationParameterModel" + "$ref": "#/definitions/ConfigurationParameter" } }, { @@ -70,18 +75,13 @@ }, "description": "Represents the list for configuration parameters." }, - "ConfigurationParameterModel": { - "type": "object", - "properties": {}, - "description": "Represents a configuration parameter." - }, - "GuestConfigurationAssignmentPropertiesModelModelModel": { + "GuestConfigurationAssignmentProperties": { "type": "object", "properties": { "guestConfiguration": { "oneOf": [ { - "$ref": "#/definitions/GuestConfigurationNavigationModelModel" + "$ref": "#/definitions/GuestConfigurationNavigation" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -92,7 +92,7 @@ }, "description": "Properties of guest configuration assignment object." }, - "GuestConfigurationNavigationModelModel": { + "GuestConfigurationNavigation": { "type": "object", "properties": { "configurationParameter": { diff --git a/schemas/2018-06-01/Microsoft.DataFactory.json b/schemas/2018-06-01/Microsoft.DataFactory.json index 63dc71515d..b40feaed11 100644 --- a/schemas/2018-06-01/Microsoft.DataFactory.json +++ b/schemas/2018-06-01/Microsoft.DataFactory.json @@ -5878,6 +5878,12 @@ }, { "$ref": "#/definitions/DatasetZipDeflateCompression" + }, + { + "$ref": "#/definitions/DatasetTarCompression" + }, + { + "$ref": "#/definitions/DatasetTarGZipCompression" } ], "properties": { @@ -6058,6 +6064,41 @@ }, "description": "The format definition of a storage." }, + "DatasetTarCompression": { + "type": "object", + "properties": { + "type": { + "type": "string", + "enum": [ + "Tar" + ] + } + }, + "required": [ + "type" + ], + "description": "The Tar archive method used on a dataset." + }, + "DatasetTarGZipCompression": { + "type": "object", + "properties": { + "level": { + "type": "object", + "properties": {}, + "description": "The TarGZip compression level." + }, + "type": { + "type": "string", + "enum": [ + "TarGZip" + ] + } + }, + "required": [ + "type" + ], + "description": "The TarGZip compression method used on a dataset." + }, "DatasetZipDeflateCompression": { "type": "object", "properties": { @@ -6355,7 +6396,9 @@ "bzip2", "deflate", "zipDeflate", - "lz4" + "lz4", + "tar", + "tarGZip" ] }, { @@ -14374,7 +14417,9 @@ "bzip2", "deflate", "zipDeflate", - "lz4" + "lz4", + "tar", + "tarGZip" ] }, { diff --git a/schemas/2018-06-30-preview/Microsoft.GuestConfiguration.json b/schemas/2018-06-30-preview/Microsoft.GuestConfiguration.json index 51650849d1..f5e9042130 100644 --- a/schemas/2018-06-30-preview/Microsoft.GuestConfiguration.json +++ b/schemas/2018-06-30-preview/Microsoft.GuestConfiguration.json @@ -25,7 +25,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/GuestConfigurationAssignmentPropertiesModelModel" + "$ref": "#/definitions/GuestConfigurationAssignmentProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -50,12 +50,12 @@ } }, "definitions": { - "ConfigurationParameterModel": { + "ConfigurationParameter": { "type": "object", "properties": {}, "description": "Represents a configuration parameter." }, - "ConfigurationSettingModel": { + "ConfigurationSetting": { "type": "object", "properties": { "allowModuleOverwrite": { @@ -76,7 +76,7 @@ }, "description": "Configuration setting of LCM (Local Configuration Manager)." }, - "GuestConfigurationAssignmentPropertiesModelModel": { + "GuestConfigurationAssignmentProperties": { "type": "object", "properties": { "context": { @@ -86,7 +86,7 @@ "guestConfiguration": { "oneOf": [ { - "$ref": "#/definitions/GuestConfigurationNavigationModel" + "$ref": "#/definitions/GuestConfigurationNavigation" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -97,7 +97,7 @@ }, "description": "Guest configuration assignment properties." }, - "GuestConfigurationNavigationModel": { + "GuestConfigurationNavigation": { "type": "object", "properties": { "configurationParameter": { @@ -105,7 +105,7 @@ { "type": "array", "items": { - "$ref": "#/definitions/ConfigurationParameterModel" + "$ref": "#/definitions/ConfigurationParameter" } }, { @@ -117,7 +117,7 @@ "configurationSetting": { "oneOf": [ { - "$ref": "#/definitions/ConfigurationSettingModel" + "$ref": "#/definitions/ConfigurationSetting" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" diff --git a/schemas/2018-08-01/Microsoft.Network.FrontDoor.json b/schemas/2018-08-01/Microsoft.Network.FrontDoor.json new file mode 100644 index 0000000000..b3e04e25f6 --- /dev/null +++ b/schemas/2018-08-01/Microsoft.Network.FrontDoor.json @@ -0,0 +1,1305 @@ +{ + "id": "https://schema.management.azure.com/schemas/2018-08-01/Microsoft.Network.FrontDoor.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.Network", + "description": "Microsoft Network Resource Types", + "resourceDefinitions": { + "frontDoors": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-08-01" + ] + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$", + "minLength": 5, + "maxLength": 64 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Name of the Front Door which is globally unique." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FrontDoorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The JSON object that contains the properties required to create an endpoint." + }, + "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.Network/frontDoors" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Network/frontDoors" + }, + "FrontDoorWebApplicationFirewallPolicies": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-08-01" + ] + }, + "etag": { + "type": "string", + "description": "Gets a unique read-only string that changes whenever the resource is updated." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "maxLength": 128, + "description": "The name of the resource group." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/WebApplicationFirewallPolicyPropertiesFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Defines web application firewall policy 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.Network/FrontDoorWebApplicationFirewallPolicies" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Network/FrontDoorWebApplicationFirewallPolicies" + } + }, + "definitions": { + "AzureManagedOverrideRuleGroup": { + "type": "object", + "properties": { + "action": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Allow", + "Block", + "Log" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of Actions." + }, + "ruleGroupOverride": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SqlInjection", + "XSS" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes override rule group." + } + }, + "required": [ + "action", + "ruleGroupOverride" + ], + "description": "Defines contents of a web application rule" + }, + "AzureManagedRuleSet": { + "type": "object", + "properties": { + "ruleGroupOverrides": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/AzureManagedOverrideRuleGroup" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of azure managed provider override configuration (optional)" + }, + "ruleSetType": { + "type": "string", + "enum": [ + "AzureManagedRuleSet" + ] + } + }, + "required": [ + "ruleSetType" + ], + "description": "Describes azure managed provider." + }, + "Backend": { + "type": "object", + "properties": { + "address": { + "type": "string", + "description": "Location of the backend (IP address or FQDN)" + }, + "backendHostHeader": { + "type": "string", + "description": "The value to use as the host header sent to the backend. If blank or unspecified, this defaults to the incoming host." + }, + "enabledState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable use of this backend. Permitted values are 'Enabled' or 'Disabled'." + }, + "httpPort": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 65535 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The HTTP TCP port number. Must be between 1 and 65535." + }, + "httpsPort": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 65535 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The HTTPS TCP port number. Must be between 1 and 65535." + }, + "priority": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 5 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Priority to use for load balancing. Higher priorities will not be used for load balancing if any lower priority backend is healthy." + }, + "weight": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 1000 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Weight of this endpoint for load balancing purposes." + } + }, + "description": "Backend address of a frontDoor load balancer." + }, + "BackendPool": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "name": { + "type": "string", + "description": "Resource name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BackendPoolProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The JSON object that contains the properties required to create a routing rule." + } + }, + "description": "A backend pool is a collection of backends that can be routed to." + }, + "BackendPoolProperties": { + "type": "object", + "properties": { + "backends": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Backend" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The set of backends for this pool" + }, + "healthProbeSettings": { + "oneOf": [ + { + "$ref": "#/definitions/SubResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Reference to another subresource." + }, + "loadBalancingSettings": { + "oneOf": [ + { + "$ref": "#/definitions/SubResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Reference to another subresource." + }, + "resourceState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource status." + } + }, + "description": "The JSON object that contains the properties required to create a routing rule." + }, + "CacheConfiguration": { + "type": "object", + "properties": { + "dynamicCompression": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to use dynamic compression for cached content." + }, + "queryParameterStripDirective": { + "oneOf": [ + { + "type": "string", + "enum": [ + "StripNone", + "StripAll" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Treatment of URL query terms when forming the cache key." + } + }, + "description": "Caching settings for a caching-type route. To disable caching, do not provide a cacheConfiguration object." + }, + "CustomRule": { + "type": "object", + "properties": { + "action": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Allow", + "Block", + "Log" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of Actions." + }, + "matchConditions": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MatchCondition1" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of match conditions" + }, + "name": { + "type": "string", + "maxLength": 128, + "description": "Gets name of the resource that is unique within a policy. This name can be used to access the resource." + }, + "priority": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes priority of the rule. Rules with a lower value will be evaluated before rules with a higher value" + }, + "rateLimitDurationInMinutes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Defines rate limit duration. Default - 1 minute" + }, + "rateLimitThreshold": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Defines rate limit threshold" + }, + "ruleType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "MatchRule", + "RateLimitRule" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes type of rule." + }, + "transforms": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Lowercase", + "Uppercase", + "Trim", + "UrlDecode", + "UrlEncode", + "RemoveNulls", + "HtmlEntityDecode" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of transforms" + } + }, + "required": [ + "action", + "matchConditions", + "priority", + "ruleType" + ], + "description": "Defines contents of a web application rule" + }, + "CustomRules": { + "type": "object", + "properties": { + "rules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/CustomRule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of rules" + } + }, + "description": "Defines contents of custom rules" + }, + "FrontDoorProperties": { + "type": "object", + "properties": { + "backendPools": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/BackendPool" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backend pools available to routing rules." + }, + "enabledState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Operational status of the Front Door load balancer. Permitted values are 'Enabled' or 'Disabled'." + }, + "friendlyName": { + "type": "string", + "description": "A friendly name for the frontDoor" + }, + "frontendEndpoints": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/FrontendEndpoint" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Frontend endpoints available to routing rules." + }, + "healthProbeSettings": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/HealthProbeSettingsModel" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health probe settings associated with this Front Door instance." + }, + "loadBalancingSettings": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/LoadBalancingSettingsModel" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Load balancing settings associated with this Front Door instance." + }, + "resourceState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource status of the Front Door." + }, + "routingRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/RoutingRule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Routing rules associated with this Front Door." + } + }, + "description": "The JSON object that contains the properties required to create an endpoint." + }, + "FrontendEndpoint": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "name": { + "type": "string", + "description": "Resource name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FrontendEndpointProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The JSON object that contains the properties required to create a frontend endpoint." + } + }, + "description": "A frontend endpoint used for routing." + }, + "FrontendEndpointProperties": { + "type": "object", + "properties": { + "hostName": { + "type": "string", + "description": "The host name of the frontendEndpoint. Must be a domain name." + }, + "resourceState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource status." + }, + "sessionAffinityEnabledState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to allow session affinity on this host. Valid options are 'Enabled' or 'Disabled'." + }, + "sessionAffinityTtlSeconds": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "UNUSED. This field will be ignored. The TTL to use in seconds for session affinity, if applicable." + }, + "webApplicationFirewallPolicyLink": { + "oneOf": [ + { + "$ref": "#/definitions/FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Defines the Web Application Firewall policy for each host (if applicable)" + } + }, + "description": "The JSON object that contains the properties required to create a frontend endpoint." + }, + "FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Defines the Web Application Firewall policy for each host (if applicable)" + }, + "HealthProbeSettingsModel": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "name": { + "type": "string", + "description": "Resource name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/HealthProbeSettingsProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The JSON object that contains the properties required to create a health probe settings." + } + }, + "description": "Load balancing settings for a backend pool" + }, + "HealthProbeSettingsProperties": { + "type": "object", + "properties": { + "intervalInSeconds": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of seconds between health probes." + }, + "path": { + "type": "string", + "description": "The path to use for the health probe. Default is /" + }, + "protocol": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Http", + "Https" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Protocol scheme to use for this probe." + }, + "resourceState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource status." + } + }, + "description": "The JSON object that contains the properties required to create a health probe settings." + }, + "LoadBalancingSettingsModel": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "name": { + "type": "string", + "description": "Resource name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/LoadBalancingSettingsProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The JSON object that contains the properties required to create load balancing settings" + } + }, + "description": "Load balancing settings for a backend pool" + }, + "LoadBalancingSettingsProperties": { + "type": "object", + "properties": { + "additionalLatencyMilliseconds": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The additional latency in milliseconds for probes to fall into the lowest latency bucket" + }, + "resourceState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource status." + }, + "sampleSize": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of samples to consider for load balancing decisions" + }, + "successfulSamplesRequired": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of samples within the sample period that must succeed" + } + }, + "description": "The JSON object that contains the properties required to create load balancing settings" + }, + "ManagedRuleSet": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureManagedRuleSet" + } + ], + "properties": { + "priority": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes priority of the rule" + }, + "version": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "defines version of the rule set" + } + }, + "description": "Base class for all types of ManagedRuleSet." + }, + "ManagedRuleSets": { + "type": "object", + "properties": { + "ruleSets": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ManagedRuleSet" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of rules" + } + }, + "description": "Defines ManagedRuleSets - array of managedRuleSet" + }, + "MatchCondition1": { + "type": "object", + "properties": { + "matchValue": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Match value" + }, + "matchVariable": { + "oneOf": [ + { + "type": "string", + "enum": [ + "RemoteAddr", + "RequestMethod", + "QueryString", + "PostArgs", + "RequestUri", + "RequestHeader", + "RequestBody" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Match Variable." + }, + "negateCondition": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes if this is negate condition or not" + }, + "operator": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Any", + "IPMatch", + "GeoMatch", + "Equal", + "Contains", + "LessThan", + "GreaterThan", + "LessThanOrEqual", + "GreaterThanOrEqual", + "BeginsWith", + "EndsWith" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes operator to be matched." + }, + "selector": { + "type": "string", + "description": "Name of selector in RequestHeader or RequestBody to be matched" + } + }, + "required": [ + "matchValue", + "matchVariable", + "operator" + ], + "description": "Define match conditions" + }, + "PolicySettings": { + "type": "object", + "properties": { + "enabledState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "describes if the policy is in enabled state or disabled state." + }, + "mode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Prevention", + "Detection" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes if it is in detection mode or prevention mode at policy level." + } + }, + "description": "Defines contents of a web application firewall global configuration" + }, + "RoutingRule": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + }, + "name": { + "type": "string", + "description": "Resource name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/RoutingRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The JSON object that contains the properties required to create a routing rule." + } + }, + "description": "A routing rule represents a specification for traffic to treat and where to send it, along with health probe information." + }, + "RoutingRuleProperties": { + "type": "object", + "properties": { + "acceptedProtocols": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Http", + "Https" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Protocol schemes to match for this rule" + }, + "backendPool": { + "oneOf": [ + { + "$ref": "#/definitions/SubResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Reference to another subresource." + }, + "cacheConfiguration": { + "oneOf": [ + { + "$ref": "#/definitions/CacheConfiguration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Caching settings for a caching-type route. To disable caching, do not provide a cacheConfiguration object." + }, + "customForwardingPath": { + "type": "string", + "description": "A custom path used to rewrite resource paths matched by this rule. Leave empty to use incoming path." + }, + "enabledState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled'." + }, + "forwardingProtocol": { + "oneOf": [ + { + "type": "string", + "enum": [ + "HttpOnly", + "HttpsOnly", + "MatchRequest" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Protocol this rule will use when forwarding traffic to backends." + }, + "frontendEndpoints": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/SubResource" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Frontend endpoints associated with this rule" + }, + "patternsToMatch": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The route patterns of the rule." + }, + "resourceState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Creating", + "Enabling", + "Enabled", + "Disabling", + "Disabled", + "Deleting" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource status." + } + }, + "description": "The JSON object that contains the properties required to create a routing rule." + }, + "SubResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource ID." + } + }, + "description": "Reference to another subresource." + }, + "WebApplicationFirewallPolicyPropertiesFormat": { + "type": "object", + "properties": { + "customRules": { + "oneOf": [ + { + "$ref": "#/definitions/CustomRules" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Defines contents of custom rules" + }, + "managedRules": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedRuleSets" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Defines ManagedRuleSets - array of managedRuleSet" + }, + "policySettings": { + "oneOf": [ + { + "$ref": "#/definitions/PolicySettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Defines contents of a web application firewall global configuration" + } + }, + "description": "Defines web application firewall policy properties" + } + } +} \ No newline at end of file diff --git a/schemas/2018-09-01-preview/Microsoft.DeploymentManager.json b/schemas/2018-09-01-preview/Microsoft.DeploymentManager.json index 2569222762..f10ba0940f 100644 --- a/schemas/2018-09-01-preview/Microsoft.DeploymentManager.json +++ b/schemas/2018-09-01-preview/Microsoft.DeploymentManager.json @@ -94,7 +94,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/RolloutRequestPropertiesModel" + "$ref": "#/definitions/RolloutRequestProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -351,7 +351,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/StepPropertiesModel" + "$ref": "#/definitions/StepProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -472,7 +472,7 @@ ], "description": "The properties that define a step." }, - "RolloutRequestPropertiesModel": { + "RolloutRequestProperties": { "type": "object", "properties": { "artifactSourceId": { @@ -816,11 +816,11 @@ ], "description": "The properties that define an Azure Deployment Manager step." }, - "StepPropertiesModel": { + "StepProperties": { "type": "object", "oneOf": [ { - "$ref": "#/definitions/WaitStepPropertiesModel" + "$ref": "#/definitions/WaitStepProperties" } ], "properties": {}, @@ -839,7 +839,7 @@ ], "description": "The parameters for the wait step." }, - "WaitStepPropertiesModel": { + "WaitStepProperties": { "type": "object", "properties": { "attributes": { diff --git a/schemas/2018-09-01-preview/Microsoft.EngagementFabric.json b/schemas/2018-09-01-preview/Microsoft.EngagementFabric.json new file mode 100644 index 0000000000..a2adb1c0ca --- /dev/null +++ b/schemas/2018-09-01-preview/Microsoft.EngagementFabric.json @@ -0,0 +1,216 @@ +{ + "id": "https://schema.management.azure.com/schemas/2018-09-01-preview/Microsoft.EngagementFabric.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.EngagementFabric", + "description": "Microsoft EngagementFabric Resource Types", + "resourceDefinitions": { + "Accounts": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-09-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The location of the resource" + }, + "name": { + "type": "string", + "description": "Account Name" + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/Accounts_Channels_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/SKU" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The EngagementFabric SKU" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The tags of the resource" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.EngagementFabric/Accounts" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "sku", + "type" + ], + "description": "Microsoft.EngagementFabric/Accounts" + }, + "Accounts_Channels": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-09-01-preview" + ] + }, + "name": { + "type": "string", + "description": "Channel Name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ChannelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The EngagementFabric channel properties" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.EngagementFabric/Accounts/Channels" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.EngagementFabric/Accounts/Channels" + } + }, + "definitions": { + "Accounts_Channels_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-09-01-preview" + ] + }, + "name": { + "type": "string", + "description": "Channel Name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ChannelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The EngagementFabric channel properties" + }, + "type": { + "type": "string", + "enum": [ + "Channels" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.EngagementFabric/Accounts/Channels" + }, + "ChannelProperties": { + "type": "object", + "properties": { + "channelFunctions": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The functions to be enabled for the channel" + }, + "channelType": { + "type": "string", + "description": "The channel type" + }, + "credentials": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The channel credentials" + } + }, + "required": [ + "channelType" + ], + "description": "The EngagementFabric channel properties" + }, + "SKU": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the SKU" + }, + "tier": { + "type": "string", + "description": "The price tier of the SKU" + } + }, + "required": [ + "name" + ], + "description": "The EngagementFabric SKU" + } + } +} \ No newline at end of file diff --git a/schemas/2018-11-20/Microsoft.GuestConfiguration.json b/schemas/2018-11-20/Microsoft.GuestConfiguration.json index 6de524d66d..fae13511fc 100644 --- a/schemas/2018-11-20/Microsoft.GuestConfiguration.json +++ b/schemas/2018-11-20/Microsoft.GuestConfiguration.json @@ -25,7 +25,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/GuestConfigurationAssignmentPropertiesModel" + "$ref": "#/definitions/GuestConfigurationAssignmentProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -155,7 +155,7 @@ }, "description": "Configuration setting of LCM (Local Configuration Manager)." }, - "GuestConfigurationAssignmentPropertiesModel": { + "GuestConfigurationAssignmentProperties": { "type": "object", "properties": { "context": { diff --git a/schemas/2019-01-23-preview/Microsoft.DesktopVirtualization.json b/schemas/2019-01-23-preview/Microsoft.DesktopVirtualization.json index 5b6005a27d..4c61e6e7f9 100644 --- a/schemas/2019-01-23-preview/Microsoft.DesktopVirtualization.json +++ b/schemas/2019-01-23-preview/Microsoft.DesktopVirtualization.json @@ -406,8 +406,7 @@ "type": "string", "enum": [ "Personal", - "Shared", - "Pooled" + "Shared" ] }, { diff --git a/schemas/2019-03-01/Microsoft.Network.FrontDoor.json b/schemas/2019-03-01/Microsoft.Network.FrontDoor.json index ddf246c956..b4db262282 100644 --- a/schemas/2019-03-01/Microsoft.Network.FrontDoor.json +++ b/schemas/2019-03-01/Microsoft.Network.FrontDoor.json @@ -203,137 +203,6 @@ }, "description": "Defines contents of custom rules" }, - "CustomRuleListModel": { - "type": "object", - "properties": { - "rules": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/CustomRuleModel" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of rules" - } - }, - "description": "Defines contents of custom rules" - }, - "CustomRuleModel": { - "type": "object", - "properties": { - "action": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Allow", - "Block", - "Log", - "Redirect" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes what action to be applied when rule matches." - }, - "enabledState": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Disabled", - "Enabled" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes if the custom rule is in enabled or disabled state. Defaults to Enabled if not specified." - }, - "matchConditions": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/MatchConditionModel" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of match conditions." - }, - "name": { - "type": "string", - "maxLength": 128, - "description": "Describes the name of the rule." - }, - "priority": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes priority of the rule. Rules with a lower value will be evaluated before rules with a higher value." - }, - "rateLimitDurationInMinutes": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines rate limit duration. Default is 1 minute." - }, - "rateLimitThreshold": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines rate limit threshold." - }, - "ruleType": { - "oneOf": [ - { - "type": "string", - "enum": [ - "MatchRule", - "RateLimitRule" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes type of rule." - } - }, - "required": [ - "action", - "matchConditions", - "priority", - "ruleType" - ], - "description": "Defines contents of a web application rule" - }, "ManagedRuleGroupOverride": { "type": "object", "properties": { @@ -567,115 +436,6 @@ ], "description": "Define a match condition." }, - "MatchConditionModel": { - "type": "object", - "properties": { - "matchValue": { - "oneOf": [ - { - "type": "array", - "items": { - "type": "string" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of possible match values." - }, - "matchVariable": { - "oneOf": [ - { - "type": "string", - "enum": [ - "RemoteAddr", - "RequestMethod", - "QueryString", - "PostArgs", - "RequestUri", - "RequestHeader", - "RequestBody", - "Cookies", - "SocketAddr" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Match variable to compare against." - }, - "negateCondition": { - "oneOf": [ - { - "type": "boolean" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes if the result of this condition should be negated." - }, - "operator": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Any", - "IPMatch", - "GeoMatch", - "Equal", - "Contains", - "LessThan", - "GreaterThan", - "LessThanOrEqual", - "GreaterThanOrEqual", - "BeginsWith", - "EndsWith", - "RegEx" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Describes operator to be matched." - }, - "selector": { - "type": "string", - "description": "Match against a specific key from the QueryString, PostArgs, RequestHeader or Cookies variables. Default is null." - }, - "transforms": { - "oneOf": [ - { - "type": "array", - "items": { - "type": "string", - "enum": [ - "Lowercase", - "Uppercase", - "Trim", - "UrlDecode", - "UrlEncode", - "RemoveNulls" - ] - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "List of transforms." - } - }, - "required": [ - "matchValue", - "matchVariable", - "operator" - ], - "description": "Define a match condition." - }, "PolicySettings": { "type": "object", "properties": { @@ -777,45 +537,6 @@ } }, "description": "Defines web application firewall policy properties." - }, - "WebApplicationFirewallPolicyPropertiesModel": { - "type": "object", - "properties": { - "customRules": { - "oneOf": [ - { - "$ref": "#/definitions/CustomRuleListModel" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines contents of custom rules" - }, - "managedRules": { - "oneOf": [ - { - "$ref": "#/definitions/ManagedRuleSetList" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines the list of managed rule sets for the policy." - }, - "policySettings": { - "oneOf": [ - { - "$ref": "#/definitions/PolicySettings" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Defines top-level WebApplicationFirewallPolicy configuration settings." - } - }, - "description": "Defines web application firewall policy properties." } } } \ No newline at end of file diff --git a/schemas/2019-03-18-preview/Microsoft.HybridCompute.json b/schemas/2019-03-18-preview/Microsoft.HybridCompute.json new file mode 100644 index 0000000000..3f5595f1f4 --- /dev/null +++ b/schemas/2019-03-18-preview/Microsoft.HybridCompute.json @@ -0,0 +1,118 @@ +{ + "id": "https://schema.management.azure.com/schemas/2019-03-18-preview/Microsoft.HybridCompute.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.HybridCompute", + "description": "Microsoft HybridCompute Resource Types", + "resourceDefinitions": { + "machines": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2019-03-18-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/Identity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the hybrid machine." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MachineProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the properties of a hybrid machine." + }, + "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.HybridCompute/machines" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/machines" + } + }, + "definitions": { + "Identity": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The identity type." + } + } + }, + "MachineProperties": { + "type": "object", + "properties": { + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding" + }, + "osProfile": { + "oneOf": [ + { + "$ref": "#/definitions/OSProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the operating system settings for the hybrid machine." + }, + "physicalLocation": { + "type": "string", + "description": "Resource's Physical Location" + } + }, + "description": "Describes the properties of a hybrid machine." + }, + "OSProfile": { + "type": "object", + "properties": {}, + "description": "Specifies the operating system settings for the hybrid machine." + } + } +} \ No newline at end of file diff --git a/schemas/2019-08-02-preview/Microsoft.HybridCompute.json b/schemas/2019-08-02-preview/Microsoft.HybridCompute.json new file mode 100644 index 0000000000..c5d0399d59 --- /dev/null +++ b/schemas/2019-08-02-preview/Microsoft.HybridCompute.json @@ -0,0 +1,410 @@ +{ + "id": "https://schema.management.azure.com/schemas/2019-08-02-preview/Microsoft.HybridCompute.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.HybridCompute", + "description": "Microsoft HybridCompute Resource Types", + "resourceDefinitions": { + "machines": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2019-08-02-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/Identity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the hybrid machine." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MachineProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the properties of a hybrid machine." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/machines_extensions_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.HybridCompute/machines" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/machines" + }, + "machines_extensions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2019-08-02-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/Identity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the machine extension." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the properties of a Machine Extension." + }, + "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.HybridCompute/machines/extensions" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/machines/extensions" + } + }, + "definitions": { + "Identity": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The identity type." + } + } + }, + "MachineExtensionInstanceView": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The machine extension name." + }, + "status": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionInstanceViewStatus" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Instance view status." + }, + "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." + } + }, + "description": "Describes the Machine Extension Instance View." + }, + "MachineExtensionInstanceViewStatus": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "level": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Info", + "Warning", + "Error" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The level code." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + }, + "MachineExtensionProperties": { + "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": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "instanceView": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionInstanceView" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the Machine Extension Instance View." + }, + "protectedSettings": { + "type": "object", + "properties": {}, + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "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." + } + }, + "description": "Describes the properties of a Machine Extension." + }, + "MachineProperties": { + "type": "object", + "properties": { + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding" + }, + "extensions": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MachineExtensionInstanceView" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Machine Extensions information" + }, + "osName": { + "type": "string", + "description": "The Operating System running on the hybrid machine." + }, + "osProfile": { + "oneOf": [ + { + "$ref": "#/definitions/OSProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the operating system settings for the hybrid machine." + }, + "osVersion": { + "type": "string", + "description": "The version of Operating System running on the hybrid machine." + }, + "physicalLocation": { + "type": "string", + "description": "Resource's Physical Location" + } + }, + "description": "Describes the properties of a hybrid machine." + }, + "machines_extensions_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2019-08-02-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/Identity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the machine extension." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the properties of a Machine Extension." + }, + "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": [ + "extensions" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/machines/extensions" + }, + "OSProfile": { + "type": "object", + "properties": {}, + "description": "Specifies the operating system settings for the hybrid machine." + } + } +} \ No newline at end of file diff --git a/schemas/2019-09-24-preview/Microsoft.DesktopVirtualization.json b/schemas/2019-09-24-preview/Microsoft.DesktopVirtualization.json index 03b6babf59..38068031c1 100644 --- a/schemas/2019-09-24-preview/Microsoft.DesktopVirtualization.json +++ b/schemas/2019-09-24-preview/Microsoft.DesktopVirtualization.json @@ -138,7 +138,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/HostPoolPropertiesModel" + "$ref": "#/definitions/HostPoolProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -385,7 +385,7 @@ ], "description": "Schema for Application properties." }, - "HostPoolPropertiesModel": { + "HostPoolProperties": { "type": "object", "properties": { "customRdpProperty": { @@ -406,8 +406,7 @@ "type": "string", "enum": [ "Personal", - "Shared", - "Pooled" + "Shared" ] }, { @@ -477,7 +476,7 @@ "registrationInfo": { "oneOf": [ { - "$ref": "#/definitions/RegistrationInfoModel" + "$ref": "#/definitions/RegistrationInfo" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -523,7 +522,7 @@ ], "description": "Properties of HostPool." }, - "RegistrationInfoModel": { + "RegistrationInfo": { "type": "object", "properties": { "expirationTime": { diff --git a/schemas/2019-12-10-preview/Microsoft.DesktopVirtualization.json b/schemas/2019-12-10-preview/Microsoft.DesktopVirtualization.json index ea8dac9e49..0df60bb859 100644 --- a/schemas/2019-12-10-preview/Microsoft.DesktopVirtualization.json +++ b/schemas/2019-12-10-preview/Microsoft.DesktopVirtualization.json @@ -138,7 +138,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/HostPoolPropertiesModelModel" + "$ref": "#/definitions/HostPoolProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -385,7 +385,7 @@ ], "description": "Schema for Application properties." }, - "HostPoolPropertiesModelModel": { + "HostPoolProperties": { "type": "object", "properties": { "customRdpProperty": { @@ -406,7 +406,6 @@ "type": "string", "enum": [ "Personal", - "Shared", "Pooled" ] }, @@ -477,7 +476,7 @@ "registrationInfo": { "oneOf": [ { - "$ref": "#/definitions/RegistrationInfoModel" + "$ref": "#/definitions/RegistrationInfo" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -523,7 +522,7 @@ ], "description": "Properties of HostPool." }, - "RegistrationInfoModel": { + "RegistrationInfo": { "type": "object", "properties": { "expirationTime": { diff --git a/schemas/2020-07-30-preview/Microsoft.HybridCompute.json b/schemas/2020-07-30-preview/Microsoft.HybridCompute.json index bdb3c9a463..cc8892bc76 100644 --- a/schemas/2020-07-30-preview/Microsoft.HybridCompute.json +++ b/schemas/2020-07-30-preview/Microsoft.HybridCompute.json @@ -16,7 +16,7 @@ "identity": { "oneOf": [ { - "$ref": "#/definitions/MachineIdentityModel" + "$ref": "#/definitions/MachineIdentity" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -34,7 +34,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/MachinePropertiesModelModelModel" + "$ref": "#/definitions/MachinePropertiesModel" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -321,7 +321,7 @@ }, "description": "The machine extension instance view." }, - "MachineIdentityModel": { + "MachineIdentity": { "type": "object", "properties": { "type": { @@ -330,7 +330,7 @@ } } }, - "MachinePropertiesModelModelModel": { + "MachinePropertiesModel": { "type": "object", "properties": { "clientPublicKey": { diff --git a/schemas/2020-08-02/Microsoft.HybridCompute.json b/schemas/2020-08-02/Microsoft.HybridCompute.json new file mode 100644 index 0000000000..5b0f028624 --- /dev/null +++ b/schemas/2020-08-02/Microsoft.HybridCompute.json @@ -0,0 +1,448 @@ +{ + "id": "https://schema.management.azure.com/schemas/2020-08-02/Microsoft.HybridCompute.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.HybridCompute", + "description": "Microsoft HybridCompute Resource Types", + "resourceDefinitions": { + "machines": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-08-02" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/MachineIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the hybrid machine." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MachinePropertiesModel" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Hybrid Compute Machine properties" + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/machines_extensions_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.HybridCompute/machines" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/machines" + }, + "machines_extensions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-08-02" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the machine extension." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes Machine Extension 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.HybridCompute/machines/extensions" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/machines/extensions" + } + }, + "definitions": { + "LocationData": { + "type": "object", + "properties": { + "city": { + "type": "string", + "description": "The city or locality where the resource is located." + }, + "countryOrRegion": { + "type": "string", + "description": "The country or region where the resource is located" + }, + "district": { + "type": "string", + "description": "The district, state, or province where the resource is located." + }, + "name": { + "type": "string", + "maxLength": 256, + "description": "A canonical name for the geographic or physical location." + } + }, + "required": [ + "name" + ], + "description": "Metadata pertaining to the geographic location of the resource." + }, + "MachineExtensionInstanceView": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The machine extension name." + }, + "status": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionInstanceViewStatus" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Instance view status." + }, + "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." + } + }, + "description": "Describes the Machine Extension Instance View." + }, + "MachineExtensionInstanceViewStatus": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "level": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Info", + "Warning", + "Error" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The level code." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + }, + "MachineExtensionProperties": { + "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": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "instanceView": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionPropertiesInstanceView" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The machine extension instance view." + }, + "protectedSettings": { + "type": "object", + "properties": {}, + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "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." + } + }, + "description": "Describes Machine Extension Properties." + }, + "MachineExtensionPropertiesInstanceView": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The machine extension name." + }, + "status": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionInstanceViewStatus" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Instance view status." + }, + "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." + } + }, + "description": "The machine extension instance view." + }, + "MachineIdentity": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The identity type." + } + } + }, + "MachinePropertiesModel": { + "type": "object", + "properties": { + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding" + }, + "extensions": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MachineExtensionInstanceView" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Machine Extensions information" + }, + "locationData": { + "oneOf": [ + { + "$ref": "#/definitions/LocationData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to the geographic location of the resource." + }, + "osProfile": { + "oneOf": [ + { + "$ref": "#/definitions/MachinePropertiesOsProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the operating system settings for the hybrid machine." + }, + "vmId": { + "type": "string", + "description": "Specifies the hybrid machine unique ID." + } + }, + "description": "Hybrid Compute Machine properties" + }, + "MachinePropertiesOsProfile": { + "type": "object", + "properties": {}, + "description": "Specifies the operating system settings for the hybrid machine." + }, + "machines_extensions_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-08-02" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the machine extension." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes Machine Extension 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": [ + "extensions" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/machines/extensions" + } + } +} \ No newline at end of file diff --git a/schemas/2020-08-15-preview/Microsoft.HybridCompute.json b/schemas/2020-08-15-preview/Microsoft.HybridCompute.json new file mode 100644 index 0000000000..1007a274dd --- /dev/null +++ b/schemas/2020-08-15-preview/Microsoft.HybridCompute.json @@ -0,0 +1,763 @@ +{ + "id": "https://schema.management.azure.com/schemas/2020-08-15-preview/Microsoft.HybridCompute.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.HybridCompute", + "description": "Microsoft HybridCompute Resource Types", + "resourceDefinitions": { + "machines": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-08-15-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/MachineIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the hybrid machine." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MachinePropertiesModel" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Hybrid Compute Machine properties" + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/machines_extensions_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.HybridCompute/machines" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/machines" + }, + "machines_extensions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-08-15-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the machine extension." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes Machine Extension 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.HybridCompute/machines/extensions" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/machines/extensions" + }, + "privateLinkScopes": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-08-15-preview" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the Azure Arc PrivateLinkScope resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/HybridComputePrivateLinkScopeProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties that define a Azure Arc PrivateLinkScope resource." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/privateLinkScopes_privateEndpointConnections_childResource" + }, + { + "$ref": "#/definitions/privateLinkScopes_scopedResources_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.HybridCompute/privateLinkScopes" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/privateLinkScopes" + }, + "privateLinkScopes_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-08-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.HybridCompute/privateLinkScopes/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections" + }, + "privateLinkScopes_scopedResources": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-08-15-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the scoped resource object." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScopedResourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a private link scoped resource." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.HybridCompute/privateLinkScopes/scopedResources" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/privateLinkScopes/scopedResources" + } + }, + "definitions": { + "HybridComputePrivateLinkScopeProperties": { + "type": "object", + "properties": { + "publicNetworkAccess": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether machines associated with the private link scope can also use public Azure Arc service endpoints." + } + }, + "description": "Properties that define a Azure Arc PrivateLinkScope resource." + }, + "LocationData": { + "type": "object", + "properties": { + "city": { + "type": "string", + "description": "The city or locality where the resource is located." + }, + "countryOrRegion": { + "type": "string", + "description": "The country or region where the resource is located" + }, + "district": { + "type": "string", + "description": "The district, state, or province where the resource is located." + }, + "name": { + "type": "string", + "maxLength": 256, + "description": "A canonical name for the geographic or physical location." + } + }, + "required": [ + "name" + ], + "description": "Metadata pertaining to the geographic location of the resource." + }, + "MachineExtensionInstanceView": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The machine extension name." + }, + "status": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionInstanceViewStatus" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Instance view status." + }, + "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." + } + }, + "description": "Describes the Machine Extension Instance View." + }, + "MachineExtensionInstanceViewStatus": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "level": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Info", + "Warning", + "Error" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The level code." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + }, + "MachineExtensionProperties": { + "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": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "instanceView": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionPropertiesInstanceView" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The machine extension instance view." + }, + "protectedSettings": { + "type": "object", + "properties": {}, + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "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." + } + }, + "description": "Describes Machine Extension Properties." + }, + "MachineExtensionPropertiesInstanceView": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The machine extension name." + }, + "status": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionInstanceViewStatus" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Instance view status." + }, + "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." + } + }, + "description": "The machine extension instance view." + }, + "MachineIdentity": { + "type": "object", + "properties": { + "type": { + "type": "string", + "description": "The identity type." + } + } + }, + "MachinePropertiesModel": { + "type": "object", + "properties": { + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding" + }, + "extensions": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MachineExtensionInstanceView" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Machine Extensions information" + }, + "locationData": { + "oneOf": [ + { + "$ref": "#/definitions/LocationData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to the geographic location of the resource." + }, + "osProfile": { + "oneOf": [ + { + "$ref": "#/definitions/MachinePropertiesOsProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the operating system settings for the hybrid machine." + }, + "vmId": { + "type": "string", + "description": "Specifies the hybrid machine unique ID." + } + }, + "description": "Hybrid Compute Machine properties" + }, + "MachinePropertiesOsProfile": { + "type": "object", + "properties": {}, + "description": "Specifies the operating system settings for the hybrid machine." + }, + "machines_extensions_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-08-15-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the machine extension." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes Machine Extension 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": [ + "extensions" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/machines/extensions" + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "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": "State of the private endpoint connection." + } + }, + "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." + }, + "privateLinkScopes_privateEndpointConnections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-08-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.HybridCompute/privateLinkScopes/privateEndpointConnections" + }, + "privateLinkScopes_scopedResources_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-08-15-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the scoped resource object." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScopedResourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a private link scoped resource." + }, + "type": { + "type": "string", + "enum": [ + "scopedResources" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/privateLinkScopes/scopedResources" + }, + "PrivateLinkServiceConnectionStateProperty": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "The private link service connection description." + }, + "status": { + "type": "string", + "description": "The private link service connection status." + } + }, + "required": [ + "description", + "status" + ], + "description": "State of the private endpoint connection." + }, + "ScopedResourceProperties": { + "type": "object", + "properties": { + "linkedResourceId": { + "type": "string", + "description": "The resource id of the scoped Azure monitor resource." + } + }, + "description": "Properties of a private link scoped resource." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 286fe76c0f..3151d75d35 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -3043,6 +3043,12 @@ { "$ref": "https://schema.management.azure.com/schemas/2020-06-01-preview/Microsoft.DocumentDB.json#/resourceDefinitions/databaseAccounts_tables_throughputSettings" }, + { + "$ref": "https://schema.management.azure.com/schemas/2018-09-01-preview/Microsoft.EngagementFabric.json#/resourceDefinitions/Accounts" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2018-09-01-preview/Microsoft.EngagementFabric.json#/resourceDefinitions/Accounts_Channels" + }, { "$ref": "https://schema.management.azure.com/schemas/2018-12-03/Microsoft.EnterpriseKnowledgeGraph.json#/resourceDefinitions/services" }, @@ -3274,6 +3280,15 @@ { "$ref": "https://schema.management.azure.com/schemas/2018-06-01-preview/Microsoft.HDInsight.json#/resourceDefinitions/clusters_extensions" }, + { + "$ref": "https://schema.management.azure.com/schemas/2019-03-18-preview/Microsoft.HybridCompute.json#/resourceDefinitions/machines" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2019-08-02-preview/Microsoft.HybridCompute.json#/resourceDefinitions/machines" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2019-08-02-preview/Microsoft.HybridCompute.json#/resourceDefinitions/machines_extensions" + }, { "$ref": "https://schema.management.azure.com/schemas/2019-12-12/Microsoft.HybridCompute.json#/resourceDefinitions/machines" }, @@ -3286,6 +3301,27 @@ { "$ref": "https://schema.management.azure.com/schemas/2020-07-30-preview/Microsoft.HybridCompute.json#/resourceDefinitions/machines_extensions" }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-08-02/Microsoft.HybridCompute.json#/resourceDefinitions/machines" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-08-02/Microsoft.HybridCompute.json#/resourceDefinitions/machines_extensions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-08-15-preview/Microsoft.HybridCompute.json#/resourceDefinitions/machines" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-08-15-preview/Microsoft.HybridCompute.json#/resourceDefinitions/machines_extensions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-08-15-preview/Microsoft.HybridCompute.json#/resourceDefinitions/privateLinkScopes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-08-15-preview/Microsoft.HybridCompute.json#/resourceDefinitions/privateLinkScopes_privateEndpointConnections" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-08-15-preview/Microsoft.HybridCompute.json#/resourceDefinitions/privateLinkScopes_scopedResources" + }, { "$ref": "https://schema.management.azure.com/schemas/2016-06-01/Microsoft.HybridData.json#/resourceDefinitions/dataManagers" }, @@ -3667,6 +3703,12 @@ { "$ref": "https://schema.management.azure.com/schemas/2020-06-01/Microsoft.NetApp.json#/resourceDefinitions/netAppAccounts_snapshotPolicies" }, + { + "$ref": "https://schema.management.azure.com/schemas/2018-08-01/Microsoft.Network.FrontDoor.json#/resourceDefinitions/frontDoors" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2018-08-01/Microsoft.Network.FrontDoor.json#/resourceDefinitions/FrontDoorWebApplicationFirewallPolicies" + }, { "$ref": "https://schema.management.azure.com/schemas/2019-03-01/Microsoft.Network.FrontDoor.json#/resourceDefinitions/FrontDoorWebApplicationFirewallPolicies" }, From 0d24357250fee494f6b262ee01ac77c622d5f567 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 1 Sep 2020 07:22:05 +0000 Subject: [PATCH 5/9] Update resource list --- generator/resources.json | 28 ++++++++++++++++++++++++++-- 1 file changed, 26 insertions(+), 2 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index 4283bdb0f9..df5faeb28d 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -1839,6 +1839,12 @@ "Microsoft.DomainRegistration/domains/domainOwnershipIdentifiers": [ "2015-04-01" ], + "Microsoft.EngagementFabric/Accounts": [ + "2018-09-01-preview" + ], + "Microsoft.EngagementFabric/Accounts/Channels": [ + "2018-09-01-preview" + ], "Microsoft.EnterpriseKnowledgeGraph/services": [ "2018-12-03" ], @@ -1984,12 +1990,28 @@ "2019-09-16" ], "Microsoft.HybridCompute/machines": [ + "2019-03-18-preview", + "2019-08-02-preview", "2019-12-12", - "2020-07-30-preview" + "2020-07-30-preview", + "2020-08-02", + "2020-08-15-preview" ], "Microsoft.HybridCompute/machines/extensions": [ + "2019-08-02-preview", "2019-12-12", - "2020-07-30-preview" + "2020-07-30-preview", + "2020-08-02", + "2020-08-15-preview" + ], + "Microsoft.HybridCompute/privateLinkScopes": [ + "2020-08-15-preview" + ], + "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections": [ + "2020-08-15-preview" + ], + "Microsoft.HybridCompute/privateLinkScopes/scopedResources": [ + "2020-08-15-preview" ], "Microsoft.HybridData/dataManagers": [ "2016-06-01", @@ -2486,6 +2508,7 @@ "2020-05-01" ], "Microsoft.Network/FrontDoorWebApplicationFirewallPolicies": [ + "2018-08-01", "2019-03-01", "2019-10-01", "2020-04-01" @@ -2891,6 +2914,7 @@ "2020-04-01" ], "Microsoft.Network/frontDoors": [ + "2018-08-01", "2019-04-01", "2019-05-01", "2020-01-01", From 39904a214867d4dcc65fdbf2a55678e7c1570a5e Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 1 Sep 2020 07:41:45 +0000 Subject: [PATCH 6/9] Autogenerate schemas --- .../Microsoft.DBforMySQL.json | 4 +- .../Microsoft.DBforPostgreSQL.json | 4 +- schemas/2017-12-01/Microsoft.DBforMySQL.json | 313 +--- .../Microsoft.DBforMariaDB.json | 4 +- .../2018-06-01/Microsoft.DBforMariaDB.json | 153 -- schemas/2019-07-01/Microsoft.Resources.json | 3 +- .../Microsoft.MachineLearningServices.json | 134 +- schemas/2020-06-15/Microsoft.Devices.json | 1438 ++++++++++++++++ .../2020-07-10-preview/Microsoft.Devices.json | 1516 +++++++++++++++++ schemas/common/autogeneratedResources.json | 24 + 10 files changed, 3026 insertions(+), 567 deletions(-) create mode 100644 schemas/2020-06-15/Microsoft.Devices.json create mode 100644 schemas/2020-07-10-preview/Microsoft.Devices.json diff --git a/schemas/2017-12-01-preview/Microsoft.DBforMySQL.json b/schemas/2017-12-01-preview/Microsoft.DBforMySQL.json index fddda4ba4b..840b33248c 100644 --- a/schemas/2017-12-01-preview/Microsoft.DBforMySQL.json +++ b/schemas/2017-12-01-preview/Microsoft.DBforMySQL.json @@ -275,7 +275,7 @@ "oneOf": [ { "type": "string", - "pattern": "^.*/Default$" + "pattern": "^.*/default$" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -889,7 +889,7 @@ "name": { "type": "string", "enum": [ - "Default" + "default" ], "description": "The name of the threat detection policy." }, diff --git a/schemas/2017-12-01-preview/Microsoft.DBforPostgreSQL.json b/schemas/2017-12-01-preview/Microsoft.DBforPostgreSQL.json index e4b48e6b85..077b41a569 100644 --- a/schemas/2017-12-01-preview/Microsoft.DBforPostgreSQL.json +++ b/schemas/2017-12-01-preview/Microsoft.DBforPostgreSQL.json @@ -275,7 +275,7 @@ "oneOf": [ { "type": "string", - "pattern": "^.*/Default$" + "pattern": "^.*/default$" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -892,7 +892,7 @@ "name": { "type": "string", "enum": [ - "Default" + "default" ], "description": "The name of the threat detection policy." }, diff --git a/schemas/2017-12-01/Microsoft.DBforMySQL.json b/schemas/2017-12-01/Microsoft.DBforMySQL.json index bc0597da88..1da5c7e7f4 100644 --- a/schemas/2017-12-01/Microsoft.DBforMySQL.json +++ b/schemas/2017-12-01/Microsoft.DBforMySQL.json @@ -112,72 +112,6 @@ }, "servers_Administrators": { "type": "object", - "oneOf": [ - { - "type": "object", - "properties": { - "name": { - "oneOf": [ - { - "type": "string", - "pattern": "^.*/activeDirectory$" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServerAdministratorProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of an server Administrator." - } - }, - "required": [ - "name", - "properties" - ], - "description": "Microsoft.DBforMySQL/servers/Administrators" - }, - { - "type": "object", - "properties": { - "name": { - "oneOf": [ - { - "type": "string", - "pattern": "^.*/activeDirectory$" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServerAdministratorProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of an server Administrator." - } - }, - "required": [ - "name", - "properties" - ], - "description": "Microsoft.DBforMySQL/servers/Administrators" - } - ], "properties": { "apiVersion": { "type": "string", @@ -185,6 +119,28 @@ "2017-12-01" ] }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/activeDirectory$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ServerAdministratorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of an server Administrator." + }, "type": { "type": "string", "enum": [ @@ -194,6 +150,8 @@ }, "required": [ "apiVersion", + "name", + "properties", "type" ], "description": "Microsoft.DBforMySQL/servers/Administrators" @@ -730,68 +688,6 @@ }, "description": "The properties used to create a new server." }, - "ServerPropertiesForCreateModel": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/ServerPropertiesForDefaultCreateModel" - }, - { - "$ref": "#/definitions/ServerPropertiesForRestoreModel" - }, - { - "$ref": "#/definitions/ServerPropertiesForGeoRestoreModel" - }, - { - "$ref": "#/definitions/ServerPropertiesForReplicaModel" - } - ], - "properties": { - "sslEnforcement": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Enabled", - "Disabled" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Enable ssl enforcement or not when connect to server." - }, - "storageProfile": { - "oneOf": [ - { - "$ref": "#/definitions/StorageProfile" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Storage Profile properties of a server" - }, - "version": { - "oneOf": [ - { - "type": "string", - "enum": [ - "5.6", - "5.7", - "8.0" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Server version." - } - }, - "description": "The properties used to create a new server." - }, "ServerPropertiesForDefaultCreate": { "type": "object", "properties": { @@ -818,32 +714,6 @@ ], "description": "The properties used to create a new server." }, - "ServerPropertiesForDefaultCreateModel": { - "type": "object", - "properties": { - "administratorLogin": { - "type": "string", - "description": "The administrator's login name of a server. Can only be specified when the server is being created (and is required for creation)." - }, - "administratorLoginPassword": { - "type": "string", - "format": "password", - "description": "The password of the administrator login." - }, - "createMode": { - "type": "string", - "enum": [ - "Default" - ] - } - }, - "required": [ - "administratorLogin", - "administratorLoginPassword", - "createMode" - ], - "description": "The properties used to create a new server." - }, "ServerPropertiesForGeoRestore": { "type": "object", "properties": { @@ -864,26 +734,6 @@ ], "description": "The properties used to create a new server by restoring to a different region from a geo replicated backup." }, - "ServerPropertiesForGeoRestoreModel": { - "type": "object", - "properties": { - "createMode": { - "type": "string", - "enum": [ - "GeoRestore" - ] - }, - "sourceServerId": { - "type": "string", - "description": "The source server id to restore from." - } - }, - "required": [ - "createMode", - "sourceServerId" - ], - "description": "The properties used to create a new server by restoring to a different region from a geo replicated backup." - }, "ServerPropertiesForReplica": { "type": "object", "properties": { @@ -904,26 +754,6 @@ ], "description": "The properties to create a new replica." }, - "ServerPropertiesForReplicaModel": { - "type": "object", - "properties": { - "createMode": { - "type": "string", - "enum": [ - "Replica" - ] - }, - "sourceServerId": { - "type": "string", - "description": "The master server id to create replica from." - } - }, - "required": [ - "createMode", - "sourceServerId" - ], - "description": "The properties to create a new replica." - }, "ServerPropertiesForRestore": { "type": "object", "properties": { @@ -950,96 +780,31 @@ ], "description": "The properties used to create a new server by restoring from a backup." }, - "ServerPropertiesForRestoreModel": { + "servers_Administrators_childResource": { "type": "object", "properties": { - "createMode": { + "apiVersion": { "type": "string", "enum": [ - "PointInTimeRestore" + "2017-12-01" ] }, - "restorePointInTime": { - "type": "string", - "format": "date-time", - "description": "Restore point creation time (ISO8601 format), specifying the time to restore from." - }, - "sourceServerId": { + "name": { "type": "string", - "description": "The source server id to restore from." - } - }, - "required": [ - "createMode", - "restorePointInTime", - "sourceServerId" - ], - "description": "The properties used to create a new server by restoring from a backup." - }, - "servers_Administrators_childResource": { - "type": "object", - "oneOf": [ - { - "type": "object", - "properties": { - "name": { - "type": "string", - "enum": [ - "activeDirectory" - ] - }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServerAdministratorProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of an server Administrator." - } - }, - "required": [ - "name", - "properties" - ], - "description": "Microsoft.DBforMySQL/servers/Administrators" + "enum": [ + "activeDirectory" + ] }, - { - "type": "object", - "properties": { - "name": { - "type": "string", - "enum": [ - "activeDirectory" - ] + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ServerAdministratorProperties" }, - "properties": { - "oneOf": [ - { - "$ref": "#/definitions/ServerAdministratorProperties" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The properties of an server Administrator." + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - }, - "required": [ - "name", - "properties" ], - "description": "Microsoft.DBforMySQL/servers/Administrators" - } - ], - "properties": { - "apiVersion": { - "type": "string", - "enum": [ - "2017-12-01" - ] + "description": "The properties of an server Administrator." }, "type": { "type": "string", @@ -1050,6 +815,8 @@ }, "required": [ "apiVersion", + "name", + "properties", "type" ], "description": "Microsoft.DBforMySQL/servers/Administrators" diff --git a/schemas/2018-06-01-preview/Microsoft.DBforMariaDB.json b/schemas/2018-06-01-preview/Microsoft.DBforMariaDB.json index bac8db5948..615ca0f756 100644 --- a/schemas/2018-06-01-preview/Microsoft.DBforMariaDB.json +++ b/schemas/2018-06-01-preview/Microsoft.DBforMariaDB.json @@ -226,7 +226,7 @@ "oneOf": [ { "type": "string", - "pattern": "^.*/Default$" + "pattern": "^.*/default$" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -727,7 +727,7 @@ "name": { "type": "string", "enum": [ - "Default" + "default" ], "description": "The name of the threat detection policy." }, diff --git a/schemas/2018-06-01/Microsoft.DBforMariaDB.json b/schemas/2018-06-01/Microsoft.DBforMariaDB.json index dc07a7a49e..03b621444f 100644 --- a/schemas/2018-06-01/Microsoft.DBforMariaDB.json +++ b/schemas/2018-06-01/Microsoft.DBforMariaDB.json @@ -615,67 +615,6 @@ }, "description": "The properties used to create a new server." }, - "ServerPropertiesForCreateModel": { - "type": "object", - "oneOf": [ - { - "$ref": "#/definitions/ServerPropertiesForDefaultCreateModel" - }, - { - "$ref": "#/definitions/ServerPropertiesForRestoreModel" - }, - { - "$ref": "#/definitions/ServerPropertiesForGeoRestoreModel" - }, - { - "$ref": "#/definitions/ServerPropertiesForReplicaModel" - } - ], - "properties": { - "sslEnforcement": { - "oneOf": [ - { - "type": "string", - "enum": [ - "Enabled", - "Disabled" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Enable ssl enforcement or not when connect to server." - }, - "storageProfile": { - "oneOf": [ - { - "$ref": "#/definitions/StorageProfile" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Storage Profile properties of a server" - }, - "version": { - "oneOf": [ - { - "type": "string", - "enum": [ - "5.6", - "5.7" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "Server version." - } - }, - "description": "The properties used to create a new server." - }, "ServerPropertiesForDefaultCreate": { "type": "object", "properties": { @@ -702,32 +641,6 @@ ], "description": "The properties used to create a new server." }, - "ServerPropertiesForDefaultCreateModel": { - "type": "object", - "properties": { - "administratorLogin": { - "type": "string", - "description": "The administrator's login name of a server. Can only be specified when the server is being created (and is required for creation)." - }, - "administratorLoginPassword": { - "type": "string", - "format": "password", - "description": "The password of the administrator login." - }, - "createMode": { - "type": "string", - "enum": [ - "Default" - ] - } - }, - "required": [ - "administratorLogin", - "administratorLoginPassword", - "createMode" - ], - "description": "The properties used to create a new server." - }, "ServerPropertiesForGeoRestore": { "type": "object", "properties": { @@ -748,26 +661,6 @@ ], "description": "The properties used to create a new server by restoring to a different region from a geo replicated backup." }, - "ServerPropertiesForGeoRestoreModel": { - "type": "object", - "properties": { - "createMode": { - "type": "string", - "enum": [ - "GeoRestore" - ] - }, - "sourceServerId": { - "type": "string", - "description": "The source server id to restore from." - } - }, - "required": [ - "createMode", - "sourceServerId" - ], - "description": "The properties used to create a new server by restoring to a different region from a geo replicated backup." - }, "ServerPropertiesForReplica": { "type": "object", "properties": { @@ -788,26 +681,6 @@ ], "description": "The properties to create a new replica." }, - "ServerPropertiesForReplicaModel": { - "type": "object", - "properties": { - "createMode": { - "type": "string", - "enum": [ - "Replica" - ] - }, - "sourceServerId": { - "type": "string", - "description": "The master server id to create replica from." - } - }, - "required": [ - "createMode", - "sourceServerId" - ], - "description": "The properties to create a new replica." - }, "ServerPropertiesForRestore": { "type": "object", "properties": { @@ -834,32 +707,6 @@ ], "description": "The properties used to create a new server by restoring from a backup." }, - "ServerPropertiesForRestoreModel": { - "type": "object", - "properties": { - "createMode": { - "type": "string", - "enum": [ - "PointInTimeRestore" - ] - }, - "restorePointInTime": { - "type": "string", - "format": "date-time", - "description": "Restore point creation time (ISO8601 format), specifying the time to restore from." - }, - "sourceServerId": { - "type": "string", - "description": "The source server id to restore from." - } - }, - "required": [ - "createMode", - "restorePointInTime", - "sourceServerId" - ], - "description": "The properties used to create a new server by restoring from a backup." - }, "servers_configurations_childResource": { "type": "object", "properties": { diff --git a/schemas/2019-07-01/Microsoft.Resources.json b/schemas/2019-07-01/Microsoft.Resources.json index 223ee23653..09e3eaef86 100644 --- a/schemas/2019-07-01/Microsoft.Resources.json +++ b/schemas/2019-07-01/Microsoft.Resources.json @@ -388,8 +388,7 @@ "type": "string", "enum": [ "Incremental", - "Complete", - "NotSpecified" + "Complete" ] }, { diff --git a/schemas/2020-03-01/Microsoft.MachineLearningServices.json b/schemas/2020-03-01/Microsoft.MachineLearningServices.json index 5b0dafea34..7f31b076db 100644 --- a/schemas/2020-03-01/Microsoft.MachineLearningServices.json +++ b/schemas/2020-03-01/Microsoft.MachineLearningServices.json @@ -701,10 +701,7 @@ { "type": "string", "enum": [ - "SystemAssigned", - "SystemAssigned,UserAssigned", - "UserAssigned", - "None" + "SystemAssigned" ] }, { @@ -716,44 +713,6 @@ }, "description": "Identity for the resource." }, - "IdentityModel": { - "type": "object", - "properties": { - "type": { - "oneOf": [ - { - "type": "string", - "enum": [ - "SystemAssigned", - "SystemAssigned,UserAssigned", - "UserAssigned", - "None" - ] - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The identity type." - }, - "userAssignedIdentities": { - "oneOf": [ - { - "type": "object", - "additionalProperties": { - "$ref": "#/definitions/UserAssignedIdentity" - }, - "properties": {} - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "dictionary containing all the user assigned identities, with resourceId of the UAI as key." - } - }, - "description": "Identity for the resource." - }, "KeyVaultProperties": { "type": "object", "properties": { @@ -1034,11 +993,6 @@ ], "description": "Settings for user account that gets created on each on the nodes of a compute." }, - "UserAssignedIdentity": { - "type": "object", - "properties": {}, - "description": "User Assigned Identity" - }, "VirtualMachine": { "type": "object", "properties": { @@ -1207,92 +1161,6 @@ }, "description": "The properties of a machine learning workspace." }, - "WorkspacePropertiesModel": { - "type": "object", - "properties": { - "allowPublicAccessWhenBehindVnet": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The flag to indicate whether to allow public access when behind VNet." - }, - "applicationInsights": { - "type": "string", - "description": "ARM id of the application insights associated with this workspace. This cannot be changed once the workspace has been created" - }, - "containerRegistry": { - "type": "string", - "description": "ARM id of the container registry associated with this workspace. This cannot be changed once the workspace has been created" - }, - "description": { - "type": "string", - "description": "The description of this workspace." - }, - "discoveryUrl": { - "type": "string", - "description": "Url for the discovery service to identify regional endpoints for machine learning experimentation services" - }, - "encryption": { - "oneOf": [ - { - "$ref": "#/definitions/EncryptionProperty" - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ] - }, - "friendlyName": { - "type": "string", - "description": "The friendly name for this workspace. This name in mutable" - }, - "hbiWorkspace": { - "oneOf": [ - { - "type": "boolean", - "default": false - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The flag to signal HBI data in the workspace and reduce diagnostic data collected by the service" - }, - "imageBuildCompute": { - "type": "string", - "description": "The compute name for image build" - }, - "keyVault": { - "type": "string", - "description": "ARM id of the key vault associated with this workspace. This cannot be changed once the workspace has been created" - }, - "sharedPrivateLinkResources": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/definitions/SharedPrivateLinkResource" - } - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The list of shared private link resources in this workspace." - }, - "storageAccount": { - "type": "string", - "description": "ARM id of the storage account associated with this workspace. This cannot be changed once the workspace has been created" - } - }, - "description": "The properties of a machine learning workspace." - }, "workspaces_computes_childResource": { "type": "object", "properties": { diff --git a/schemas/2020-06-15/Microsoft.Devices.json b/schemas/2020-06-15/Microsoft.Devices.json new file mode 100644 index 0000000000..49d44331b1 --- /dev/null +++ b/schemas/2020-06-15/Microsoft.Devices.json @@ -0,0 +1,1438 @@ +{ + "id": "https://schema.management.azure.com/schemas/2020-06-15/Microsoft.Devices.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.Devices", + "description": "Microsoft Devices Resource Types", + "resourceDefinitions": { + "IotHubs": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-06-15" + ] + }, + "etag": { + "type": "string", + "description": "The Etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal ETag convention." + }, + "location": { + "type": "string", + "description": "The resource location." + }, + "name": { + "type": "string", + "description": "The name of the IoT hub." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/IotHubProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of an IoT hub." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/IotHubs_certificates_childResource" + }, + { + "$ref": "#/definitions/iotHubs_privateEndpointConnections_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/IotHubSkuInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Information about the SKU of the IoT hub." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Devices/IotHubs" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "sku", + "type" + ], + "description": "Microsoft.Devices/IotHubs" + }, + "IotHubs_certificates": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-06-15" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the certificate" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CertificateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The description of an X509 CA Certificate." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Devices/IotHubs/certificates" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Devices/IotHubs/certificates" + }, + "IotHubs_eventHubEndpoints_ConsumerGroups": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-06-15" + ] + }, + "name": { + "type": "string", + "description": "The name of the consumer group to add." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/EventHubConsumerGroupName" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The EventHub consumer group name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Devices/IotHubs/eventHubEndpoints/ConsumerGroups" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Devices/IotHubs/eventHubEndpoints/ConsumerGroups" + }, + "iotHubs_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-06-15" + ] + }, + "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": "The properties of a private endpoint connection" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Devices/iotHubs/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Devices/iotHubs/privateEndpointConnections" + } + }, + "definitions": { + "CertificateProperties": { + "type": "object", + "properties": { + "certificate": { + "type": "string", + "description": "The certificate content" + } + }, + "description": "The description of an X509 CA Certificate." + }, + "CloudToDeviceProperties": { + "type": "object", + "properties": { + "defaultTtlAsIso8601": { + "type": "string", + "format": "duration", + "description": "The default time to live for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages." + }, + "feedback": { + "oneOf": [ + { + "$ref": "#/definitions/FeedbackProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the feedback queue for cloud-to-device messages." + }, + "maxDeliveryCount": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The max delivery count for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages." + } + }, + "description": "The IoT hub cloud-to-device messaging properties." + }, + "EnrichmentProperties": { + "type": "object", + "properties": { + "endpointNames": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of endpoints for which the enrichment is applied to the message." + }, + "key": { + "type": "string", + "description": "The key or name for the enrichment property." + }, + "value": { + "type": "string", + "description": "The value for the enrichment property." + } + }, + "required": [ + "endpointNames", + "key", + "value" + ], + "description": "The properties of an enrichment that your IoT hub applies to messages delivered to endpoints." + }, + "EventHubConsumerGroupName": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "EventHub consumer group name" + } + }, + "description": "The EventHub consumer group name." + }, + "EventHubProperties": { + "type": "object", + "properties": { + "partitionCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of partitions for receiving device-to-cloud messages in the Event Hub-compatible endpoint. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages." + }, + "retentionTimeInDays": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The retention time for device-to-cloud messages in days. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages" + } + }, + "description": "The properties of the provisioned Event Hub-compatible endpoint used by the IoT hub." + }, + "FallbackRouteProperties": { + "type": "object", + "properties": { + "condition": { + "type": "string", + "description": "The condition which is evaluated in order to apply the fallback route. If the condition is not provided it will evaluate to true by default. For grammar, See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language" + }, + "endpointNames": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of endpoints to which the messages that satisfy the condition are routed to. Currently only 1 endpoint is allowed." + }, + "isEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Used to specify whether the fallback route is enabled." + }, + "name": { + "type": "string", + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique." + }, + "source": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The source to which the routing rule is to be applied to. For example, DeviceMessages." + } + }, + "required": [ + "endpointNames", + "isEnabled", + "source" + ], + "description": "The properties of the fallback route. IoT Hub uses these properties when it routes messages to the fallback endpoint." + }, + "FeedbackProperties": { + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "type": "string", + "format": "duration", + "description": "The lock duration for the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages." + }, + "maxDeliveryCount": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of times the IoT hub attempts to deliver a message on the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages." + }, + "ttlAsIso8601": { + "type": "string", + "format": "duration", + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages." + } + }, + "description": "The properties of the feedback queue for cloud-to-device messages." + }, + "IotHubProperties": { + "type": "object", + "properties": { + "authorizationPolicies": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The shared access policies you can use to secure a connection to the IoT hub." + }, + "cloudToDevice": { + "oneOf": [ + { + "$ref": "#/definitions/CloudToDeviceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The IoT hub cloud-to-device messaging properties." + }, + "comments": { + "type": "string", + "description": "IoT hub comments." + }, + "enableFileUploadNotifications": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If True, file upload notifications are enabled." + }, + "eventHubEndpoints": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/EventHubProperties" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Event Hub-compatible endpoint properties. The only possible keys to this dictionary is events. This key has to be present in the dictionary while making create or update calls for the IoT hub." + }, + "features": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "DeviceManagement" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The capabilities and features enabled for the IoT hub." + }, + "ipFilterRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/IpFilterRule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The IP filter rules." + }, + "messagingEndpoints": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/MessagingEndpointProperties" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The messaging endpoint properties for the file upload notification queue." + }, + "minTlsVersion": { + "type": "string", + "description": "Specifies the minimum TLS version to support for this hub. Can be set to \"1.2\" to have clients that use a TLS version below 1.2 to be rejected." + }, + "privateEndpointConnections": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Private endpoint connections created on this IotHub" + }, + "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." + }, + "routing": { + "oneOf": [ + { + "$ref": "#/definitions/RoutingProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The routing related properties of the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging" + }, + "storageEndpoints": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StorageEndpointProperties" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of Azure Storage endpoints where you can upload files. Currently you can configure only one Azure Storage account and that MUST have its key as $default. Specifying more than one storage account causes an error to be thrown. Not specifying a value for this property when the enableFileUploadNotifications property is set to True, causes an error to be thrown." + } + }, + "description": "The properties of an IoT hub." + }, + "IotHubSkuInfo": { + "type": "object", + "properties": { + "capacity": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of provisioned IoT Hub units. See: https://docs.microsoft.com/azure/azure-subscription-service-limits#iot-hub-limits." + }, + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "F1", + "S1", + "S2", + "S3", + "B1", + "B2", + "B3" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the SKU." + } + }, + "required": [ + "name" + ], + "description": "Information about the SKU of the IoT hub." + }, + "IotHubs_certificates_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-06-15" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the certificate" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CertificateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The description of an X509 CA Certificate." + }, + "type": { + "type": "string", + "enum": [ + "certificates" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Devices/IotHubs/certificates" + }, + "iotHubs_privateEndpointConnections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-06-15" + ] + }, + "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": "The properties of a private endpoint connection" + }, + "type": { + "type": "string", + "enum": [ + "privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Devices/iotHubs/privateEndpointConnections" + }, + "IpFilterRule": { + "type": "object", + "properties": { + "action": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Accept", + "Reject" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The desired action for requests captured by this rule." + }, + "filterName": { + "type": "string", + "description": "The name of the IP filter rule." + }, + "ipMask": { + "type": "string", + "description": "A string that contains the IP address range in CIDR notation for the rule." + } + }, + "required": [ + "action", + "filterName", + "ipMask" + ], + "description": "The IP filter rules for the IoT hub." + }, + "MessagingEndpointProperties": { + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "type": "string", + "format": "duration", + "description": "The lock duration. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload." + }, + "maxDeliveryCount": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of times the IoT hub attempts to deliver a message. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload." + }, + "ttlAsIso8601": { + "type": "string", + "format": "duration", + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload." + } + }, + "description": "The properties of the messaging endpoints used by this IoT hub." + }, + "PrivateEndpoint": { + "type": "object", + "properties": {}, + "description": "The private endpoint property of a private endpoint connection" + }, + "PrivateEndpointConnection": { + "type": "object", + "properties": { + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a private endpoint connection" + } + }, + "required": [ + "properties" + ], + "description": "The private endpoint connection of an IotHub" + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "privateEndpoint": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpoint" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The private endpoint property of a private endpoint connection" + }, + "privateLinkServiceConnectionState": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The current state of a private endpoint connection" + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "The properties of a private endpoint connection" + }, + "PrivateLinkServiceConnectionState": { + "type": "object", + "properties": { + "actionsRequired": { + "type": "string", + "description": "Actions required for a private endpoint connection" + }, + "description": { + "type": "string", + "description": "The description for the current state of a private endpoint connection" + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The status of a private endpoint connection." + } + }, + "required": [ + "description", + "status" + ], + "description": "The current state of a private endpoint connection" + }, + "RouteProperties": { + "type": "object", + "properties": { + "condition": { + "type": "string", + "description": "The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language" + }, + "endpointNames": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of endpoints to which messages that satisfy the condition are routed. Currently only one endpoint is allowed." + }, + "isEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Used to specify whether a route is enabled." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique." + }, + "source": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The source that the routing rule is to be applied to, such as DeviceMessages." + } + }, + "required": [ + "endpointNames", + "isEnabled", + "name", + "source" + ], + "description": "The properties of a routing rule that your IoT hub uses to route messages to endpoints." + }, + "RoutingEndpoints": { + "type": "object", + "properties": { + "eventHubs": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/RoutingEventHubProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of Event Hubs endpoints that IoT hub routes messages to, based on the routing rules. This list does not include the built-in Event Hubs endpoint." + }, + "serviceBusQueues": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusQueueEndpointProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of Service Bus queue endpoints that IoT hub routes the messages to, based on the routing rules." + }, + "serviceBusTopics": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusTopicEndpointProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of Service Bus topic endpoints that the IoT hub routes the messages to, based on the routing rules." + }, + "storageContainers": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/RoutingStorageContainerProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of storage container endpoints that IoT hub routes messages to, based on the routing rules." + } + }, + "description": "The properties related to the custom endpoints to which your IoT hub routes messages based on the routing rules. A maximum of 10 custom endpoints are allowed across all endpoint types for paid hubs and only 1 custom endpoint is allowed across all endpoint types for free hubs." + }, + "RoutingEventHubProperties": { + "type": "object", + "properties": { + "authenticationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "keyBased", + "identityBased" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Method used to authenticate against the event hub endpoint." + }, + "connectionString": { + "type": "string", + "description": "The connection string of the event hub endpoint. " + }, + "endpointUri": { + "type": "string", + "description": "The url of the event hub endpoint. It must include the protocol sb://" + }, + "entityPath": { + "type": "string", + "description": "Event hub name on the event hub namespace" + }, + "id": { + "type": "string", + "description": "Id of the event hub endpoint" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types." + }, + "resourceGroup": { + "type": "string", + "description": "The name of the resource group of the event hub endpoint." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription identifier of the event hub endpoint." + } + }, + "required": [ + "name" + ], + "description": "The properties related to an event hub endpoint." + }, + "RoutingProperties": { + "type": "object", + "properties": { + "endpoints": { + "oneOf": [ + { + "$ref": "#/definitions/RoutingEndpoints" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties related to the custom endpoints to which your IoT hub routes messages based on the routing rules. A maximum of 10 custom endpoints are allowed across all endpoint types for paid hubs and only 1 custom endpoint is allowed across all endpoint types for free hubs." + }, + "enrichments": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/EnrichmentProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of user-provided enrichments that the IoT hub applies to messages to be delivered to built-in and custom endpoints. See: https://aka.ms/telemetryoneventgrid" + }, + "fallbackRoute": { + "oneOf": [ + { + "$ref": "#/definitions/FallbackRouteProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the fallback route. IoT Hub uses these properties when it routes messages to the fallback endpoint." + }, + "routes": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/RouteProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of user-provided routing rules that the IoT hub uses to route messages to built-in and custom endpoints. A maximum of 100 routing rules are allowed for paid hubs and a maximum of 5 routing rules are allowed for free hubs." + } + }, + "description": "The routing related properties of the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging" + }, + "RoutingServiceBusQueueEndpointProperties": { + "type": "object", + "properties": { + "authenticationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "keyBased", + "identityBased" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Method used to authenticate against the service bus queue endpoint." + }, + "connectionString": { + "type": "string", + "description": "The connection string of the service bus queue endpoint." + }, + "endpointUri": { + "type": "string", + "description": "The url of the service bus queue endpoint. It must include the protocol sb://" + }, + "entityPath": { + "type": "string", + "description": "Queue name on the service bus namespace" + }, + "id": { + "type": "string", + "description": "Id of the service bus queue endpoint" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual queue name." + }, + "resourceGroup": { + "type": "string", + "description": "The name of the resource group of the service bus queue endpoint." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription identifier of the service bus queue endpoint." + } + }, + "required": [ + "name" + ], + "description": "The properties related to service bus queue endpoint types." + }, + "RoutingServiceBusTopicEndpointProperties": { + "type": "object", + "properties": { + "authenticationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "keyBased", + "identityBased" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Method used to authenticate against the service bus topic endpoint." + }, + "connectionString": { + "type": "string", + "description": "The connection string of the service bus topic endpoint." + }, + "endpointUri": { + "type": "string", + "description": "The url of the service bus topic endpoint. It must include the protocol sb://" + }, + "entityPath": { + "type": "string", + "description": "Queue name on the service bus topic" + }, + "id": { + "type": "string", + "description": "Id of the service bus topic endpoint" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual topic name." + }, + "resourceGroup": { + "type": "string", + "description": "The name of the resource group of the service bus topic endpoint." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription identifier of the service bus topic endpoint." + } + }, + "required": [ + "name" + ], + "description": "The properties related to service bus topic endpoint types." + }, + "RoutingStorageContainerProperties": { + "type": "object", + "properties": { + "authenticationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "keyBased", + "identityBased" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Method used to authenticate against the storage endpoint." + }, + "batchFrequencyInSeconds": { + "oneOf": [ + { + "type": "integer", + "minimum": 60, + "maximum": 720 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds." + }, + "connectionString": { + "type": "string", + "description": "The connection string of the storage account." + }, + "containerName": { + "type": "string", + "description": "The name of storage container in the storage account." + }, + "encoding": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Avro", + "AvroDeflate", + "JSON" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Encoding that is used to serialize messages to blobs. Supported values are 'avro', 'avrodeflate', and 'JSON'. Default value is 'avro'." + }, + "endpointUri": { + "type": "string", + "description": "The url of the storage endpoint. It must include the protocol https://" + }, + "fileNameFormat": { + "type": "string", + "description": "File name format for the blob. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered." + }, + "id": { + "type": "string", + "description": "Id of the storage container endpoint" + }, + "maxChunkSizeInBytes": { + "oneOf": [ + { + "type": "integer", + "minimum": 10485760, + "maximum": 524288000 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB)." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types." + }, + "resourceGroup": { + "type": "string", + "description": "The name of the resource group of the storage account." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription identifier of the storage account." + } + }, + "required": [ + "containerName", + "name" + ], + "description": "The properties related to a storage container endpoint." + }, + "SharedAccessSignatureAuthorizationRule": { + "type": "object", + "properties": { + "keyName": { + "type": "string", + "description": "The name of the shared access policy." + }, + "primaryKey": { + "type": "string", + "description": "The primary key." + }, + "rights": { + "oneOf": [ + { + "type": "string", + "enum": [ + "RegistryRead", + "RegistryWrite", + "ServiceConnect", + "DeviceConnect", + "RegistryRead, RegistryWrite", + "RegistryRead, ServiceConnect", + "RegistryRead, DeviceConnect", + "RegistryWrite, ServiceConnect", + "RegistryWrite, DeviceConnect", + "ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect", + "RegistryRead, RegistryWrite, DeviceConnect", + "RegistryRead, ServiceConnect, DeviceConnect", + "RegistryWrite, ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect, DeviceConnect" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The permissions assigned to the shared access policy." + }, + "secondaryKey": { + "type": "string", + "description": "The secondary key." + } + }, + "required": [ + "keyName", + "rights" + ], + "description": "The properties of an IoT hub shared access policy." + }, + "StorageEndpointProperties": { + "type": "object", + "properties": { + "authenticationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "keyBased", + "identityBased" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies authentication type being used for connecting to the storage account." + }, + "connectionString": { + "type": "string", + "description": "The connection string for the Azure Storage account to which files are uploaded." + }, + "containerName": { + "type": "string", + "description": "The name of the root container where you upload files. The container need not exist but should be creatable using the connectionString specified." + }, + "sasTtlAsIso8601": { + "type": "string", + "format": "duration", + "description": "The period of time for which the SAS URI generated by IoT Hub for file upload is valid. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload#file-upload-notification-configuration-options." + } + }, + "required": [ + "connectionString", + "containerName" + ], + "description": "The properties of the Azure Storage endpoint for file upload." + } + } +} \ No newline at end of file diff --git a/schemas/2020-07-10-preview/Microsoft.Devices.json b/schemas/2020-07-10-preview/Microsoft.Devices.json new file mode 100644 index 0000000000..277836e83a --- /dev/null +++ b/schemas/2020-07-10-preview/Microsoft.Devices.json @@ -0,0 +1,1516 @@ +{ + "id": "https://schema.management.azure.com/schemas/2020-07-10-preview/Microsoft.Devices.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.Devices", + "description": "Microsoft Devices Resource Types", + "resourceDefinitions": { + "IotHubs": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-10-preview" + ] + }, + "etag": { + "type": "string", + "description": "The Etag field is *not* required. If it is provided in the response body, it must also be provided as a header per the normal ETag convention." + }, + "location": { + "type": "string", + "description": "The resource location." + }, + "name": { + "type": "string", + "description": "The name of the IoT hub." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/IotHubProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of an IoT hub." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/IotHubs_certificates_childResource" + }, + { + "$ref": "#/definitions/iotHubs_privateEndpointConnections_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/IotHubSkuInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Information about the SKU of the IoT hub." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Devices/IotHubs" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "sku", + "type" + ], + "description": "Microsoft.Devices/IotHubs" + }, + "IotHubs_certificates": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-10-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the certificate" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CertificateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The description of an X509 CA Certificate." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Devices/IotHubs/certificates" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Devices/IotHubs/certificates" + }, + "IotHubs_eventHubEndpoints_ConsumerGroups": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-10-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the consumer group to add." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/EventHubConsumerGroupName" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The EventHub consumer group name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Devices/IotHubs/eventHubEndpoints/ConsumerGroups" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Devices/IotHubs/eventHubEndpoints/ConsumerGroups" + }, + "iotHubs_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-10-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": "The properties of a private endpoint connection" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Devices/iotHubs/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Devices/iotHubs/privateEndpointConnections" + } + }, + "definitions": { + "CertificateProperties": { + "type": "object", + "properties": { + "certificate": { + "type": "string", + "description": "The certificate content" + } + }, + "description": "The description of an X509 CA Certificate." + }, + "CloudToDeviceProperties": { + "type": "object", + "properties": { + "defaultTtlAsIso8601": { + "type": "string", + "format": "duration", + "description": "The default time to live for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages." + }, + "feedback": { + "oneOf": [ + { + "$ref": "#/definitions/FeedbackProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the feedback queue for cloud-to-device messages." + }, + "maxDeliveryCount": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The max delivery count for cloud-to-device messages in the device queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages." + } + }, + "description": "The IoT hub cloud-to-device messaging properties." + }, + "EncryptionPropertiesDescription": { + "type": "object", + "properties": { + "keySource": { + "type": "string", + "description": "The source of the key." + }, + "keyVaultProperties": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/KeyVaultKeyProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the KeyVault key." + } + }, + "description": "The encryption properties for the IoT hub." + }, + "EnrichmentProperties": { + "type": "object", + "properties": { + "endpointNames": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of endpoints for which the enrichment is applied to the message." + }, + "key": { + "type": "string", + "description": "The key or name for the enrichment property." + }, + "value": { + "type": "string", + "description": "The value for the enrichment property." + } + }, + "required": [ + "endpointNames", + "key", + "value" + ], + "description": "The properties of an enrichment that your IoT hub applies to messages delivered to endpoints." + }, + "EventHubConsumerGroupName": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "EventHub consumer group name" + } + }, + "description": "The EventHub consumer group name." + }, + "EventHubProperties": { + "type": "object", + "properties": { + "partitionCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of partitions for receiving device-to-cloud messages in the Event Hub-compatible endpoint. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages." + }, + "retentionTimeInDays": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The retention time for device-to-cloud messages in days. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#device-to-cloud-messages" + } + }, + "description": "The properties of the provisioned Event Hub-compatible endpoint used by the IoT hub." + }, + "FallbackRouteProperties": { + "type": "object", + "properties": { + "condition": { + "type": "string", + "description": "The condition which is evaluated in order to apply the fallback route. If the condition is not provided it will evaluate to true by default. For grammar, See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language" + }, + "endpointNames": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of endpoints to which the messages that satisfy the condition are routed to. Currently only 1 endpoint is allowed." + }, + "isEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Used to specify whether the fallback route is enabled." + }, + "name": { + "type": "string", + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique." + }, + "source": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents", + "DigitalTwinChangeEvents" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The source to which the routing rule is to be applied to. For example, DeviceMessages." + } + }, + "required": [ + "endpointNames", + "isEnabled", + "source" + ], + "description": "The properties of the fallback route. IoT Hub uses these properties when it routes messages to the fallback endpoint." + }, + "FeedbackProperties": { + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "type": "string", + "format": "duration", + "description": "The lock duration for the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages." + }, + "maxDeliveryCount": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of times the IoT hub attempts to deliver a message on the feedback queue. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages." + }, + "ttlAsIso8601": { + "type": "string", + "format": "duration", + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging#cloud-to-device-messages." + } + }, + "description": "The properties of the feedback queue for cloud-to-device messages." + }, + "IotHubProperties": { + "type": "object", + "properties": { + "authorizationPolicies": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/SharedAccessSignatureAuthorizationRule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The shared access policies you can use to secure a connection to the IoT hub." + }, + "cloudToDevice": { + "oneOf": [ + { + "$ref": "#/definitions/CloudToDeviceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The IoT hub cloud-to-device messaging properties." + }, + "comments": { + "type": "string", + "description": "IoT hub comments." + }, + "deviceStreams": { + "oneOf": [ + { + "$ref": "#/definitions/IotHubPropertiesDeviceStreams" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The device streams properties of iothub." + }, + "enableFileUploadNotifications": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If True, file upload notifications are enabled." + }, + "encryption": { + "oneOf": [ + { + "$ref": "#/definitions/EncryptionPropertiesDescription" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The encryption properties for the IoT hub." + }, + "eventHubEndpoints": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/EventHubProperties" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Event Hub-compatible endpoint properties. The only possible keys to this dictionary is events. This key has to be present in the dictionary while making create or update calls for the IoT hub." + }, + "features": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "DeviceManagement" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The capabilities and features enabled for the IoT hub." + }, + "ipFilterRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/IpFilterRule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The IP filter rules." + }, + "messagingEndpoints": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/MessagingEndpointProperties" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The messaging endpoint properties for the file upload notification queue." + }, + "minTlsVersion": { + "type": "string", + "description": "Specifies the minimum TLS version to support for this hub. Can be set to \"1.2\" to have clients that use a TLS version below 1.2 to be rejected." + }, + "privateEndpointConnections": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/PrivateEndpointConnection" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Private endpoint connections created on this IotHub" + }, + "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." + }, + "routing": { + "oneOf": [ + { + "$ref": "#/definitions/RoutingProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The routing related properties of the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging" + }, + "storageEndpoints": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/StorageEndpointProperties" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of Azure Storage endpoints where you can upload files. Currently you can configure only one Azure Storage account and that MUST have its key as $default. Specifying more than one storage account causes an error to be thrown. Not specifying a value for this property when the enableFileUploadNotifications property is set to True, causes an error to be thrown." + } + }, + "description": "The properties of an IoT hub." + }, + "IotHubPropertiesDeviceStreams": { + "type": "object", + "properties": { + "streamingEndpoints": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of Device Streams Endpoints." + } + }, + "description": "The device streams properties of iothub." + }, + "IotHubSkuInfo": { + "type": "object", + "properties": { + "capacity": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of provisioned IoT Hub units. See: https://docs.microsoft.com/azure/azure-subscription-service-limits#iot-hub-limits." + }, + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "F1", + "S1", + "S2", + "S3", + "B1", + "B2", + "B3" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the SKU." + } + }, + "required": [ + "name" + ], + "description": "Information about the SKU of the IoT hub." + }, + "IotHubs_certificates_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-10-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the certificate" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CertificateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The description of an X509 CA Certificate." + }, + "type": { + "type": "string", + "enum": [ + "certificates" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Devices/IotHubs/certificates" + }, + "iotHubs_privateEndpointConnections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-07-10-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": "The properties of a private endpoint connection" + }, + "type": { + "type": "string", + "enum": [ + "privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Devices/iotHubs/privateEndpointConnections" + }, + "IpFilterRule": { + "type": "object", + "properties": { + "action": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Accept", + "Reject" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The desired action for requests captured by this rule." + }, + "filterName": { + "type": "string", + "description": "The name of the IP filter rule." + }, + "ipMask": { + "type": "string", + "description": "A string that contains the IP address range in CIDR notation for the rule." + } + }, + "required": [ + "action", + "filterName", + "ipMask" + ], + "description": "The IP filter rules for the IoT hub." + }, + "KeyVaultKeyProperties": { + "type": "object", + "properties": { + "keyIdentifier": { + "type": "string", + "description": "The identifier of the key." + } + }, + "description": "The properties of the KeyVault key." + }, + "MessagingEndpointProperties": { + "type": "object", + "properties": { + "lockDurationAsIso8601": { + "type": "string", + "format": "duration", + "description": "The lock duration. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload." + }, + "maxDeliveryCount": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of times the IoT hub attempts to deliver a message. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload." + }, + "ttlAsIso8601": { + "type": "string", + "format": "duration", + "description": "The period of time for which a message is available to consume before it is expired by the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload." + } + }, + "description": "The properties of the messaging endpoints used by this IoT hub." + }, + "PrivateEndpoint": { + "type": "object", + "properties": {}, + "description": "The private endpoint property of a private endpoint connection" + }, + "PrivateEndpointConnection": { + "type": "object", + "properties": { + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a private endpoint connection" + } + }, + "required": [ + "properties" + ], + "description": "The private endpoint connection of an IotHub" + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "privateEndpoint": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpoint" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The private endpoint property of a private endpoint connection" + }, + "privateLinkServiceConnectionState": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The current state of a private endpoint connection" + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "The properties of a private endpoint connection" + }, + "PrivateLinkServiceConnectionState": { + "type": "object", + "properties": { + "actionsRequired": { + "type": "string", + "description": "Actions required for a private endpoint connection" + }, + "description": { + "type": "string", + "description": "The description for the current state of a private endpoint connection" + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The status of a private endpoint connection." + } + }, + "required": [ + "description", + "status" + ], + "description": "The current state of a private endpoint connection" + }, + "RouteProperties": { + "type": "object", + "properties": { + "condition": { + "type": "string", + "description": "The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language" + }, + "endpointNames": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of endpoints to which messages that satisfy the condition are routed. Currently only one endpoint is allowed." + }, + "isEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Used to specify whether a route is enabled." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the route. The name can only include alphanumeric characters, periods, underscores, hyphens, has a maximum length of 64 characters, and must be unique." + }, + "source": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "DeviceMessages", + "TwinChangeEvents", + "DeviceLifecycleEvents", + "DeviceJobLifecycleEvents", + "DigitalTwinChangeEvents" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The source that the routing rule is to be applied to, such as DeviceMessages." + } + }, + "required": [ + "endpointNames", + "isEnabled", + "name", + "source" + ], + "description": "The properties of a routing rule that your IoT hub uses to route messages to endpoints." + }, + "RoutingEndpoints": { + "type": "object", + "properties": { + "eventHubs": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/RoutingEventHubProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of Event Hubs endpoints that IoT hub routes messages to, based on the routing rules. This list does not include the built-in Event Hubs endpoint." + }, + "serviceBusQueues": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusQueueEndpointProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of Service Bus queue endpoints that IoT hub routes the messages to, based on the routing rules." + }, + "serviceBusTopics": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/RoutingServiceBusTopicEndpointProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of Service Bus topic endpoints that the IoT hub routes the messages to, based on the routing rules." + }, + "storageContainers": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/RoutingStorageContainerProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of storage container endpoints that IoT hub routes messages to, based on the routing rules." + } + }, + "description": "The properties related to the custom endpoints to which your IoT hub routes messages based on the routing rules. A maximum of 10 custom endpoints are allowed across all endpoint types for paid hubs and only 1 custom endpoint is allowed across all endpoint types for free hubs." + }, + "RoutingEventHubProperties": { + "type": "object", + "properties": { + "authenticationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "keyBased", + "identityBased" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Method used to authenticate against the event hub endpoint." + }, + "connectionString": { + "type": "string", + "description": "The connection string of the event hub endpoint. " + }, + "endpointUri": { + "type": "string", + "description": "The url of the event hub endpoint. It must include the protocol sb://" + }, + "entityPath": { + "type": "string", + "description": "Event hub name on the event hub namespace" + }, + "id": { + "type": "string", + "description": "Id of the event hub endpoint" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types." + }, + "resourceGroup": { + "type": "string", + "description": "The name of the resource group of the event hub endpoint." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription identifier of the event hub endpoint." + } + }, + "required": [ + "name" + ], + "description": "The properties related to an event hub endpoint." + }, + "RoutingProperties": { + "type": "object", + "properties": { + "endpoints": { + "oneOf": [ + { + "$ref": "#/definitions/RoutingEndpoints" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties related to the custom endpoints to which your IoT hub routes messages based on the routing rules. A maximum of 10 custom endpoints are allowed across all endpoint types for paid hubs and only 1 custom endpoint is allowed across all endpoint types for free hubs." + }, + "enrichments": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/EnrichmentProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of user-provided enrichments that the IoT hub applies to messages to be delivered to built-in and custom endpoints. See: https://aka.ms/telemetryoneventgrid" + }, + "fallbackRoute": { + "oneOf": [ + { + "$ref": "#/definitions/FallbackRouteProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the fallback route. IoT Hub uses these properties when it routes messages to the fallback endpoint." + }, + "routes": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/RouteProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of user-provided routing rules that the IoT hub uses to route messages to built-in and custom endpoints. A maximum of 100 routing rules are allowed for paid hubs and a maximum of 5 routing rules are allowed for free hubs." + } + }, + "description": "The routing related properties of the IoT hub. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-messaging" + }, + "RoutingServiceBusQueueEndpointProperties": { + "type": "object", + "properties": { + "authenticationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "keyBased", + "identityBased" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Method used to authenticate against the service bus queue endpoint." + }, + "connectionString": { + "type": "string", + "description": "The connection string of the service bus queue endpoint." + }, + "endpointUri": { + "type": "string", + "description": "The url of the service bus queue endpoint. It must include the protocol sb://" + }, + "entityPath": { + "type": "string", + "description": "Queue name on the service bus namespace" + }, + "id": { + "type": "string", + "description": "Id of the service bus queue endpoint" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual queue name." + }, + "resourceGroup": { + "type": "string", + "description": "The name of the resource group of the service bus queue endpoint." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription identifier of the service bus queue endpoint." + } + }, + "required": [ + "name" + ], + "description": "The properties related to service bus queue endpoint types." + }, + "RoutingServiceBusTopicEndpointProperties": { + "type": "object", + "properties": { + "authenticationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "keyBased", + "identityBased" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Method used to authenticate against the service bus topic endpoint." + }, + "connectionString": { + "type": "string", + "description": "The connection string of the service bus topic endpoint." + }, + "endpointUri": { + "type": "string", + "description": "The url of the service bus topic endpoint. It must include the protocol sb://" + }, + "entityPath": { + "type": "string", + "description": "Queue name on the service bus topic" + }, + "id": { + "type": "string", + "description": "Id of the service bus topic endpoint" + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types. The name need not be the same as the actual topic name." + }, + "resourceGroup": { + "type": "string", + "description": "The name of the resource group of the service bus topic endpoint." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription identifier of the service bus topic endpoint." + } + }, + "required": [ + "name" + ], + "description": "The properties related to service bus topic endpoint types." + }, + "RoutingStorageContainerProperties": { + "type": "object", + "properties": { + "authenticationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "keyBased", + "identityBased" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Method used to authenticate against the storage endpoint." + }, + "batchFrequencyInSeconds": { + "oneOf": [ + { + "type": "integer", + "minimum": 60, + "maximum": 720 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds." + }, + "connectionString": { + "type": "string", + "description": "The connection string of the storage account." + }, + "containerName": { + "type": "string", + "description": "The name of storage container in the storage account." + }, + "encoding": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Avro", + "AvroDeflate", + "JSON" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Encoding that is used to serialize messages to blobs. Supported values are 'avro', 'avrodeflate', and 'JSON'. Default value is 'avro'." + }, + "endpointUri": { + "type": "string", + "description": "The url of the storage endpoint. It must include the protocol https://" + }, + "fileNameFormat": { + "type": "string", + "description": "File name format for the blob. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered." + }, + "id": { + "type": "string", + "description": "Id of the storage container endpoint" + }, + "maxChunkSizeInBytes": { + "oneOf": [ + { + "type": "integer", + "minimum": 10485760, + "maximum": 524288000 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB)." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[A-Za-z0-9-._]{1,64}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name that identifies this endpoint. The name can only include alphanumeric characters, periods, underscores, hyphens and has a maximum length of 64 characters. The following names are reserved: events, fileNotifications, $default. Endpoint names must be unique across endpoint types." + }, + "resourceGroup": { + "type": "string", + "description": "The name of the resource group of the storage account." + }, + "subscriptionId": { + "type": "string", + "description": "The subscription identifier of the storage account." + } + }, + "required": [ + "containerName", + "name" + ], + "description": "The properties related to a storage container endpoint." + }, + "SharedAccessSignatureAuthorizationRule": { + "type": "object", + "properties": { + "keyName": { + "type": "string", + "description": "The name of the shared access policy." + }, + "primaryKey": { + "type": "string", + "description": "The primary key." + }, + "rights": { + "oneOf": [ + { + "type": "string", + "enum": [ + "RegistryRead", + "RegistryWrite", + "ServiceConnect", + "DeviceConnect", + "RegistryRead, RegistryWrite", + "RegistryRead, ServiceConnect", + "RegistryRead, DeviceConnect", + "RegistryWrite, ServiceConnect", + "RegistryWrite, DeviceConnect", + "ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect", + "RegistryRead, RegistryWrite, DeviceConnect", + "RegistryRead, ServiceConnect, DeviceConnect", + "RegistryWrite, ServiceConnect, DeviceConnect", + "RegistryRead, RegistryWrite, ServiceConnect, DeviceConnect" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The permissions assigned to the shared access policy." + }, + "secondaryKey": { + "type": "string", + "description": "The secondary key." + } + }, + "required": [ + "keyName", + "rights" + ], + "description": "The properties of an IoT hub shared access policy." + }, + "StorageEndpointProperties": { + "type": "object", + "properties": { + "authenticationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "keyBased", + "identityBased" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies authentication type being used for connecting to the storage account." + }, + "connectionString": { + "type": "string", + "description": "The connection string for the Azure Storage account to which files are uploaded." + }, + "containerName": { + "type": "string", + "description": "The name of the root container where you upload files. The container need not exist but should be creatable using the connectionString specified." + }, + "sasTtlAsIso8601": { + "type": "string", + "format": "duration", + "description": "The period of time for which the SAS URI generated by IoT Hub for file upload is valid. See: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-file-upload#file-upload-notification-configuration-options." + } + }, + "required": [ + "connectionString", + "containerName" + ], + "description": "The properties of the Azure Storage endpoint for file upload." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 3151d75d35..a115a95644 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -2302,6 +2302,30 @@ { "$ref": "https://schema.management.azure.com/schemas/2020-04-01/Microsoft.Devices.json#/resourceDefinitions/iotHubs_privateEndpointConnections" }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-06-15/Microsoft.Devices.json#/resourceDefinitions/IotHubs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-06-15/Microsoft.Devices.json#/resourceDefinitions/IotHubs_certificates" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-06-15/Microsoft.Devices.json#/resourceDefinitions/IotHubs_eventHubEndpoints_ConsumerGroups" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-06-15/Microsoft.Devices.json#/resourceDefinitions/iotHubs_privateEndpointConnections" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-07-10-preview/Microsoft.Devices.json#/resourceDefinitions/IotHubs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-07-10-preview/Microsoft.Devices.json#/resourceDefinitions/IotHubs_certificates" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-07-10-preview/Microsoft.Devices.json#/resourceDefinitions/IotHubs_eventHubEndpoints_ConsumerGroups" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-07-10-preview/Microsoft.Devices.json#/resourceDefinitions/iotHubs_privateEndpointConnections" + }, { "$ref": "https://schema.management.azure.com/schemas/2017-08-21-preview/Microsoft.Devices.Provisioning.json#/resourceDefinitions/provisioningServices" }, From 079fa4bb1c974b9a7f38d5240451fcf62a7fcd23 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 1 Sep 2020 07:41:57 +0000 Subject: [PATCH 7/9] Update resource list --- generator/resources.json | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index df5faeb28d..eaf2ca715f 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -1516,7 +1516,9 @@ "2019-07-01-preview", "2019-11-04", "2020-03-01", - "2020-04-01" + "2020-04-01", + "2020-06-15", + "2020-07-10-preview" ], "Microsoft.Devices/IotHubs/certificates": [ "2017-07-01", @@ -1528,7 +1530,9 @@ "2019-07-01-preview", "2019-11-04", "2020-03-01", - "2020-04-01" + "2020-04-01", + "2020-06-15", + "2020-07-10-preview" ], "Microsoft.Devices/IotHubs/eventHubEndpoints/ConsumerGroups": [ "2016-02-03", @@ -1542,11 +1546,15 @@ "2019-07-01-preview", "2019-11-04", "2020-03-01", - "2020-04-01" + "2020-04-01", + "2020-06-15", + "2020-07-10-preview" ], "Microsoft.Devices/iotHubs/privateEndpointConnections": [ "2020-03-01", - "2020-04-01" + "2020-04-01", + "2020-06-15", + "2020-07-10-preview" ], "Microsoft.Devices/provisioningServices": [ "2017-08-21-preview", From 11f7d881fe0494310006d894c782e1069d7bd4e8 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 1 Sep 2020 08:13:00 +0000 Subject: [PATCH 8/9] Autogenerate schemas --- schemas/2014-04-01/Microsoft.Sql.json | 35 +- schemas/2015-05-01-preview/Microsoft.Sql.json | 12 +- schemas/2017-03-01-preview/Microsoft.Sql.json | 15 +- schemas/2017-10-01-preview/Microsoft.Sql.json | 13 +- schemas/2018-04-02/Microsoft.StorageSync.json | 18 +- .../subscriptionDeploymentTemplate.json | 6 + schemas/2018-07-01/Microsoft.StorageSync.json | 21 +- schemas/2018-10-01/Microsoft.StorageSync.json | 21 +- schemas/2019-02-01/Microsoft.StorageSync.json | 21 +- schemas/2019-03-01/Microsoft.StorageSync.json | 15 +- schemas/2019-06-01-preview/Microsoft.Sql.json | 19 +- schemas/2019-06-01/Microsoft.StorageSync.json | 15 +- .../Microsoft.Capacity.json | 305 +++++++++ .../2019-08-01/tenantDeploymentTemplate.json | 3 + schemas/2019-10-01/Microsoft.StorageSync.json | 15 +- schemas/2020-02-02-preview/Microsoft.Sql.json | 584 ++++++++++++++++++ .../2020-04-01-preview/Microsoft.Synapse.json | 8 +- .../2020-09-01/Microsoft.Subscription.json | 88 +++ schemas/common/autogeneratedResources.json | 9 + 19 files changed, 1096 insertions(+), 127 deletions(-) create mode 100644 schemas/2019-07-19-preview/Microsoft.Capacity.json create mode 100644 schemas/2020-09-01/Microsoft.Subscription.json diff --git a/schemas/2014-04-01/Microsoft.Sql.json b/schemas/2014-04-01/Microsoft.Sql.json index 046df89586..ffec89f5ec 100644 --- a/schemas/2014-04-01/Microsoft.Sql.json +++ b/schemas/2014-04-01/Microsoft.Sql.json @@ -24,7 +24,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ServerPropertiesModel" + "$ref": "#/definitions/ServerProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -160,7 +160,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/AdvisorPropertiesModel" + "$ref": "#/definitions/AdvisorProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -422,7 +422,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/AdvisorPropertiesModel" + "$ref": "#/definitions/AdvisorProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -874,7 +874,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ElasticPoolPropertiesModel" + "$ref": "#/definitions/ElasticPoolProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -954,7 +954,7 @@ } }, "definitions": { - "AdvisorPropertiesModel": { + "AdvisorProperties": { "type": "object", "properties": { "autoExecuteValue": { @@ -1032,10 +1032,7 @@ "PointInTimeRestore", "Recovery", "Restore", - "RestoreLongTermRetentionBackup", - "Secondary", - "RestoreExternalBackup", - "RestoreExternalBackupSecondary" + "RestoreLongTermRetentionBackup" ] }, { @@ -1191,16 +1188,14 @@ "restorePointInTime": { "type": "string", "format": "date-time", - "description": "Specifies the point in time (ISO8601 format) of the source database that will be restored to create the new database." + "description": "Conditional. If createMode is PointInTimeRestore, this value is required. If createMode is Restore, this value is optional. Specifies the point in time (ISO8601 format) of the source database that will be restored to create the new database. Must be greater than or equal to the source database's earliestRestoreDate value." }, "sampleName": { "oneOf": [ { "type": "string", "enum": [ - "AdventureWorksLT", - "WideWorldImportersStd", - "WideWorldImportersFull" + "AdventureWorksLT" ] }, { @@ -1212,11 +1207,11 @@ "sourceDatabaseDeletionDate": { "type": "string", "format": "date-time", - "description": "Specifies the time that the database was deleted." + "description": "Conditional. If createMode is Restore and sourceDatabaseId is the deleted database's original resource id when it existed (as opposed to its current restorable dropped database id), then this value is required. Specifies the time that the database was deleted." }, "sourceDatabaseId": { "type": "string", - "description": "The resource identifier of the source database associated with create operation of this database." + "description": "Conditional. If createMode is Copy, NonReadableSecondary, OnlineSecondary, PointInTimeRestore, Recovery, or Restore, then this value is required. Specifies the resource ID of the source database. If createMode is NonReadableSecondary or OnlineSecondary, the name of the source database must be the same as the new database being created." }, "zoneRedundant": { "oneOf": [ @@ -1486,7 +1481,7 @@ ], "description": "The properties of a database data masking rule." }, - "ElasticPoolPropertiesModel": { + "ElasticPoolProperties": { "type": "object", "properties": { "databaseDtuMax": { @@ -1773,7 +1768,7 @@ ], "description": "The properties of a server secure connection policy." }, - "ServerPropertiesModel": { + "ServerProperties": { "type": "object", "properties": { "administratorLogin": { @@ -1860,7 +1855,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/AdvisorPropertiesModel" + "$ref": "#/definitions/AdvisorProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -2022,7 +2017,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/AdvisorPropertiesModel" + "$ref": "#/definitions/AdvisorProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -2488,7 +2483,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ElasticPoolPropertiesModel" + "$ref": "#/definitions/ElasticPoolProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" diff --git a/schemas/2015-05-01-preview/Microsoft.Sql.json b/schemas/2015-05-01-preview/Microsoft.Sql.json index b0d4ffc0d7..b8e76f058b 100644 --- a/schemas/2015-05-01-preview/Microsoft.Sql.json +++ b/schemas/2015-05-01-preview/Microsoft.Sql.json @@ -243,7 +243,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/SyncGroupPropertiesModel" + "$ref": "#/definitions/SyncGroupProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -292,7 +292,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/SyncMemberPropertiesModel" + "$ref": "#/definitions/SyncMemberProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -824,7 +824,7 @@ ], "description": "Read-write endpoint of the failover group instance." }, - "FirewallRuleModel": { + "FirewallRule": { "type": "object", "properties": { "name": { @@ -1093,7 +1093,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/SyncMemberPropertiesModel" + "$ref": "#/definitions/SyncMemberProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -1418,7 +1418,7 @@ }, "description": "Properties of an Azure SQL Database sync agent." }, - "SyncGroupPropertiesModel": { + "SyncGroupProperties": { "type": "object", "properties": { "conflictResolutionPolicy": { @@ -1539,7 +1539,7 @@ }, "description": "Properties of column in sync group table." }, - "SyncMemberPropertiesModel": { + "SyncMemberProperties": { "type": "object", "properties": { "databaseName": { diff --git a/schemas/2017-03-01-preview/Microsoft.Sql.json b/schemas/2017-03-01-preview/Microsoft.Sql.json index 19b22c572d..4c10346eba 100644 --- a/schemas/2017-03-01-preview/Microsoft.Sql.json +++ b/schemas/2017-03-01-preview/Microsoft.Sql.json @@ -378,7 +378,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/DatabasePropertiesModel" + "$ref": "#/definitions/DatabaseProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -1247,7 +1247,7 @@ ], "description": "Properties of a database blob auditing policy." }, - "DatabasePropertiesModel": { + "DatabaseProperties": { "type": "object", "properties": { "catalogCollation": { @@ -1274,17 +1274,16 @@ { "type": "string", "enum": [ - "Copy", "Default", - "NonReadableSecondary", + "Copy", + "Secondary", "OnlineSecondary", "PointInTimeRestore", - "Recovery", "Restore", - "RestoreLongTermRetentionBackup", - "Secondary", + "Recovery", "RestoreExternalBackup", - "RestoreExternalBackupSecondary" + "RestoreExternalBackupSecondary", + "RestoreLongTermRetentionBackup" ] }, { diff --git a/schemas/2017-10-01-preview/Microsoft.Sql.json b/schemas/2017-10-01-preview/Microsoft.Sql.json index 86f5bf98f7..e48b3afc45 100644 --- a/schemas/2017-10-01-preview/Microsoft.Sql.json +++ b/schemas/2017-10-01-preview/Microsoft.Sql.json @@ -480,17 +480,16 @@ { "type": "string", "enum": [ - "Copy", "Default", - "NonReadableSecondary", - "OnlineSecondary", + "Copy", + "Secondary", "PointInTimeRestore", - "Recovery", "Restore", - "RestoreLongTermRetentionBackup", - "Secondary", + "Recovery", "RestoreExternalBackup", - "RestoreExternalBackupSecondary" + "RestoreExternalBackupSecondary", + "RestoreLongTermRetentionBackup", + "OnlineSecondary" ] }, { diff --git a/schemas/2018-04-02/Microsoft.StorageSync.json b/schemas/2018-04-02/Microsoft.StorageSync.json index 0592e85bb3..545a1e6cbd 100644 --- a/schemas/2018-04-02/Microsoft.StorageSync.json +++ b/schemas/2018-04-02/Microsoft.StorageSync.json @@ -89,7 +89,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "RegisteredServer Create Properties object." + "description": "RegisteredServer Properties object." }, "tags": { "oneOf": [ @@ -206,7 +206,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/CloudEndpointCreateParametersPropertiesModelModel" + "$ref": "#/definitions/CloudEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -264,7 +264,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ServerEndpointCreateParametersPropertiesModelModelModel" + "$ref": "#/definitions/ServerEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -304,7 +304,7 @@ } }, "definitions": { - "CloudEndpointCreateParametersPropertiesModelModel": { + "CloudEndpointCreateParametersProperties": { "type": "object", "properties": { "storageAccountResourceId": { @@ -362,9 +362,9 @@ "description": "Registered Server serverRole" } }, - "description": "RegisteredServer Create Properties object." + "description": "RegisteredServer Properties object." }, - "ServerEndpointCreateParametersPropertiesModelModelModel": { + "ServerEndpointCreateParametersProperties": { "type": "object", "properties": { "cloudTiering": { @@ -436,7 +436,7 @@ "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "RegisteredServer Create Properties object." + "description": "RegisteredServer Properties object." }, "tags": { "oneOf": [ @@ -540,7 +540,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/CloudEndpointCreateParametersPropertiesModelModel" + "$ref": "#/definitions/CloudEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -598,7 +598,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ServerEndpointCreateParametersPropertiesModelModelModel" + "$ref": "#/definitions/ServerEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" diff --git a/schemas/2018-05-01/subscriptionDeploymentTemplate.json b/schemas/2018-05-01/subscriptionDeploymentTemplate.json index 2cdb01a912..a3e7852287 100644 --- a/schemas/2018-05-01/subscriptionDeploymentTemplate.json +++ b/schemas/2018-05-01/subscriptionDeploymentTemplate.json @@ -133,6 +133,12 @@ { "$ref": "https://schema.management.azure.com/schemas/2018-11-01-preview/Microsoft.Blueprint.json#/unknown_resourceDefinitions/blueprints_versions" }, + { + "$ref": "https://schema.management.azure.com/schemas/2019-07-19-preview/Microsoft.Capacity.json#/subscription_resourceDefinitions/autoQuotaIncrease" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2019-07-19-preview/Microsoft.Capacity.json#/subscription_resourceDefinitions/resourceProviders_locations_serviceLimits" + }, { "$ref": "https://schema.management.azure.com/schemas/2020-04-01-preview/Microsoft.ChangeAnalysis.json#/subscription_resourceDefinitions/profile" }, diff --git a/schemas/2018-07-01/Microsoft.StorageSync.json b/schemas/2018-07-01/Microsoft.StorageSync.json index 71e2df5776..5ce33e714c 100644 --- a/schemas/2018-07-01/Microsoft.StorageSync.json +++ b/schemas/2018-07-01/Microsoft.StorageSync.json @@ -90,8 +90,7 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "RegisteredServer Create Properties object." + ] }, "type": { "type": "string", @@ -170,7 +169,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/CloudEndpointCreateParametersPropertiesModelModel" + "$ref": "#/definitions/CloudEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -209,7 +208,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ServerEndpointCreateParametersPropertiesModelModel" + "$ref": "#/definitions/ServerEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -234,7 +233,7 @@ } }, "definitions": { - "CloudEndpointCreateParametersPropertiesModelModel": { + "CloudEndpointCreateParametersProperties": { "type": "object", "properties": { "storageAccountResourceId": { @@ -291,10 +290,9 @@ "type": "string", "description": "Registered Server serverRole" } - }, - "description": "RegisteredServer Create Properties object." + } }, - "ServerEndpointCreateParametersPropertiesModelModel": { + "ServerEndpointCreateParametersProperties": { "type": "object", "properties": { "cloudTiering": { @@ -374,8 +372,7 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "RegisteredServer Create Properties object." + ] }, "type": { "type": "string", @@ -441,7 +438,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/CloudEndpointCreateParametersPropertiesModelModel" + "$ref": "#/definitions/CloudEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -480,7 +477,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ServerEndpointCreateParametersPropertiesModelModel" + "$ref": "#/definitions/ServerEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" diff --git a/schemas/2018-10-01/Microsoft.StorageSync.json b/schemas/2018-10-01/Microsoft.StorageSync.json index 784821a0c0..662ff35284 100644 --- a/schemas/2018-10-01/Microsoft.StorageSync.json +++ b/schemas/2018-10-01/Microsoft.StorageSync.json @@ -90,8 +90,7 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "RegisteredServer Create Properties object." + ] }, "type": { "type": "string", @@ -170,7 +169,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/CloudEndpointCreateParametersPropertiesModelModel" + "$ref": "#/definitions/CloudEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -209,7 +208,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ServerEndpointCreateParametersPropertiesModel" + "$ref": "#/definitions/ServerEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -234,7 +233,7 @@ } }, "definitions": { - "CloudEndpointCreateParametersPropertiesModelModel": { + "CloudEndpointCreateParametersProperties": { "type": "object", "properties": { "storageAccountResourceId": { @@ -291,10 +290,9 @@ "type": "string", "description": "Registered Server serverRole" } - }, - "description": "RegisteredServer Create Properties object." + } }, - "ServerEndpointCreateParametersPropertiesModel": { + "ServerEndpointCreateParametersProperties": { "type": "object", "properties": { "cloudTiering": { @@ -393,8 +391,7 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "RegisteredServer Create Properties object." + ] }, "type": { "type": "string", @@ -460,7 +457,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/CloudEndpointCreateParametersPropertiesModelModel" + "$ref": "#/definitions/CloudEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -499,7 +496,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ServerEndpointCreateParametersPropertiesModel" + "$ref": "#/definitions/ServerEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" diff --git a/schemas/2019-02-01/Microsoft.StorageSync.json b/schemas/2019-02-01/Microsoft.StorageSync.json index c1f8321f57..d5fd708ea4 100644 --- a/schemas/2019-02-01/Microsoft.StorageSync.json +++ b/schemas/2019-02-01/Microsoft.StorageSync.json @@ -90,8 +90,7 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "RegisteredServer Create Properties object." + ] }, "type": { "type": "string", @@ -170,7 +169,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/CloudEndpointCreateParametersPropertiesModel" + "$ref": "#/definitions/CloudEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -209,7 +208,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ServerEndpointCreateParametersPropertiesModel" + "$ref": "#/definitions/ServerEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -234,7 +233,7 @@ } }, "definitions": { - "CloudEndpointCreateParametersPropertiesModel": { + "CloudEndpointCreateParametersProperties": { "type": "object", "properties": { "azureFileShareName": { @@ -291,10 +290,9 @@ "type": "string", "description": "Registered Server serverRole" } - }, - "description": "RegisteredServer Create Properties object." + } }, - "ServerEndpointCreateParametersPropertiesModel": { + "ServerEndpointCreateParametersProperties": { "type": "object", "properties": { "cloudTiering": { @@ -393,8 +391,7 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "RegisteredServer Create Properties object." + ] }, "type": { "type": "string", @@ -460,7 +457,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/CloudEndpointCreateParametersPropertiesModel" + "$ref": "#/definitions/CloudEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -499,7 +496,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ServerEndpointCreateParametersPropertiesModel" + "$ref": "#/definitions/ServerEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" diff --git a/schemas/2019-03-01/Microsoft.StorageSync.json b/schemas/2019-03-01/Microsoft.StorageSync.json index fe426e19a7..49a55e3898 100644 --- a/schemas/2019-03-01/Microsoft.StorageSync.json +++ b/schemas/2019-03-01/Microsoft.StorageSync.json @@ -90,8 +90,7 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "RegisteredServer Create Properties object." + ] }, "type": { "type": "string", @@ -209,7 +208,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ServerEndpointCreateParametersPropertiesModel" + "$ref": "#/definitions/ServerEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -295,10 +294,9 @@ "type": "string", "description": "Registered Server serverRole" } - }, - "description": "RegisteredServer Create Properties object." + } }, - "ServerEndpointCreateParametersPropertiesModel": { + "ServerEndpointCreateParametersProperties": { "type": "object", "properties": { "cloudTiering": { @@ -397,8 +395,7 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "RegisteredServer Create Properties object." + ] }, "type": { "type": "string", @@ -503,7 +500,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ServerEndpointCreateParametersPropertiesModel" + "$ref": "#/definitions/ServerEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" diff --git a/schemas/2019-06-01-preview/Microsoft.Sql.json b/schemas/2019-06-01-preview/Microsoft.Sql.json index 6fd77337fe..20e055e042 100644 --- a/schemas/2019-06-01-preview/Microsoft.Sql.json +++ b/schemas/2019-06-01-preview/Microsoft.Sql.json @@ -213,7 +213,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/DatabasePropertiesModel" + "$ref": "#/definitions/DatabaseProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -507,7 +507,7 @@ ], "description": "Properties of a active directory administrator." }, - "DatabasePropertiesModel": { + "DatabaseProperties": { "type": "object", "properties": { "autoPauseDelay": { @@ -545,17 +545,16 @@ { "type": "string", "enum": [ - "Copy", "Default", - "NonReadableSecondary", - "OnlineSecondary", + "Copy", + "Secondary", "PointInTimeRestore", - "Recovery", "Restore", - "RestoreLongTermRetentionBackup", - "Secondary", + "Recovery", "RestoreExternalBackup", - "RestoreExternalBackupSecondary" + "RestoreExternalBackupSecondary", + "RestoreLongTermRetentionBackup", + "OnlineSecondary" ] }, { @@ -898,7 +897,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/DatabasePropertiesModel" + "$ref": "#/definitions/DatabaseProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" diff --git a/schemas/2019-06-01/Microsoft.StorageSync.json b/schemas/2019-06-01/Microsoft.StorageSync.json index 26676a31bc..46977b01c9 100644 --- a/schemas/2019-06-01/Microsoft.StorageSync.json +++ b/schemas/2019-06-01/Microsoft.StorageSync.json @@ -90,8 +90,7 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "RegisteredServer Create Properties object." + ] }, "type": { "type": "string", @@ -209,7 +208,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ServerEndpointCreateParametersPropertiesModel" + "$ref": "#/definitions/ServerEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -295,10 +294,9 @@ "type": "string", "description": "Registered Server serverRole" } - }, - "description": "RegisteredServer Create Properties object." + } }, - "ServerEndpointCreateParametersPropertiesModel": { + "ServerEndpointCreateParametersProperties": { "type": "object", "properties": { "cloudTiering": { @@ -397,8 +395,7 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "RegisteredServer Create Properties object." + ] }, "type": { "type": "string", @@ -503,7 +500,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ServerEndpointCreateParametersPropertiesModel" + "$ref": "#/definitions/ServerEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" diff --git a/schemas/2019-07-19-preview/Microsoft.Capacity.json b/schemas/2019-07-19-preview/Microsoft.Capacity.json new file mode 100644 index 0000000000..34c853eab9 --- /dev/null +++ b/schemas/2019-07-19-preview/Microsoft.Capacity.json @@ -0,0 +1,305 @@ +{ + "id": "https://schema.management.azure.com/schemas/2019-07-19-preview/Microsoft.Capacity.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.Capacity", + "description": "Microsoft Capacity Resource Types", + "resourceDefinitions": {}, + "subscription_resourceDefinitions": { + "autoQuotaIncrease": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2019-07-19-preview" + ] + }, + "name": { + "type": "string", + "enum": [ + "autoQuotaIncrease" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AutoQuotaIncreaseSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Actions for auto quota increase." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Capacity/autoQuotaIncrease" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Capacity/autoQuotaIncrease" + }, + "resourceProviders_locations_serviceLimits": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2019-07-19-preview" + ] + }, + "name": { + "type": "string", + "description": "The resource name for a resource provider, such as SKU name for Microsoft.Compute, Sku or TotalLowPriorityCores for Microsoft.MachineLearningServices" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/QuotaProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Quota properties for the resource." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Capacity/resourceProviders/locations/serviceLimits" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Capacity/resourceProviders/locations/serviceLimits" + } + }, + "definitions": { + "Actions": { + "type": "object", + "properties": { + "emailActions": { + "oneOf": [ + { + "$ref": "#/definitions/EmailActions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The email actions." + } + }, + "description": "The actions for auto quota increase." + }, + "AqiSettings": { + "type": "object", + "properties": { + "autoQuotaIncreaseState": { + "type": "object", + "properties": {}, + "description": "If the subscription has enabled automatic quota increase." + } + }, + "description": "Settings for auto quota increase." + }, + "AutoQuotaIncreaseSettings": { + "type": "object", + "properties": { + "onFailure": { + "oneOf": [ + { + "$ref": "#/definitions/Actions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The actions for auto quota increase." + }, + "onSuccess": { + "oneOf": [ + { + "$ref": "#/definitions/Actions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The actions for auto quota increase." + }, + "settings": { + "oneOf": [ + { + "$ref": "#/definitions/AqiSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Settings for auto quota increase." + }, + "supportTicketAction": { + "oneOf": [ + { + "$ref": "#/definitions/SupportRequestAction" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The SupportRequest action." + } + }, + "description": "Actions for auto quota increase." + }, + "EmailAction": { + "type": "object", + "properties": { + "emailAddress": { + "type": "string", + "description": "The email address for the action." + } + }, + "description": "Email Action." + }, + "EmailActions": { + "type": "object", + "properties": { + "emailAddresses": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/EmailAction" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of email actions." + } + }, + "description": "The email actions." + }, + "QuotaProperties": { + "type": "object", + "properties": { + "limit": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The quota limit." + }, + "name": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceName" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Name of the resource provide by the resource Provider. Please use this name property for quotaRequests." + }, + "properties": { + "type": "object", + "properties": {}, + "description": "Additional properties for the specific resource provider." + }, + "resourceType": { + "type": "object", + "properties": {}, + "description": "The Resource Type Name." + }, + "unit": { + "type": "string", + "description": " The units of the limit, such as - Count, Bytes, etc. Use the unit field provided in the Get quota response." + } + }, + "description": "Quota properties for the resource." + }, + "ResourceName": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "Resource name." + } + }, + "description": "Name of the resource provide by the resource Provider. Please use this name property for quotaRequests." + }, + "SupportRequestAction": { + "type": "object", + "properties": { + "alternateEmailAddresses": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The alternate email address of the recipient." + }, + "country": { + "type": "string", + "description": "The country of the recipient." + }, + "firstName": { + "type": "string", + "description": "The first name of the recipient." + }, + "lastName": { + "type": "string", + "description": "The last name of the recipient." + }, + "phoneNumber": { + "type": "string", + "description": "The phone number of the recipient." + }, + "preferredContactMethod": { + "type": "object", + "properties": {}, + "description": "The preferred communication channel." + }, + "primaryEmailAddress": { + "type": "string", + "description": "The primary email addresses of the recipients." + }, + "severity": { + "type": "object", + "properties": {}, + "description": "The support request severity." + }, + "supportLanguage": { + "type": "string", + "description": "The support language." + } + }, + "description": "The SupportRequest action." + } + } +} \ No newline at end of file diff --git a/schemas/2019-08-01/tenantDeploymentTemplate.json b/schemas/2019-08-01/tenantDeploymentTemplate.json index 595a3cc6a6..a4f9391da0 100644 --- a/schemas/2019-08-01/tenantDeploymentTemplate.json +++ b/schemas/2019-08-01/tenantDeploymentTemplate.json @@ -245,6 +245,9 @@ }, { "$ref": "https://schema.management.azure.com/schemas/2019-10-01-preview/Microsoft.Subscription.json#/tenant_resourceDefinitions/aliases" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-09-01/Microsoft.Subscription.json#/tenant_resourceDefinitions/aliases" } ] } diff --git a/schemas/2019-10-01/Microsoft.StorageSync.json b/schemas/2019-10-01/Microsoft.StorageSync.json index e085a4141e..8ddb067faf 100644 --- a/schemas/2019-10-01/Microsoft.StorageSync.json +++ b/schemas/2019-10-01/Microsoft.StorageSync.json @@ -90,8 +90,7 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "RegisteredServer Create Properties object." + ] }, "type": { "type": "string", @@ -209,7 +208,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ServerEndpointCreateParametersPropertiesModel" + "$ref": "#/definitions/ServerEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -295,10 +294,9 @@ "type": "string", "description": "Registered Server serverRole" } - }, - "description": "RegisteredServer Create Properties object." + } }, - "ServerEndpointCreateParametersPropertiesModel": { + "ServerEndpointCreateParametersProperties": { "type": "object", "properties": { "cloudTiering": { @@ -397,8 +395,7 @@ { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } - ], - "description": "RegisteredServer Create Properties object." + ] }, "type": { "type": "string", @@ -503,7 +500,7 @@ "properties": { "oneOf": [ { - "$ref": "#/definitions/ServerEndpointCreateParametersPropertiesModel" + "$ref": "#/definitions/ServerEndpointCreateParametersProperties" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" diff --git a/schemas/2020-02-02-preview/Microsoft.Sql.json b/schemas/2020-02-02-preview/Microsoft.Sql.json index 99d4ec337b..ba8107539c 100644 --- a/schemas/2020-02-02-preview/Microsoft.Sql.json +++ b/schemas/2020-02-02-preview/Microsoft.Sql.json @@ -4,6 +4,150 @@ "title": "Microsoft.Sql", "description": "Microsoft Sql Resource Types", "resourceDefinitions": { + "managedInstances": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-02-02-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Active Directory identity configuration for a resource." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "The name of the managed instance." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedInstanceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of a managed instance." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/managedInstances_databases_childResource" + }, + { + "$ref": "#/definitions/managedInstances_azureADOnlyAuthentications_childResource" + }, + { + "$ref": "#/definitions/managedInstances_securityAlertPolicies_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/Sku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "An ARM Resource SKU." + }, + "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.Sql/managedInstances" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.Sql/managedInstances" + }, + "managedInstances_azureADOnlyAuthentications": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-02-02-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/Default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of server azure active directory only authentication." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedInstanceAzureADOnlyAuthProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a active directory only authentication for Managed Instance." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Sql/managedInstances/azureADOnlyAuthentications" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Sql/managedInstances/azureADOnlyAuthentications" + }, "managedInstances_databases": { "type": "object", "properties": { @@ -157,6 +301,53 @@ ], "description": "Microsoft.Sql/servers/azureADOnlyAuthentications" }, + "servers_databases_backupShortTermRetentionPolicies": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-02-02-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The policy name. Should always be \"default\"." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BackupShortTermRetentionPolicyProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a short term retention policy" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Sql/servers/databases/backupShortTermRetentionPolicies" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Sql/servers/databases/backupShortTermRetentionPolicies" + }, "servers_databases_securityAlertPolicies": { "type": "object", "properties": { @@ -273,6 +464,34 @@ ], "description": "Properties of a active directory only authentication." }, + "BackupShortTermRetentionPolicyProperties": { + "type": "object", + "properties": { + "diffBackupIntervalInHours": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The differential backup interval in hours. This is how many interval hours between each differential backup will be supported. This is only applicable to live databases but not dropped databases." + }, + "retentionDays": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The backup retention period in days. This is how many days Point-in-Time Restore will be supported." + } + }, + "description": "Properties of a short term retention policy" + }, "ManagedDatabaseProperties": { "type": "object", "properties": { @@ -360,6 +579,335 @@ }, "description": "The managed database's properties." }, + "ManagedInstanceAzureADOnlyAuthProperties": { + "type": "object", + "properties": { + "azureADOnlyAuthentication": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Active Directory only Authentication enabled." + } + }, + "required": [ + "azureADOnlyAuthentication" + ], + "description": "Properties of a active directory only authentication for Managed Instance." + }, + "ManagedInstanceProperties": { + "type": "object", + "properties": { + "administratorLogin": { + "type": "string", + "description": "Administrator username for the managed instance. Can only be specified when the managed instance is being created (and is required for creation)." + }, + "administratorLoginPassword": { + "type": "string", + "description": "The administrator login password (required for managed instance creation)." + }, + "collation": { + "type": "string", + "description": "Collation of the managed instance." + }, + "dnsZonePartner": { + "type": "string", + "description": "The resource id of another managed instance whose DNS zone this managed instance will share after creation." + }, + "instancePoolId": { + "type": "string", + "description": "The Id of the instance pool this managed server belongs to." + }, + "licenseType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "LicenseIncluded", + "BasePrice" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The license type. Possible values are 'LicenseIncluded' (regular price inclusive of a new SQL license) and 'BasePrice' (discounted AHB price for bringing your own SQL licenses)." + }, + "maintenanceConfigurationId": { + "type": "string", + "description": "Specifies maintenance configuration id to apply to this managed instance." + }, + "managedInstanceCreateMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Default", + "PointInTimeRestore" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the mode of database creation.\r\n\r\nDefault: Regular instance creation.\r\n\r\nRestore: Creates an instance by restoring a set of backups to specific point in time. RestorePointInTime and SourceManagedInstanceId must be specified." + }, + "minimalTlsVersion": { + "type": "string", + "description": "Minimal TLS version. Allowed values: 'None', '1.0', '1.1', '1.2'" + }, + "proxyOverride": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Proxy", + "Redirect", + "Default" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Connection type used for connecting to the instance." + }, + "publicDataEndpointEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether or not the public data endpoint is enabled." + }, + "restorePointInTime": { + "type": "string", + "format": "date-time", + "description": "Specifies the point in time (ISO8601 format) of the source database that will be restored to create the new database." + }, + "sourceManagedInstanceId": { + "type": "string", + "description": "The resource identifier of the source managed instance associated with create operation of this instance." + }, + "storageAccountType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "GRS", + "LRS", + "ZRS" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The storage account type used to store backups for this instance. The options are LRS (LocallyRedundantStorage), ZRS (ZoneRedundantStorage) and GRS (GeoRedundantStorage)." + }, + "storageSizeInGB": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Storage size in GB. Minimum value: 32. Maximum value: 8192. Increments of 32 GB allowed only." + }, + "subnetId": { + "type": "string", + "description": "Subnet resource ID for the managed instance." + }, + "timezoneId": { + "type": "string", + "description": "Id of the timezone. Allowed values are timezones supported by Windows.\r\nWindows keeps details on supported timezones, including the id, in registry under\r\nKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Time Zones.\r\nYou can get those registry values via SQL Server by querying SELECT name AS timezone_id FROM sys.time_zone_info.\r\nList of Ids can also be obtained by executing [System.TimeZoneInfo]::GetSystemTimeZones() in PowerShell.\r\nAn example of valid timezone id is \"Pacific Standard Time\" or \"W. Europe Standard Time\"." + }, + "vCores": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of vCores. Allowed values: 8, 16, 24, 32, 40, 64, 80." + } + }, + "description": "The properties of a managed instance." + }, + "managedInstances_azureADOnlyAuthentications_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-02-02-preview" + ] + }, + "name": { + "type": "string", + "enum": [ + "Default" + ], + "description": "The name of server azure active directory only authentication." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedInstanceAzureADOnlyAuthProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a active directory only authentication for Managed Instance." + }, + "type": { + "type": "string", + "enum": [ + "azureADOnlyAuthentications" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Sql/managedInstances/azureADOnlyAuthentications" + }, + "managedInstances_databases_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-02-02-preview" + ] + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "The name of the database." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedDatabaseProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The managed database's 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": [ + "databases" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.Sql/managedInstances/databases" + }, + "managedInstances_securityAlertPolicies_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-02-02-preview" + ] + }, + "name": { + "type": "string", + "enum": [ + "default" + ], + "description": "The name of the security alert policy." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SecurityAlertsPolicyProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a security alert policy." + }, + "type": { + "type": "string", + "enum": [ + "securityAlertPolicies" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Sql/managedInstances/securityAlertPolicies" + }, + "ResourceIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SystemAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The identity type. Set this to 'SystemAssigned' in order to automatically create and assign an Azure Active Directory principal for the resource." + } + }, + "description": "Azure Active Directory identity configuration for a resource." + }, "SecurityAlertsPolicyProperties": { "type": "object", "properties": { @@ -383,6 +931,42 @@ "state" ], "description": "Properties of a security alert policy." + }, + "Sku": { + "type": "object", + "properties": { + "capacity": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Capacity of the particular SKU." + }, + "family": { + "type": "string", + "description": "If the service has different generations of hardware, for the same SKU, then that can be captured here." + }, + "name": { + "type": "string", + "description": "The name of the SKU, typically, a letter + Number code, e.g. P3." + }, + "size": { + "type": "string", + "description": "Size of the particular SKU" + }, + "tier": { + "type": "string", + "description": "The tier or edition of the particular SKU, e.g. Basic, Premium." + } + }, + "required": [ + "name" + ], + "description": "An ARM Resource SKU." } } } \ No newline at end of file diff --git a/schemas/2020-04-01-preview/Microsoft.Synapse.json b/schemas/2020-04-01-preview/Microsoft.Synapse.json index 86b40c6189..ca0f96833e 100644 --- a/schemas/2020-04-01-preview/Microsoft.Synapse.json +++ b/schemas/2020-04-01-preview/Microsoft.Synapse.json @@ -94,7 +94,7 @@ "sku": { "oneOf": [ { - "$ref": "#/definitions/SkuModel" + "$ref": "#/definitions/Sku" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -135,16 +135,16 @@ } }, "definitions": { - "SkuModel": { + "Sku": { "type": "object", "properties": { "name": { "type": "string", - "description": "The SKU name" + "description": "The name of the SKU, typically, a letter + Number code, e.g. P3." }, "tier": { "type": "string", - "description": "The service tier" + "description": "The tier or edition of the particular SKU, e.g. Basic, Premium." } }, "required": [ diff --git a/schemas/2020-09-01/Microsoft.Subscription.json b/schemas/2020-09-01/Microsoft.Subscription.json new file mode 100644 index 0000000000..a1eb1eb32b --- /dev/null +++ b/schemas/2020-09-01/Microsoft.Subscription.json @@ -0,0 +1,88 @@ +{ + "id": "https://schema.management.azure.com/schemas/2020-09-01/Microsoft.Subscription.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.Subscription", + "description": "Microsoft Subscription Resource Types", + "resourceDefinitions": {}, + "tenant_resourceDefinitions": { + "aliases": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-09-01" + ] + }, + "name": { + "type": "string", + "description": "Alias Name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PutAliasRequestProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Put subscription properties." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Subscription/aliases" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Subscription/aliases" + } + }, + "definitions": { + "PutAliasRequestProperties": { + "type": "object", + "properties": { + "billingScope": { + "type": "string", + "description": "Determines whether subscription is fieldLed, partnerLed or LegacyEA" + }, + "displayName": { + "type": "string", + "description": "The friendly name of the subscription." + }, + "subscriptionId": { + "type": "string", + "description": "This parameter can be used to create alias for existing subscription Id" + }, + "workload": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Production", + "DevTest" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The workload type of the subscription. It can be either Production or DevTest." + } + }, + "required": [ + "billingScope", + "displayName", + "workload" + ], + "description": "Put subscription properties." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index a115a95644..ac6fd591b1 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -4594,6 +4594,12 @@ { "$ref": "https://schema.management.azure.com/schemas/2019-06-01-preview/Microsoft.Sql.json#/resourceDefinitions/servers_databases_workloadGroups_workloadClassifiers" }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-02-02-preview/Microsoft.Sql.json#/resourceDefinitions/managedInstances" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-02-02-preview/Microsoft.Sql.json#/resourceDefinitions/managedInstances_azureADOnlyAuthentications" + }, { "$ref": "https://schema.management.azure.com/schemas/2020-02-02-preview/Microsoft.Sql.json#/resourceDefinitions/managedInstances_databases" }, @@ -4603,6 +4609,9 @@ { "$ref": "https://schema.management.azure.com/schemas/2020-02-02-preview/Microsoft.Sql.json#/resourceDefinitions/servers_azureADOnlyAuthentications" }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-02-02-preview/Microsoft.Sql.json#/resourceDefinitions/servers_databases_backupShortTermRetentionPolicies" + }, { "$ref": "https://schema.management.azure.com/schemas/2020-02-02-preview/Microsoft.Sql.json#/resourceDefinitions/servers_databases_securityAlertPolicies" }, From de57db5d4cece8adb691fea37a32a8fb84a84867 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 1 Sep 2020 08:13:13 +0000 Subject: [PATCH 9/9] Update resource list --- generator/resources.json | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index eaf2ca715f..30b97b5c40 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -788,9 +788,15 @@ "2018-03-01", "2019-07-01" ], + "Microsoft.Capacity/autoQuotaIncrease": [ + "2019-07-19-preview" + ], "Microsoft.Capacity/reservationOrders": [ "2019-04-01" ], + "Microsoft.Capacity/resourceProviders/locations/serviceLimits": [ + "2019-07-19-preview" + ], "Microsoft.Cdn/CdnWebApplicationFirewallPolicies": [ "2019-06-15", "2019-06-15-preview", @@ -4242,11 +4248,15 @@ ], "Microsoft.Sql/managedInstances": [ "2015-05-01-preview", - "2018-06-01-preview" + "2018-06-01-preview", + "2020-02-02-preview" ], "Microsoft.Sql/managedInstances/administrators": [ "2017-03-01-preview" ], + "Microsoft.Sql/managedInstances/azureADOnlyAuthentications": [ + "2020-02-02-preview" + ], "Microsoft.Sql/managedInstances/databases": [ "2017-03-01-preview", "2018-06-01-preview", @@ -4335,7 +4345,8 @@ "2017-03-01-preview" ], "Microsoft.Sql/servers/databases/backupShortTermRetentionPolicies": [ - "2017-10-01-preview" + "2017-10-01-preview", + "2020-02-02-preview" ], "Microsoft.Sql/servers/databases/connectionPolicies": [ "2014-04-01" @@ -4669,7 +4680,8 @@ "2016-03-01" ], "Microsoft.Subscription/aliases": [ - "2019-10-01-preview" + "2019-10-01-preview", + "2020-09-01" ], "Microsoft.Subscription/subscriptionDefinitions": [ "2017-11-01-preview"