diff --git a/schemas/2014-09-01/Microsoft.EventHub.json b/schemas/2014-09-01/Microsoft.EventHub.json index 7f27841e6a..2666843754 100644 --- a/schemas/2014-09-01/Microsoft.EventHub.json +++ b/schemas/2014-09-01/Microsoft.EventHub.json @@ -669,4 +669,4 @@ "description": "SKU parameters supplied to the create Namespace operation" } } -} \ No newline at end of file +} diff --git a/schemas/2015-08-01/Microsoft.EventHub.json b/schemas/2015-08-01/Microsoft.EventHub.json index 4a8ff327c2..385fe15e6f 100644 --- a/schemas/2015-08-01/Microsoft.EventHub.json +++ b/schemas/2015-08-01/Microsoft.EventHub.json @@ -669,4 +669,4 @@ "description": "SKU parameters supplied to the create Namespace operation" } } -} \ No newline at end of file +} diff --git a/schemas/2017-04-01/Microsoft.EventHub.json b/schemas/2017-04-01/Microsoft.EventHub.json index 616f751ec0..6b61630265 100644 --- a/schemas/2017-04-01/Microsoft.EventHub.json +++ b/schemas/2017-04-01/Microsoft.EventHub.json @@ -1044,4 +1044,4 @@ "description": "Properties supplied for Subnet" } } -} \ No newline at end of file +} diff --git a/schemas/2018-01-01-preview/Microsoft.EventHub.json b/schemas/2018-01-01-preview/Microsoft.EventHub.json index a04a777129..bce7bd15b8 100644 --- a/schemas/2018-01-01-preview/Microsoft.EventHub.json +++ b/schemas/2018-01-01-preview/Microsoft.EventHub.json @@ -129,8 +129,17 @@ { "$ref": "#/definitions/namespaces_networkRuleSets_childResource" }, + { + "$ref": "#/definitions/namespaces_authorizationRules_childResource" + }, { "$ref": "#/definitions/namespaces_privateEndpointConnections_childResource" + }, + { + "$ref": "#/definitions/namespaces_disasterRecoveryConfigs_childResource" + }, + { + "$ref": "#/definitions/namespaces_eventhubs_childResource" } ] } @@ -176,6 +185,222 @@ ], "description": "Microsoft.EventHub/namespaces" }, + "namespaces_authorizationRules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-01-01-preview" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The authorization rule name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AuthorizationRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties supplied to create or update AuthorizationRule" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.EventHub/namespaces/authorizationRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.EventHub/namespaces/authorizationRules" + }, + "namespaces_disasterRecoveryConfigs": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-01-01-preview" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The Disaster Recovery configuration name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ArmDisasterRecoveryProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties required to the Create Or Update Alias(Disaster Recovery configurations)" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.EventHub/namespaces/disasterRecoveryConfigs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.EventHub/namespaces/disasterRecoveryConfigs" + }, + "namespaces_eventhubs": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-01-01-preview" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 256, + "description": "The Event Hub name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/EventhubProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties supplied to the Create Or Update Event Hub operation." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/namespaces_eventhubs_authorizationRules_childResource" + }, + { + "$ref": "#/definitions/namespaces_eventhubs_consumergroups_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.EventHub/namespaces/eventhubs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.EventHub/namespaces/eventhubs" + }, + "namespaces_eventhubs_authorizationRules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-01-01-preview" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The authorization rule name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AuthorizationRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties supplied to create or update AuthorizationRule" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.EventHub/namespaces/eventhubs/authorizationRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.EventHub/namespaces/eventhubs/authorizationRules" + }, + "namespaces_eventhubs_consumergroups": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-01-01-preview" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The consumer group name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ConsumerGroupProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Single item in List or Get Consumer group operation" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.EventHub/namespaces/eventhubs/consumergroups" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.EventHub/namespaces/eventhubs/consumergroups" + }, "namespaces_ipfilterrules": { "type": "object", "properties": { @@ -343,96 +568,267 @@ } }, "definitions": { - "ClusterProperties": { + "ArmDisasterRecoveryProperties": { "type": "object", - "properties": {}, - "description": "Event Hubs Cluster properties supplied in responses in List or Get operations." + "properties": { + "alternateName": { + "type": "string", + "description": "Alternate name specified when alias and namespace names are same." + }, + "partnerNamespace": { + "type": "string", + "description": "ARM Id of the Primary/Secondary eventhub namespace name, which is part of GEO DR pairing" + } + }, + "description": "Properties required to the Create Or Update Alias(Disaster Recovery configurations)" }, - "ClusterSku": { + "AuthorizationRuleProperties": { "type": "object", "properties": { - "capacity": { - "oneOf": [ - { - "type": "integer", - "minimum": 1, - "maximum": 32 - }, - { - "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" - } - ], - "description": "The quantity of Event Hubs Cluster Capacity Units contained in this cluster." - }, - "name": { + "rights": { "oneOf": [ { - "type": "string", - "enum": [ - "Dedicated" - ] + "type": "array", + "items": { + "type": "string", + "enum": [ + "Manage", + "Send", + "Listen" + ] + } }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Name of this SKU." + "description": "The rights associated with the rule." } }, "required": [ - "name" + "rights" ], - "description": "SKU parameters particular to a cluster instance." + "description": "Properties supplied to create or update AuthorizationRule" }, - "ConnectionState": { + "CaptureDescription": { "type": "object", "properties": { - "description": { - "type": "string", - "description": "Description of the connection state." - }, - "status": { + "destination": { "oneOf": [ { - "type": "string", - "enum": [ - "Pending", - "Approved", - "Rejected", - "Disconnected" - ] + "$ref": "#/definitions/Destination" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Status of the connection." - } - }, - "description": "ConnectionState information." - }, - "EHNamespaceProperties": { - "type": "object", - "properties": { - "clusterArmId": { - "type": "string", - "description": "Cluster ARM ID of the Namespace." + "description": "Capture storage details for capture description" }, - "encryption": { + "enabled": { "oneOf": [ { - "$ref": "#/definitions/Encryption" + "type": "boolean" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" } ], - "description": "Properties to configure Encryption" + "description": "A value that indicates whether capture description is enabled. " }, - "isAutoInflateEnabled": { + "encoding": { "oneOf": [ { - "type": "boolean" + "type": "string", + "enum": [ + "Avro", + "AvroDeflate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enumerates the possible values for the encoding format of capture description. Note: 'AvroDeflate' will be deprecated in New API Version." + }, + "intervalInSeconds": { + "oneOf": [ + { + "type": "integer", + "minimum": 60, + "maximum": 900 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time window allows you to set the frequency with which the capture to Azure Blobs will happen, value should between 60 to 900 seconds" + }, + "sizeLimitInBytes": { + "oneOf": [ + { + "type": "integer", + "minimum": 10485760, + "maximum": 524288000 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The size window defines the amount of data built up in your Event Hub before an capture operation, value should be between 10485760 to 524288000 bytes" + }, + "skipEmptyArchives": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A value that indicates whether to Skip Empty Archives" + } + }, + "description": "Properties to configure capture description for eventhub" + }, + "ClusterProperties": { + "type": "object", + "properties": {}, + "description": "Event Hubs Cluster properties supplied in responses in List or Get operations." + }, + "ClusterSku": { + "type": "object", + "properties": { + "capacity": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 32 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The quantity of Event Hubs Cluster Capacity Units contained in this cluster." + }, + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Dedicated" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Name of this SKU." + } + }, + "required": [ + "name" + ], + "description": "SKU parameters particular to a cluster instance." + }, + "ConnectionState": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of the connection state." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Status of the connection." + } + }, + "description": "ConnectionState information." + }, + "ConsumerGroupProperties": { + "type": "object", + "properties": { + "userMetadata": { + "type": "string", + "description": "User Metadata is a placeholder to store user-defined string data with maximum length 1024. e.g. it can be used to store descriptive data, such as list of teams and their contact information also user-defined configuration settings can be stored." + } + }, + "description": "Single item in List or Get Consumer group operation" + }, + "Destination": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Name for capture destination" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DestinationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties describing the storage account, blob container and archive name format for capture destination" + } + }, + "description": "Capture storage details for capture description" + }, + "DestinationProperties": { + "type": "object", + "properties": { + "archiveNameFormat": { + "type": "string", + "description": "Blob naming convention for archive, e.g. {Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}. Here all the parameters (Namespace,EventHub .. etc) are mandatory irrespective of order" + }, + "blobContainer": { + "type": "string", + "description": "Blob container Name" + }, + "storageAccountResourceId": { + "type": "string", + "description": "Resource id of the storage account to be used to create the blobs" + } + }, + "description": "Properties describing the storage account, blob container and archive name format for capture destination" + }, + "EHNamespaceProperties": { + "type": "object", + "properties": { + "clusterArmId": { + "type": "string", + "description": "Cluster ARM ID of the Namespace." + }, + "encryption": { + "oneOf": [ + { + "$ref": "#/definitions/Encryption" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to configure Encryption" + }, + "isAutoInflateEnabled": { + "oneOf": [ + { + "type": "boolean" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -512,6 +908,69 @@ }, "description": "Properties to configure Encryption" }, + "EventhubProperties": { + "type": "object", + "properties": { + "captureDescription": { + "oneOf": [ + { + "$ref": "#/definitions/CaptureDescription" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to configure capture description for eventhub" + }, + "messageRetentionInDays": { + "oneOf": [ + { + "type": "integer", + "minimum": 1 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of days to retain the events for this Event Hub, value should be 1 to 7 days" + }, + "partitionCount": { + "oneOf": [ + { + "type": "integer", + "minimum": 1 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of partitions created for the Event Hub, allowed values are from 1 to 32 partitions." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Active", + "Disabled", + "Restoring", + "SendDisabled", + "ReceiveDisabled", + "Creating", + "Deleting", + "Renaming", + "Unknown" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enumerates the possible values for the status of the Event Hub." + } + }, + "description": "Properties supplied to the Create Or Update Event Hub operation." + }, "Identity": { "type": "object", "properties": { @@ -587,6 +1046,209 @@ }, "description": "Properties to configure keyVault Properties" }, + "namespaces_authorizationRules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-01-01-preview" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The authorization rule name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AuthorizationRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties supplied to create or update AuthorizationRule" + }, + "type": { + "type": "string", + "enum": [ + "authorizationRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.EventHub/namespaces/authorizationRules" + }, + "namespaces_disasterRecoveryConfigs_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-01-01-preview" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The Disaster Recovery configuration name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ArmDisasterRecoveryProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties required to the Create Or Update Alias(Disaster Recovery configurations)" + }, + "type": { + "type": "string", + "enum": [ + "disasterRecoveryConfigs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.EventHub/namespaces/disasterRecoveryConfigs" + }, + "namespaces_eventhubs_authorizationRules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-01-01-preview" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The authorization rule name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/AuthorizationRuleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties supplied to create or update AuthorizationRule" + }, + "type": { + "type": "string", + "enum": [ + "authorizationRules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.EventHub/namespaces/eventhubs/authorizationRules" + }, + "namespaces_eventhubs_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-01-01-preview" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 256, + "description": "The Event Hub name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/EventhubProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties supplied to the Create Or Update Event Hub operation." + }, + "type": { + "type": "string", + "enum": [ + "eventhubs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.EventHub/namespaces/eventhubs" + }, + "namespaces_eventhubs_consumergroups_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2018-01-01-preview" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 50, + "description": "The consumer group name" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ConsumerGroupProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Single item in List or Get Consumer group operation" + }, + "type": { + "type": "string", + "enum": [ + "consumergroups" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.EventHub/namespaces/eventhubs/consumergroups" + }, "namespaces_ipfilterrules_childResource": { "type": "object", "properties": { @@ -989,4 +1651,4 @@ "description": "Properties supplied to create or update VirtualNetworkRules" } } -} \ No newline at end of file +}