diff --git a/schemas/2021-02-16-preview/Microsoft.DataReplication.json b/schemas/2021-02-16-preview/Microsoft.DataReplication.json new file mode 100644 index 0000000000..56a9333de4 --- /dev/null +++ b/schemas/2021-02-16-preview/Microsoft.DataReplication.json @@ -0,0 +1,2053 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-02-16-preview/Microsoft.DataReplication.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.DataReplication", + "description": "Microsoft DataReplication Resource Types", + "resourceDefinitions": { + "replicationFabrics": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-02-16-preview" + ] + }, + "location": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the location of the fabric." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The fabric name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FabricModelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Fabric model properties." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/replicationFabrics_fabricAgents_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataReplication/replicationFabrics" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataReplication/replicationFabrics" + }, + "replicationFabrics_fabricAgents": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-02-16-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The fabric agent (Dra) name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DraModelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Dra model properties." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataReplication/replicationFabrics/fabricAgents" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataReplication/replicationFabrics/fabricAgents" + }, + "replicationVaults": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-02-16-preview" + ] + }, + "location": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the location of the vault." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The vault name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VaultModelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Vault properties." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/replicationVaults_alertSettings_childResource" + }, + { + "$ref": "#/definitions/replicationVaults_replicationPolicies_childResource" + }, + { + "$ref": "#/definitions/replicationVaults_protectedItems_childResource" + }, + { + "$ref": "#/definitions/replicationVaults_replicationExtensions_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataReplication/replicationVaults" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataReplication/replicationVaults" + }, + "replicationVaults_alertSettings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-02-16-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The email configuration name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/EmailConfigurationModelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Email configuration model properties." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataReplication/replicationVaults/alertSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataReplication/replicationVaults/alertSettings" + }, + "replicationVaults_protectedItems": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-02-16-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The protected item name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ProtectedItemModelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Protected item model properties." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataReplication/replicationVaults/protectedItems" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataReplication/replicationVaults/protectedItems" + }, + "replicationVaults_replicationExtensions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-02-16-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The replication extension name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ReplicationExtensionModelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Replication extension model properties." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataReplication/replicationVaults/replicationExtensions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataReplication/replicationVaults/replicationExtensions" + }, + "replicationVaults_replicationPolicies": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-02-16-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The policy name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PolicyModelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Policy model properties." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataReplication/replicationVaults/replicationPolicies" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataReplication/replicationVaults/replicationPolicies" + } + }, + "definitions": { + "AzStackHCIClusterProperties": { + "type": "object", + "properties": { + "clusterName": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the AzStackHCICluster FQDN name." + }, + "resourceName": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the AzStackHCICluster resource name." + }, + "storageAccountName": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the Storage account name." + }, + "storageContainers": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/StorageContainerProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the list of AzStackHCICluster Storage Container." + } + }, + "required": [ + "clusterName", + "resourceName", + "storageAccountName", + "storageContainers" + ], + "description": "AzStackHCI cluster properties." + }, + "AzStackHCIFabricModelCustomProperties": { + "type": "object", + "properties": { + "azStackHciSiteId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the ARM Id of the AzStackHCI site." + }, + "cluster": { + "oneOf": [ + { + "$ref": "#/definitions/AzStackHCIClusterProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "AzStackHCI cluster properties." + }, + "instanceType": { + "type": "string", + "enum": [ + "AzStackHCI" + ] + }, + "migrationSolutionId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the Migration solution ARM Id." + } + }, + "required": [ + "azStackHciSiteId", + "cluster", + "instanceType", + "migrationSolutionId" + ], + "description": "AzStackHCI fabric model custom properties." + }, + "DraModelCustomProperties": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/VMwareDraModelCustomProperties" + } + ], + "properties": {}, + "description": "Dra model custom properties." + }, + "DraModelProperties": { + "type": "object", + "properties": { + "authenticationIdentity": { + "oneOf": [ + { + "$ref": "#/definitions/IdentityModel" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity model." + }, + "customProperties": { + "oneOf": [ + { + "$ref": "#/definitions/DraModelCustomProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Dra model custom properties." + }, + "machineId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the machine Id where Dra is running." + }, + "machineName": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the machine name where Dra is running." + }, + "resourceAccessIdentity": { + "oneOf": [ + { + "$ref": "#/definitions/IdentityModel" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity model." + } + }, + "required": [ + "authenticationIdentity", + "customProperties", + "machineId", + "machineName", + "resourceAccessIdentity" + ], + "description": "Dra model properties." + }, + "EmailConfigurationModelProperties": { + "type": "object", + "properties": { + "customEmailAddresses": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the custom email address for sending emails." + }, + "locale": { + "type": "string", + "description": "Gets or sets the locale for the email notification." + }, + "sendToOwners": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets a value indicating whether to send email to subscription administrator." + } + }, + "required": [ + "sendToOwners" + ], + "description": "Email configuration model properties." + }, + "FabricModelCustomProperties": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzStackHCIFabricModelCustomProperties" + }, + { + "$ref": "#/definitions/HyperVMigrateFabricModelCustomProperties" + }, + { + "$ref": "#/definitions/VMwareMigrateFabricModelCustomProperties" + } + ], + "properties": {}, + "description": "Fabric model custom properties." + }, + "FabricModelProperties": { + "type": "object", + "properties": { + "customProperties": { + "oneOf": [ + { + "$ref": "#/definitions/FabricModelCustomProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Fabric model custom properties." + } + }, + "required": [ + "customProperties" + ], + "description": "Fabric model properties." + }, + "HyperVMigrateFabricModelCustomProperties": { + "type": "object", + "properties": { + "hyperVSiteId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the ARM Id of the HyperV site." + }, + "instanceType": { + "type": "string", + "enum": [ + "HyperVMigrate" + ] + }, + "migrationSolutionId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the migration solution ARM Id." + } + }, + "required": [ + "hyperVSiteId", + "instanceType", + "migrationSolutionId" + ], + "description": "HyperV migrate fabric model custom properties." + }, + "HyperVToAzStackHCIDiskInput": { + "type": "object", + "properties": { + "diskFileFormat": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the type of the virtual hard disk, vhd or vhdx." + }, + "diskId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the disk Id." + }, + "diskSizeGB": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the disk size in GB." + }, + "isDynamic": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets a value indicating whether dynamic sizing is enabled on the virtual hard\r\ndisk." + }, + "isOsDisk": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets a value indicating whether disk is os disk." + }, + "storageContainerId": { + "type": "string", + "description": "Gets or sets the target storage account ARM Id." + } + }, + "required": [ + "diskFileFormat", + "diskId", + "diskSizeGB", + "isOsDisk" + ], + "description": "HyperVToAzStack disk input." + }, + "HyperVToAzStackHCINicInput": { + "type": "object", + "properties": { + "nicId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the NIC Id." + }, + "selectionTypeForFailover": { + "oneOf": [ + { + "type": "string", + "enum": [ + "NotSelected", + "SelectedByUser", + "SelectedByDefault", + "SelectedByUserOverride" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the selection type of the NIC." + }, + "targetNetworkId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the target network Id within AzStackHCI Cluster." + }, + "testNetworkId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the target test network Id within AzStackHCI Cluster." + } + }, + "required": [ + "nicId", + "selectionTypeForFailover", + "targetNetworkId", + "testNetworkId" + ], + "description": "HyperVToAzStackHCI NIC properties." + }, + "HyperVToAzStackHCIPolicyModelCustomProperties": { + "type": "object", + "properties": { + "appConsistentFrequencyInMinutes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the app consistent snapshot frequency (in minutes)." + }, + "crashConsistentFrequencyInMinutes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the crash consistent snapshot frequency (in minutes)." + }, + "instanceType": { + "type": "string", + "enum": [ + "HyperVToAzStackHCI" + ] + }, + "recoveryPointHistoryInMinutes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the duration in minutes until which the recovery points need to be\r\nstored." + } + }, + "required": [ + "appConsistentFrequencyInMinutes", + "crashConsistentFrequencyInMinutes", + "instanceType", + "recoveryPointHistoryInMinutes" + ], + "description": "HyperV To AzStackHCI Policy model custom properties." + }, + "HyperVToAzStackHCIProtectedItemModelCustomProperties": { + "type": "object", + "properties": { + "customLocationRegion": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the location of Azure Arc HCI custom location resource." + }, + "disksToInclude": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/HyperVToAzStackHCIDiskInput" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the list of disks to replicate." + }, + "dynamicMemoryConfig": { + "oneOf": [ + { + "$ref": "#/definitions/ProtectedItemDynamicMemoryConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Protected item dynamic memory config." + }, + "fabricDiscoveryMachineId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the ARM Id of the discovered machine." + }, + "hyperVGeneration": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the hypervisor generation of the virtual machine." + }, + "instanceType": { + "type": "string", + "enum": [ + "HyperVToAzStackHCI" + ] + }, + "isDynamicRam": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets a value indicating whether memory is dynamical." + }, + "nicsToInclude": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/HyperVToAzStackHCINicInput" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the list of VM NIC to replicate." + }, + "runAsAccountId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the Run As account Id." + }, + "sourceDraName": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the source DRA name." + }, + "storageContainerId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the target storage container ARM Id." + }, + "targetArcClusterCustomLocationId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the Target Arc Cluster Custom Location ARM Id." + }, + "targetCpuCores": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the target CPU cores." + }, + "targetDraName": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the target DRA name." + }, + "targetHciClusterId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the Target HCI Cluster ARM Id." + }, + "targetMemoryInMegaBytes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the target memory in mega-bytes." + }, + "targetNetworkId": { + "type": "string", + "description": "Gets or sets the target network Id within AzStackHCI Cluster." + }, + "targetResourceGroupId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the target resource group ARM Id." + }, + "targetVmName": { + "type": "string", + "description": "Gets or sets the target VM display name." + }, + "testNetworkId": { + "type": "string", + "description": "Gets or sets the target test network Id within AzStackHCI Cluster." + } + }, + "required": [ + "customLocationRegion", + "disksToInclude", + "fabricDiscoveryMachineId", + "hyperVGeneration", + "instanceType", + "nicsToInclude", + "runAsAccountId", + "sourceDraName", + "storageContainerId", + "targetArcClusterCustomLocationId", + "targetDraName", + "targetHciClusterId", + "targetResourceGroupId" + ], + "description": "HyperV to AzStackHCI Protected item model custom properties." + }, + "HyperVToAzStackHCIReplicationExtensionModelCustomProperties": { + "type": "object", + "properties": { + "azStackHciFabricArmId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the ARM Id of the target AzStackHCI fabric." + }, + "hyperVFabricArmId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the ARM Id of the source HyperV fabric." + }, + "instanceType": { + "type": "string", + "enum": [ + "HyperVToAzStackHCI" + ] + }, + "storageAccountId": { + "type": "string", + "description": "Gets or sets the storage account Id." + }, + "storageAccountSasSecretName": { + "type": "string", + "description": "Gets or sets the Sas Secret of storage account." + } + }, + "required": [ + "azStackHciFabricArmId", + "hyperVFabricArmId", + "instanceType" + ], + "description": "HyperV to AzStackHCI Replication extension model custom properties." + }, + "IdentityModel": { + "type": "object", + "properties": { + "aadAuthority": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the authority of the SPN with which Dra communicates to service." + }, + "applicationId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the client/application Id of the SPN with which Dra communicates to\r\nservice." + }, + "audience": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the audience of the SPN with which Dra communicates to service." + }, + "objectId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the object Id of the SPN with which Dra communicates to service." + }, + "tenantId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the tenant Id of the SPN with which Dra communicates to service." + } + }, + "required": [ + "aadAuthority", + "applicationId", + "audience", + "objectId", + "tenantId" + ], + "description": "Identity model." + }, + "PolicyModelCustomProperties": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/HyperVToAzStackHCIPolicyModelCustomProperties" + }, + { + "$ref": "#/definitions/VMwareToAzStackHCIPolicyModelCustomProperties" + } + ], + "properties": {}, + "description": "Policy model custom properties." + }, + "PolicyModelProperties": { + "type": "object", + "properties": { + "customProperties": { + "oneOf": [ + { + "$ref": "#/definitions/PolicyModelCustomProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Policy model custom properties." + } + }, + "required": [ + "customProperties" + ], + "description": "Policy model properties." + }, + "ProtectedItemDynamicMemoryConfig": { + "type": "object", + "properties": { + "maximumMemoryInMegaBytes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets maximum memory in MB." + }, + "minimumMemoryInMegaBytes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets minimum memory in MB." + }, + "targetMemoryBufferPercentage": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets target memory buffer in %." + } + }, + "required": [ + "maximumMemoryInMegaBytes", + "minimumMemoryInMegaBytes", + "targetMemoryBufferPercentage" + ], + "description": "Protected item dynamic memory config." + }, + "ProtectedItemModelCustomProperties": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/HyperVToAzStackHCIProtectedItemModelCustomProperties" + }, + { + "$ref": "#/definitions/VMwareToAzStackHCIProtectedItemModelCustomProperties" + } + ], + "properties": {}, + "description": "Protected item model custom properties." + }, + "ProtectedItemModelProperties": { + "type": "object", + "properties": { + "customProperties": { + "oneOf": [ + { + "$ref": "#/definitions/ProtectedItemModelCustomProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Protected item model custom properties." + }, + "policyName": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the policy name." + }, + "replicationExtensionName": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the replication extension name." + } + }, + "required": [ + "customProperties", + "policyName", + "replicationExtensionName" + ], + "description": "Protected item model properties." + }, + "ReplicationExtensionModelCustomProperties": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/HyperVToAzStackHCIReplicationExtensionModelCustomProperties" + }, + { + "$ref": "#/definitions/VMwareToAzStackHCIReplicationExtensionModelCustomProperties" + } + ], + "properties": {}, + "description": "Replication extension model custom properties." + }, + "ReplicationExtensionModelProperties": { + "type": "object", + "properties": { + "customProperties": { + "oneOf": [ + { + "$ref": "#/definitions/ReplicationExtensionModelCustomProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Replication extension model custom properties." + } + }, + "required": [ + "customProperties" + ], + "description": "Replication extension model properties." + }, + "replicationFabrics_fabricAgents_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-02-16-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The fabric agent (Dra) name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DraModelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Dra model properties." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the resource tags." + }, + "type": { + "type": "string", + "enum": [ + "fabricAgents" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataReplication/replicationFabrics/fabricAgents" + }, + "replicationVaults_alertSettings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-02-16-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The email configuration name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/EmailConfigurationModelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Email configuration model properties." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the resource tags." + }, + "type": { + "type": "string", + "enum": [ + "alertSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataReplication/replicationVaults/alertSettings" + }, + "replicationVaults_protectedItems_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-02-16-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The protected item name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ProtectedItemModelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Protected item model properties." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the resource tags." + }, + "type": { + "type": "string", + "enum": [ + "protectedItems" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataReplication/replicationVaults/protectedItems" + }, + "replicationVaults_replicationExtensions_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-02-16-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The replication extension name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ReplicationExtensionModelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Replication extension model properties." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the resource tags." + }, + "type": { + "type": "string", + "enum": [ + "replicationExtensions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataReplication/replicationVaults/replicationExtensions" + }, + "replicationVaults_replicationPolicies_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-02-16-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9]*$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The policy name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PolicyModelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Policy model properties." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the resource tags." + }, + "type": { + "type": "string", + "enum": [ + "replicationPolicies" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataReplication/replicationVaults/replicationPolicies" + }, + "StorageContainerProperties": { + "type": "object", + "properties": { + "clusterSharedVolumePath": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the ClusterSharedVolumePath." + }, + "name": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the Name." + } + }, + "required": [ + "clusterSharedVolumePath", + "name" + ], + "description": "Storage container properties." + }, + "VaultModelProperties": { + "type": "object", + "properties": { + "vaultType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "DisasterRecovery", + "Migrate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the type of vault." + } + }, + "description": "Vault properties." + }, + "VMwareDraModelCustomProperties": { + "type": "object", + "properties": { + "biosId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the BIOS Id of the DRA machine." + }, + "instanceType": { + "type": "string", + "enum": [ + "VMware" + ] + }, + "marsAuthenticationIdentity": { + "oneOf": [ + { + "$ref": "#/definitions/IdentityModel" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity model." + } + }, + "required": [ + "biosId", + "instanceType", + "marsAuthenticationIdentity" + ], + "description": "VMware DRA model custom properties." + }, + "VMwareMigrateFabricModelCustomProperties": { + "type": "object", + "properties": { + "instanceType": { + "type": "string", + "enum": [ + "VMwareMigrate" + ] + }, + "migrationSolutionId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the ARM Id of the migration solution." + }, + "vmwareSiteId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the ARM Id of the VMware site." + } + }, + "required": [ + "instanceType", + "migrationSolutionId", + "vmwareSiteId" + ], + "description": "VMware migrate fabric model custom properties." + }, + "VMwareToAzStackHCIDiskInput": { + "type": "object", + "properties": { + "diskFileFormat": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the type of the virtual hard disk, vhd or vhdx." + }, + "diskId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the disk Id." + }, + "diskSizeGB": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the disk size in GB." + }, + "isDynamic": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets a value indicating whether dynamic sizing is enabled on the virtual hard\r\ndisk." + }, + "isOsDisk": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets a value indicating whether disk is os disk." + }, + "storageContainerId": { + "type": "string", + "description": "Gets or sets the target storage account ARM Id." + } + }, + "required": [ + "diskFileFormat", + "diskId", + "diskSizeGB", + "isOsDisk" + ], + "description": "VMwareToAzStack disk input." + }, + "VMwareToAzStackHCINicInput": { + "type": "object", + "properties": { + "label": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the NIC label." + }, + "nicId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the NIC Id." + }, + "selectionTypeForFailover": { + "oneOf": [ + { + "type": "string", + "enum": [ + "NotSelected", + "SelectedByUser", + "SelectedByDefault", + "SelectedByUserOverride" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the selection type of the NIC." + }, + "targetNetworkId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the target network Id within AzStackHCI Cluster." + }, + "testNetworkId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the target test network Id within AzStackHCI Cluster." + } + }, + "required": [ + "label", + "nicId", + "selectionTypeForFailover", + "targetNetworkId", + "testNetworkId" + ], + "description": "VMwareToAzStackHCI NIC properties." + }, + "VMwareToAzStackHCIPolicyModelCustomProperties": { + "type": "object", + "properties": { + "appConsistentFrequencyInMinutes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the app consistent snapshot frequency (in minutes)." + }, + "crashConsistentFrequencyInMinutes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the crash consistent snapshot frequency (in minutes)." + }, + "instanceType": { + "type": "string", + "enum": [ + "VMwareToAzStackHCI" + ] + }, + "recoveryPointHistoryInMinutes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the duration in minutes until which the recovery points need to be\r\nstored." + } + }, + "required": [ + "appConsistentFrequencyInMinutes", + "crashConsistentFrequencyInMinutes", + "instanceType", + "recoveryPointHistoryInMinutes" + ], + "description": "VMware To AzStackHCI Policy model custom properties." + }, + "VMwareToAzStackHCIProtectedItemModelCustomProperties": { + "type": "object", + "properties": { + "customLocationRegion": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the location of Azure Arc HCI custom location resource." + }, + "disksToInclude": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/VMwareToAzStackHCIDiskInput" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the list of disks to replicate." + }, + "dynamicMemoryConfig": { + "oneOf": [ + { + "$ref": "#/definitions/ProtectedItemDynamicMemoryConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Protected item dynamic memory config." + }, + "fabricDiscoveryMachineId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the ARM Id of the discovered machine." + }, + "hyperVGeneration": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the hypervisor generation of the virtual machine possible values are 1,2." + }, + "instanceType": { + "type": "string", + "enum": [ + "VMwareToAzStackHCI" + ] + }, + "isDynamicRam": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets a value indicating whether memory is dynamical." + }, + "nicsToInclude": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/VMwareToAzStackHCINicInput" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the list of VM NIC to replicate." + }, + "performAutoResync": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets a value indicating whether auto resync is to be done." + }, + "runAsAccountId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the run as account Id." + }, + "sourceDraName": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the source DRA name." + }, + "storageContainerId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the target storage container ARM Id." + }, + "targetArcClusterCustomLocationId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the Target Arc Cluster Custom Location ARM Id." + }, + "targetCpuCores": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the target CPU cores." + }, + "targetDraName": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the target DRA name." + }, + "targetHciClusterId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the Target HCI Cluster ARM Id." + }, + "targetMemoryInMegaBytes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the target memory in mega-bytes." + }, + "targetNetworkId": { + "type": "string", + "description": "Gets or sets the target network Id within AzStackHCI Cluster." + }, + "targetResourceGroupId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the target resource group ARM Id." + }, + "targetVmName": { + "type": "string", + "description": "Gets or sets the target VM display name." + }, + "testNetworkId": { + "type": "string", + "description": "Gets or sets the target test network Id within AzStackHCI Cluster." + } + }, + "required": [ + "customLocationRegion", + "disksToInclude", + "fabricDiscoveryMachineId", + "hyperVGeneration", + "instanceType", + "nicsToInclude", + "runAsAccountId", + "sourceDraName", + "storageContainerId", + "targetArcClusterCustomLocationId", + "targetDraName", + "targetHciClusterId", + "targetResourceGroupId" + ], + "description": "VMware to AzStackHCI Protected item model custom properties." + }, + "VMwareToAzStackHCIReplicationExtensionModelCustomProperties": { + "type": "object", + "properties": { + "azStackHciFabricArmId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the ARM Id of the target AzStackHCI fabric." + }, + "instanceType": { + "type": "string", + "enum": [ + "VMwareToAzStackHCI" + ] + }, + "storageAccountId": { + "type": "string", + "description": "Gets or sets the storage account Id." + }, + "storageAccountSasSecretName": { + "type": "string", + "description": "Gets or sets the Sas Secret of storage account." + }, + "vmwareFabricArmId": { + "type": "string", + "minLength": 1, + "description": "Gets or sets the ARM Id of the source VMware fabric." + } + }, + "required": [ + "azStackHciFabricArmId", + "instanceType", + "vmwareFabricArmId" + ], + "description": "VMware to AzStackHCI Replication extension model custom properties." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 68f8d0b169..2ee407f89c 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -9874,6 +9874,27 @@ { "$ref": "https://schema.management.azure.com/schemas/2023-05-01/Microsoft.DataProtection.json#/resourceDefinitions/resourceGuards" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-02-16-preview/Microsoft.DataReplication.json#/resourceDefinitions/replicationFabrics" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-02-16-preview/Microsoft.DataReplication.json#/resourceDefinitions/replicationFabrics_fabricAgents" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-02-16-preview/Microsoft.DataReplication.json#/resourceDefinitions/replicationVaults" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-02-16-preview/Microsoft.DataReplication.json#/resourceDefinitions/replicationVaults_alertSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-02-16-preview/Microsoft.DataReplication.json#/resourceDefinitions/replicationVaults_protectedItems" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-02-16-preview/Microsoft.DataReplication.json#/resourceDefinitions/replicationVaults_replicationExtensions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-02-16-preview/Microsoft.DataReplication.json#/resourceDefinitions/replicationVaults_replicationPolicies" + }, { "$ref": "https://schema.management.azure.com/schemas/2018-11-01-preview/Microsoft.DataShare.json#/resourceDefinitions/accounts" },