azure-resource-manager-schemas/schemas/2023-02-01/Microsoft.RecoveryServices....

4374 строки
139 KiB
JSON

{
"id": "https://schema.management.azure.com/schemas/2023-02-01/Microsoft.RecoveryServices.SiteRecovery.json#",
"title": "Microsoft.RecoveryServices",
"description": "Microsoft RecoveryServices Resource Types",
"$schema": "http://json-schema.org/draft-04/schema#",
"resourceDefinitions": {
"vaults_replicationAlertSettings": {
"description": "Microsoft.RecoveryServices/vaults/replicationAlertSettings",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "The name of the email notification(alert) configuration.",
"type": "string"
},
"properties": {
"description": "The properties of a configure alert request.",
"oneOf": [
{
"$ref": "#/definitions/ConfigureAlertRequestProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.RecoveryServices/vaults/replicationAlertSettings"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationFabrics": {
"description": "Microsoft.RecoveryServices/vaults/replicationFabrics",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "Name of the ASR fabric.",
"type": "string"
},
"properties": {
"description": "Fabric creation input.",
"oneOf": [
{
"$ref": "#/definitions/FabricCreationInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"resources": {
"items": {
"oneOf": [
{
"$ref": "#/definitions/vaults_replicationFabrics_replicationvCenters_childResource"
},
{
"$ref": "#/definitions/vaults_replicationFabrics_replicationProtectionContainers_childResource"
},
{
"$ref": "#/definitions/vaults_replicationFabrics_replicationRecoveryServicesProviders_childResource"
}
]
},
"type": "array"
},
"type": {
"enum": [
"Microsoft.RecoveryServices/vaults/replicationFabrics"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationFabrics_replicationNetworks_replicationNetworkMappings": {
"description": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "Network mapping name.",
"type": "string"
},
"properties": {
"description": "Input properties for creating network mapping.",
"oneOf": [
{
"$ref": "#/definitions/CreateNetworkMappingInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationNetworks/replicationNetworkMappings"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationFabrics_replicationProtectionContainers": {
"description": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "Unique protection container ARM name.",
"type": "string"
},
"properties": {
"description": "Create protection container input properties.",
"oneOf": [
{
"$ref": "#/definitions/CreateProtectionContainerInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"resources": {
"items": {
"oneOf": [
{
"$ref": "#/definitions/vaults_replicationFabrics_replicationProtectionContainers_replicationMigrationItems_childResource"
},
{
"$ref": "#/definitions/vaults_replicationFabrics_replicationProtectionContainers_replicationProtectedItems_childResource"
},
{
"$ref": "#/definitions/vaults_replicationFabrics_replicationProtectionContainers_replicationProtectionContainerMappings_childResource"
}
]
},
"type": "array"
},
"type": {
"enum": [
"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationFabrics_replicationProtectionContainers_replicationMigrationItems": {
"description": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "Migration item name.",
"type": "string"
},
"properties": {
"description": "Enable migration input properties.",
"oneOf": [
{
"$ref": "#/definitions/EnableMigrationInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationFabrics_replicationProtectionContainers_replicationProtectedItems": {
"description": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "A name for the replication protected item.",
"type": "string"
},
"properties": {
"description": "Enable protection input properties.",
"oneOf": [
{
"$ref": "#/definitions/EnableProtectionInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationFabrics_replicationProtectionContainers_replicationProtectionContainerMappings": {
"description": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "Protection container mapping name.",
"type": "string"
},
"properties": {
"description": "Configure protection input properties.",
"oneOf": [
{
"$ref": "#/definitions/CreateProtectionContainerMappingInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationFabrics_replicationRecoveryServicesProviders": {
"description": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "Recovery services provider name.",
"type": "string"
},
"properties": {
"description": "The properties of an add provider request.",
"oneOf": [
{
"$ref": "#/definitions/AddRecoveryServicesProviderInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationFabrics_replicationStorageClassifications_replicationStorageClassificationMappings": {
"description": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "Storage classification mapping name.",
"type": "string"
},
"properties": {
"description": "Storage mapping input properties.",
"oneOf": [
{
"$ref": "#/definitions/StorageMappingInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationStorageClassifications/replicationStorageClassificationMappings"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationFabrics_replicationvCenters": {
"description": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "vcenter name.",
"type": "string"
},
"properties": {
"description": "The properties of an add vCenter request.",
"oneOf": [
{
"$ref": "#/definitions/AddVCenterRequestProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationPolicies": {
"description": "Microsoft.RecoveryServices/vaults/replicationPolicies",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "Replication policy name.",
"type": "string"
},
"properties": {
"description": "Policy creation properties.",
"oneOf": [
{
"$ref": "#/definitions/CreatePolicyInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.RecoveryServices/vaults/replicationPolicies"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationProtectionIntents": {
"description": "Microsoft.RecoveryServices/vaults/replicationProtectionIntents",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "A name for the replication protection item.",
"type": "string"
},
"properties": {
"description": "Create protection intent input properties.",
"oneOf": [
{
"$ref": "#/definitions/CreateProtectionIntentProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.RecoveryServices/vaults/replicationProtectionIntents"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationRecoveryPlans": {
"description": "Microsoft.RecoveryServices/vaults/replicationRecoveryPlans",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "Recovery plan name.",
"type": "string"
},
"properties": {
"description": "Recovery plan creation properties.",
"oneOf": [
{
"$ref": "#/definitions/CreateRecoveryPlanInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.RecoveryServices/vaults/replicationRecoveryPlans"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationVaultSettings": {
"description": "Microsoft.RecoveryServices/vaults/replicationVaultSettings",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "Vault setting name.",
"type": "string"
},
"properties": {
"description": "Vault setting creation input properties.",
"oneOf": [
{
"$ref": "#/definitions/VaultSettingCreationInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"Microsoft.RecoveryServices/vaults/replicationVaultSettings"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
}
},
"definitions": {
"A2AProtectionIntentDiskInputDetails": {
"description": "Azure VM unmanaged disk input details.",
"properties": {
"diskUri": {
"description": "The disk Uri.",
"type": "string"
},
"primaryStagingStorageAccountCustomInput": {
"description": "The primary staging storage account input.",
"oneOf": [
{
"$ref": "#/definitions/StorageAccountCustomDetails"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryAzureStorageAccountCustomInput": {
"description": "The recovery VHD storage account input.",
"oneOf": [
{
"$ref": "#/definitions/StorageAccountCustomDetails"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"diskUri"
],
"type": "object"
},
"A2AProtectionIntentManagedDiskInputDetails": {
"description": "Azure VM managed disk input details.",
"properties": {
"diskEncryptionInfo": {
"description": "The recovery disk encryption information (for one / single pass flows).",
"oneOf": [
{
"$ref": "#/definitions/DiskEncryptionInfo"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"diskId": {
"description": "The disk Id.",
"type": "string"
},
"primaryStagingStorageAccountCustomInput": {
"description": "The primary staging storage account input.",
"oneOf": [
{
"$ref": "#/definitions/StorageAccountCustomDetails"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryDiskEncryptionSetId": {
"description": "The recovery disk encryption set Id.",
"type": "string"
},
"recoveryReplicaDiskAccountType": {
"description": "The replica disk type. Its an optional value and will be same as source disk type if not user provided.",
"type": "string"
},
"recoveryResourceGroupCustomInput": {
"description": "The recovery resource group input.",
"oneOf": [
{
"$ref": "#/definitions/RecoveryResourceGroupCustomDetails"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryTargetDiskAccountType": {
"description": "The target disk type after failover. Its an optional value and will be same as source disk type if not user provided.",
"type": "string"
}
},
"required": [
"diskId"
],
"type": "object"
},
"A2AVmDiskInputDetails": {
"description": "A2A disk input details.",
"properties": {
"diskUri": {
"description": "The disk Uri.",
"type": "string"
},
"primaryStagingAzureStorageAccountId": {
"description": "The primary staging storage account Id.",
"type": "string"
},
"recoveryAzureStorageAccountId": {
"description": "The recovery VHD storage account Id.",
"type": "string"
}
},
"required": [
"diskUri",
"recoveryAzureStorageAccountId",
"primaryStagingAzureStorageAccountId"
],
"type": "object"
},
"A2AVmManagedDiskInputDetails": {
"description": "A2A managed disk input details.",
"properties": {
"diskEncryptionInfo": {
"description": "The recovery disk encryption information (for one / single pass flows).",
"oneOf": [
{
"$ref": "#/definitions/DiskEncryptionInfo"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"diskId": {
"description": "The disk Id.",
"type": "string"
},
"primaryStagingAzureStorageAccountId": {
"description": "The primary staging storage account Arm Id.",
"type": "string"
},
"recoveryDiskEncryptionSetId": {
"description": "The recovery disk encryption set Id.",
"type": "string"
},
"recoveryReplicaDiskAccountType": {
"description": "The replica disk type. Its an optional value and will be same as source disk type if not user provided.",
"type": "string"
},
"recoveryResourceGroupId": {
"description": "The target resource group Arm Id.",
"type": "string"
},
"recoveryTargetDiskAccountType": {
"description": "The target disk type after failover. Its an optional value and will be same as source disk type if not user provided.",
"type": "string"
}
},
"required": [
"diskId",
"primaryStagingAzureStorageAccountId",
"recoveryResourceGroupId"
],
"type": "object"
},
"AddRecoveryServicesProviderInputProperties": {
"description": "The properties of an add provider request.",
"properties": {
"authenticationIdentityInput": {
"description": "The identity provider input for DRA authentication.",
"oneOf": [
{
"$ref": "#/definitions/IdentityProviderInput"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"biosId": {
"description": "The Bios Id of the machine.",
"type": "string"
},
"dataPlaneAuthenticationIdentityInput": {
"description": "The identity provider input for data plane authentication.",
"oneOf": [
{
"$ref": "#/definitions/IdentityProviderInput"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"machineId": {
"description": "The Id of the machine where the provider is getting added.",
"type": "string"
},
"machineName": {
"description": "The name of the machine where the provider is getting added.",
"type": "string"
},
"resourceAccessIdentityInput": {
"description": "The identity provider input for resource access.",
"oneOf": [
{
"$ref": "#/definitions/IdentityProviderInput"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"machineName",
"authenticationIdentityInput",
"resourceAccessIdentityInput"
],
"type": "object"
},
"AddVCenterRequestProperties": {
"description": "The properties of an add vCenter request.",
"properties": {
"friendlyName": {
"description": "The friendly name of the vCenter.",
"type": "string"
},
"ipAddress": {
"description": "The IP address of the vCenter to be discovered.",
"type": "string"
},
"port": {
"description": "The port number for discovery.",
"type": "string"
},
"processServerId": {
"description": "The process server Id from where the discovery is orchestrated.",
"type": "string"
},
"runAsAccountId": {
"description": "The account Id which has privileges to discover the vCenter.",
"type": "string"
}
},
"type": "object"
},
"ConfigureAlertRequestProperties": {
"description": "Properties of a configure alert request.",
"properties": {
"customEmailAddresses": {
"description": "The custom email address for sending emails.",
"oneOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"locale": {
"description": "The locale for the email notification.",
"type": "string"
},
"sendToOwners": {
"description": "A value indicating whether to send email to subscription administrator.",
"type": "string"
}
},
"type": "object"
},
"CreateNetworkMappingInputProperties": {
"description": "Common input details for network mapping operation.",
"properties": {
"fabricSpecificDetails": {
"description": "Fabric specific input properties.",
"oneOf": [
{
"$ref": "#/definitions/FabricSpecificCreateNetworkMappingInput"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryFabricName": {
"description": "Recovery fabric Name.",
"type": "string"
},
"recoveryNetworkId": {
"description": "Recovery network Id.",
"type": "string"
}
},
"required": [
"recoveryNetworkId"
],
"type": "object"
},
"CreatePolicyInputProperties": {
"description": "Policy creation properties.",
"properties": {
"providerSpecificInput": {
"description": "The ReplicationProviderSettings.",
"oneOf": [
{
"$ref": "#/definitions/PolicyProviderSpecificInput"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"CreateProtectionContainerInputProperties": {
"description": "Create protection container input properties.",
"properties": {
"providerSpecificInput": {
"description": "Provider specific inputs for container creation.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/ReplicationProviderSpecificContainerCreationInput"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"CreateProtectionContainerMappingInputProperties": {
"description": "Configure pairing input properties.",
"properties": {
"policyId": {
"description": "Applicable policy.",
"type": "string"
},
"providerSpecificInput": {
"description": "Provider specific input for pairing.",
"oneOf": [
{
"$ref": "#/definitions/ReplicationProviderSpecificContainerMappingInput"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"targetProtectionContainerId": {
"description": "The target unique protection container name.",
"type": "string"
}
},
"type": "object"
},
"CreateProtectionIntentProperties": {
"description": "Create protection intent input properties.",
"properties": {
"providerSpecificDetails": {
"description": "The ReplicationProviderInput. For A2A provider, it will be A2ACreateProtectionIntentInput object.",
"oneOf": [
{
"$ref": "#/definitions/CreateProtectionIntentProviderSpecificDetails"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"CreateProtectionIntentProviderSpecificDetails": {
"description": "Create protection intent provider specific input.",
"oneOf": [
{
"description": "A2A create protection intent input.",
"properties": {
"agentAutoUpdateStatus": {
"description": "A value indicating whether the auto update is enabled.",
"oneOf": [
{
"enum": [
"Disabled",
"Enabled"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"autoProtectionOfDataDisk": {
"description": "A value indicating whether the auto protection is enabled.",
"oneOf": [
{
"enum": [
"Disabled",
"Enabled"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"automationAccountArmId": {
"description": "The automation account arm id.",
"type": "string"
},
"automationAccountAuthenticationType": {
"description": "A value indicating the authentication type for automation account. The default value is \"RunAsAccount\".",
"oneOf": [
{
"enum": [
"RunAsAccount",
"SystemAssignedIdentity"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"diskEncryptionInfo": {
"description": "The recovery disk encryption information (for two pass flows).",
"oneOf": [
{
"$ref": "#/definitions/DiskEncryptionInfo"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"fabricObjectId": {
"description": "The fabric specific object Id of the virtual machine.",
"type": "string"
},
"instanceType": {
"enum": [
"A2A"
],
"type": "string"
},
"multiVmGroupId": {
"description": "The multi vm group id.",
"type": "string"
},
"multiVmGroupName": {
"description": "The multi vm group name.",
"type": "string"
},
"primaryLocation": {
"description": "The primary location for the virtual machine.",
"type": "string"
},
"primaryStagingStorageAccountCustomInput": {
"description": "The primary staging storage account input.",
"oneOf": [
{
"$ref": "#/definitions/StorageAccountCustomDetails"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"protectionProfileCustomInput": {
"description": "The protection profile custom inputs.",
"oneOf": [
{
"$ref": "#/definitions/ProtectionProfileCustomDetails"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryAvailabilitySetCustomInput": {
"description": "The recovery availability set input.",
"oneOf": [
{
"$ref": "#/definitions/RecoveryAvailabilitySetCustomDetails"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryAvailabilityType": {
"description": "The recovery availability type of the virtual machine.",
"oneOf": [
{
"enum": [
"Single",
"AvailabilitySet",
"AvailabilityZone"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryAvailabilityZone": {
"description": "The recovery availability zone.",
"type": "string"
},
"recoveryBootDiagStorageAccount": {
"description": "The boot diagnostic storage account.",
"oneOf": [
{
"$ref": "#/definitions/StorageAccountCustomDetails"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryLocation": {
"description": "The recovery location for the virtual machine.",
"type": "string"
},
"recoveryProximityPlacementGroupCustomInput": {
"description": "The recovery proximity placement group custom input.",
"oneOf": [
{
"$ref": "#/definitions/RecoveryProximityPlacementGroupCustomDetails"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryResourceGroupId": {
"description": "The recovery resource group Id. Valid for V2 scenarios.",
"type": "string"
},
"recoverySubscriptionId": {
"description": "The recovery subscription Id of the virtual machine.",
"type": "string"
},
"recoveryVirtualNetworkCustomInput": {
"description": "The recovery virtual network input.",
"oneOf": [
{
"$ref": "#/definitions/RecoveryVirtualNetworkCustomDetails"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"vmDisks": {
"description": "The list of vm disk inputs.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/A2AProtectionIntentDiskInputDetails"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"vmManagedDisks": {
"description": "The list of vm managed disk inputs.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/A2AProtectionIntentManagedDiskInputDetails"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"fabricObjectId",
"primaryLocation",
"recoveryLocation",
"recoverySubscriptionId",
"recoveryAvailabilityType",
"recoveryResourceGroupId",
"instanceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"CreateRecoveryPlanInputProperties": {
"description": "Recovery plan creation properties.",
"properties": {
"failoverDeploymentModel": {
"description": "The failover deployment model.",
"oneOf": [
{
"enum": [
"NotApplicable",
"Classic",
"ResourceManager"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"groups": {
"description": "The recovery plan groups.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/RecoveryPlanGroup"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"primaryFabricId": {
"description": "The primary fabric Id.",
"type": "string"
},
"providerSpecificInput": {
"description": "The provider specific input.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/RecoveryPlanProviderSpecificInput"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryFabricId": {
"description": "The recovery fabric Id.",
"type": "string"
}
},
"required": [
"primaryFabricId",
"recoveryFabricId",
"groups"
],
"type": "object"
},
"DiskEncryptionInfo": {
"description": "Recovery disk encryption info (BEK and KEK).",
"properties": {
"diskEncryptionKeyInfo": {
"description": "The recovery KeyVault reference for secret.",
"oneOf": [
{
"$ref": "#/definitions/DiskEncryptionKeyInfo"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"keyEncryptionKeyInfo": {
"description": "The recovery KeyVault reference for key.",
"oneOf": [
{
"$ref": "#/definitions/KeyEncryptionKeyInfo"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"DiskEncryptionKeyInfo": {
"description": "Disk Encryption Key Information (BitLocker Encryption Key (BEK) on Windows).",
"properties": {
"keyVaultResourceArmId": {
"description": "The KeyVault resource ARM id for secret.",
"type": "string"
},
"secretIdentifier": {
"description": "The secret url / identifier.",
"type": "string"
}
},
"type": "object"
},
"EnableMigrationInputProperties": {
"description": "Enable migration input properties.",
"properties": {
"policyId": {
"description": "The policy Id.",
"type": "string"
},
"providerSpecificDetails": {
"description": "The provider specific details.",
"oneOf": [
{
"$ref": "#/definitions/EnableMigrationProviderSpecificInput"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"policyId",
"providerSpecificDetails"
],
"type": "object"
},
"EnableMigrationProviderSpecificInput": {
"description": "Enable migration provider specific input.",
"oneOf": [
{
"description": "VMwareCbt specific enable migration input.",
"properties": {
"confidentialVmKeyVaultId": {
"description": "The confidential VM key vault Id for ADE installation.",
"type": "string"
},
"dataMoverRunAsAccountId": {
"description": "The data mover run as account Id.",
"type": "string"
},
"disksToInclude": {
"description": "The disks to include list.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/VMwareCbtDiskInput"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"instanceType": {
"enum": [
"VMwareCbt"
],
"type": "string"
},
"licenseType": {
"description": "License type.",
"oneOf": [
{
"enum": [
"NotSpecified",
"NoLicenseType",
"WindowsServer"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"performAutoResync": {
"description": "A value indicating whether auto resync is to be done.",
"type": "string"
},
"performSqlBulkRegistration": {
"description": "A value indicating whether bulk SQL RP registration to be done.",
"type": "string"
},
"seedDiskTags": {
"description": "The tags for the seed disks.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"snapshotRunAsAccountId": {
"description": "The snapshot run as account Id.",
"type": "string"
},
"sqlServerLicenseType": {
"description": "The SQL Server license type.",
"oneOf": [
{
"enum": [
"NotSpecified",
"NoLicenseType",
"PAYG",
"AHUB"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"targetAvailabilitySetId": {
"description": "The target availability set ARM Id.",
"type": "string"
},
"targetAvailabilityZone": {
"description": "The target availability zone.",
"type": "string"
},
"targetBootDiagnosticsStorageAccountId": {
"description": "The target boot diagnostics storage account ARM Id.",
"type": "string"
},
"targetDiskTags": {
"description": "The tags for the target disks.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"targetNetworkId": {
"description": "The target network ARM Id.",
"type": "string"
},
"targetNicTags": {
"description": "The tags for the target NICs.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"targetProximityPlacementGroupId": {
"description": "The target proximity placement group ARM Id.",
"type": "string"
},
"targetResourceGroupId": {
"description": "The target resource group ARM Id.",
"type": "string"
},
"targetSubnetName": {
"description": "The target subnet name.",
"type": "string"
},
"targetVmName": {
"description": "The target VM name.",
"type": "string"
},
"targetVmSecurityProfile": {
"description": "The target VM security profile.",
"oneOf": [
{
"$ref": "#/definitions/VMwareCbtSecurityProfileProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"targetVmSize": {
"description": "The target VM size.",
"type": "string"
},
"targetVmTags": {
"description": "The target VM tags.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"testNetworkId": {
"description": "The selected test network ARM Id.",
"type": "string"
},
"testSubnetName": {
"description": "The selected test subnet name.",
"type": "string"
},
"vmwareMachineId": {
"description": "The ARM Id of the VM discovered in VMware.",
"type": "string"
}
},
"required": [
"vmwareMachineId",
"disksToInclude",
"dataMoverRunAsAccountId",
"snapshotRunAsAccountId",
"targetResourceGroupId",
"targetNetworkId",
"instanceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"EnableProtectionInputProperties": {
"description": "Enable protection input properties.",
"properties": {
"policyId": {
"description": "The Policy Id.",
"type": "string"
},
"protectableItemId": {
"description": "The protectable item Id.",
"type": "string"
},
"providerSpecificDetails": {
"description": "The ReplicationProviderInput. For HyperVReplicaAzure provider, it will be AzureEnableProtectionInput object. For San provider, it will be SanEnableProtectionInput object. For HyperVReplicaAzure provider, it can be null.",
"oneOf": [
{
"$ref": "#/definitions/EnableProtectionProviderSpecificInput"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"EnableProtectionProviderSpecificInput": {
"description": "Enable protection provider specific input.",
"oneOf": [
{
"description": "A2A enable protection input.",
"properties": {
"diskEncryptionInfo": {
"description": "The recovery disk encryption information (for two pass flows).",
"oneOf": [
{
"$ref": "#/definitions/DiskEncryptionInfo"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"fabricObjectId": {
"description": "The fabric specific object Id of the virtual machine.",
"type": "string"
},
"instanceType": {
"enum": [
"A2A"
],
"type": "string"
},
"multiVmGroupId": {
"description": "The multi vm group id.",
"type": "string"
},
"multiVmGroupName": {
"description": "The multi vm group name.",
"type": "string"
},
"recoveryAvailabilitySetId": {
"description": "The recovery availability set Id.",
"type": "string"
},
"recoveryAvailabilityZone": {
"description": "The recovery availability zone.",
"type": "string"
},
"recoveryAzureNetworkId": {
"description": "The recovery Azure virtual network ARM id.",
"type": "string"
},
"recoveryBootDiagStorageAccountId": {
"description": "The boot diagnostic storage account.",
"type": "string"
},
"recoveryCapacityReservationGroupId": {
"description": "The recovery capacity reservation group Id.",
"type": "string"
},
"recoveryCloudServiceId": {
"description": "The recovery cloud service Id. Valid for V1 scenarios.",
"type": "string"
},
"recoveryContainerId": {
"description": "The recovery container Id.",
"type": "string"
},
"recoveryExtendedLocation": {
"description": "The recovery extended location.",
"oneOf": [
{
"$ref": "#/definitions/ExtendedLocation"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryProximityPlacementGroupId": {
"description": "The recovery proximity placement group Id.",
"type": "string"
},
"recoveryResourceGroupId": {
"description": "The recovery resource group Id. Valid for V2 scenarios.",
"type": "string"
},
"recoverySubnetName": {
"description": "The recovery subnet name.",
"type": "string"
},
"recoveryVirtualMachineScaleSetId": {
"description": "The virtual machine scale set Id.",
"type": "string"
},
"vmDisks": {
"description": "The list of vm disk details.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/A2AVmDiskInputDetails"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"vmManagedDisks": {
"description": "The list of vm managed disk details.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/A2AVmManagedDiskInputDetails"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"fabricObjectId",
"instanceType"
],
"type": "object"
},
{
"description": "A2A Cross-Cluster Migration enable protection input.",
"properties": {
"fabricObjectId": {
"description": "The fabric specific object Id of the virtual machine.",
"type": "string"
},
"instanceType": {
"enum": [
"A2ACrossClusterMigration"
],
"type": "string"
},
"recoveryContainerId": {
"description": "The recovery container Id.",
"type": "string"
}
},
"required": [
"instanceType"
],
"type": "object"
},
{
"description": "HyperVReplicaAzure specific enable protection input.",
"properties": {
"diskEncryptionSetId": {
"description": "The DiskEncryptionSet ARM Id.",
"type": "string"
},
"diskType": {
"description": "The DiskType.",
"oneOf": [
{
"enum": [
"Standard_LRS",
"Premium_LRS",
"StandardSSD_LRS"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"disksToInclude": {
"description": "The list of VHD Ids of disks to be protected.",
"oneOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"disksToIncludeForManagedDisks": {
"description": "The disks to include list for managed disks.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/HyperVReplicaAzureDiskInputDetails"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"enableRdpOnTargetOption": {
"description": "The selected option to enable RDP\\SSH on target vm after failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.",
"type": "string"
},
"hvHostVmId": {
"description": "The Hyper-V host VM Id.",
"type": "string"
},
"instanceType": {
"enum": [
"HyperVReplicaAzure"
],
"type": "string"
},
"licenseType": {
"description": "License type.",
"oneOf": [
{
"enum": [
"NotSpecified",
"NoLicenseType",
"WindowsServer"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"logStorageAccountId": {
"description": "The storage account to be used for logging during replication.",
"type": "string"
},
"osType": {
"description": "The OS type associated with VM.",
"type": "string"
},
"seedManagedDiskTags": {
"description": "The tags for the seed managed disks.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"sqlServerLicenseType": {
"description": "The SQL Server license type.",
"oneOf": [
{
"enum": [
"NotSpecified",
"NoLicenseType",
"PAYG",
"AHUB"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"targetAvailabilitySetId": {
"description": "The target availability set ARM Id for resource manager deployment.",
"type": "string"
},
"targetAvailabilityZone": {
"description": "The target availability zone.",
"type": "string"
},
"targetAzureNetworkId": {
"description": "The selected target Azure network Id.",
"type": "string"
},
"targetAzureSubnetId": {
"description": "The selected target Azure subnet Id.",
"type": "string"
},
"targetAzureV1ResourceGroupId": {
"description": "The Id of the target resource group (for classic deployment) in which the failover VM is to be created.",
"type": "string"
},
"targetAzureV2ResourceGroupId": {
"description": "The Id of the target resource group (for resource manager deployment) in which the failover VM is to be created.",
"type": "string"
},
"targetAzureVmName": {
"description": "The target azure VM Name.",
"type": "string"
},
"targetManagedDiskTags": {
"description": "The tags for the target managed disks.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"targetNicTags": {
"description": "The tags for the target NICs.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"targetProximityPlacementGroupId": {
"description": "The proximity placement group ARM Id.",
"type": "string"
},
"targetStorageAccountId": {
"description": "The storage account Id.",
"type": "string"
},
"targetVmSize": {
"description": "The target VM size.",
"type": "string"
},
"targetVmTags": {
"description": "The target VM tags.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"useManagedDisks": {
"description": "A value indicating whether managed disks should be used during failover.",
"type": "string"
},
"useManagedDisksForReplication": {
"description": "A value indicating whether managed disks should be used during replication.",
"type": "string"
},
"vhdId": {
"description": "The OS disk VHD id associated with VM.",
"type": "string"
},
"vmName": {
"description": "The VM Name.",
"type": "string"
}
},
"required": [
"instanceType"
],
"type": "object"
},
{
"description": "VMware Azure specific enable protection input.",
"properties": {
"datastoreName": {
"description": "The target datastore name.",
"type": "string"
},
"diskExclusionInput": {
"description": "The enable disk exclusion input.",
"oneOf": [
{
"$ref": "#/definitions/InMageDiskExclusionInput"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"disksToInclude": {
"description": "The disks to include list.",
"oneOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"instanceType": {
"enum": [
"InMage"
],
"type": "string"
},
"masterTargetId": {
"description": "The Master Target Id.",
"type": "string"
},
"multiVmGroupId": {
"description": "The multi VM group Id.",
"type": "string"
},
"multiVmGroupName": {
"description": "The multi VM group name.",
"type": "string"
},
"processServerId": {
"description": "The Process Server Id.",
"type": "string"
},
"retentionDrive": {
"description": "The retention drive to use on the MT.",
"type": "string"
},
"runAsAccountId": {
"description": "The CS account Id.",
"type": "string"
},
"vmFriendlyName": {
"description": "The VM Name.",
"type": "string"
}
},
"required": [
"masterTargetId",
"processServerId",
"retentionDrive",
"multiVmGroupId",
"multiVmGroupName",
"instanceType"
],
"type": "object"
},
{
"description": "VMware Azure specific enable protection input.",
"properties": {
"diskEncryptionSetId": {
"description": "The DiskEncryptionSet ARM Id.",
"type": "string"
},
"diskType": {
"description": "The DiskType.",
"oneOf": [
{
"enum": [
"Standard_LRS",
"Premium_LRS",
"StandardSSD_LRS"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"disksToInclude": {
"description": "The disks to include list.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/InMageAzureV2DiskInputDetails"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"enableRdpOnTargetOption": {
"description": "The selected option to enable RDP\\SSH on target VM after failover. String value of SrsDataContract.EnableRDPOnTargetOption enum.",
"type": "string"
},
"instanceType": {
"enum": [
"InMageAzureV2"
],
"type": "string"
},
"licenseType": {
"description": "License type.",
"oneOf": [
{
"enum": [
"NotSpecified",
"NoLicenseType",
"WindowsServer"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"logStorageAccountId": {
"description": "The storage account to be used for logging during replication.",
"type": "string"
},
"masterTargetId": {
"description": "The Master target Id.",
"type": "string"
},
"multiVmGroupId": {
"description": "The multi VM group Id.",
"type": "string"
},
"multiVmGroupName": {
"description": "The multi VM group name.",
"type": "string"
},
"processServerId": {
"description": "The Process Server Id.",
"type": "string"
},
"runAsAccountId": {
"description": "The CS account Id.",
"type": "string"
},
"seedManagedDiskTags": {
"description": "The tags for the seed managed disks.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"sqlServerLicenseType": {
"description": "The SQL Server license type.",
"oneOf": [
{
"enum": [
"NotSpecified",
"NoLicenseType",
"PAYG",
"AHUB"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"storageAccountId": {
"description": "The storage account Id.",
"type": "string"
},
"targetAvailabilitySetId": {
"description": "The target availability set ARM Id for resource manager deployment.",
"type": "string"
},
"targetAvailabilityZone": {
"description": "The target availability zone.",
"type": "string"
},
"targetAzureNetworkId": {
"description": "The selected target Azure network Id.",
"type": "string"
},
"targetAzureSubnetId": {
"description": "The selected target Azure subnet Id.",
"type": "string"
},
"targetAzureV1ResourceGroupId": {
"description": "The Id of the target resource group (for classic deployment) in which the failover VM is to be created.",
"type": "string"
},
"targetAzureV2ResourceGroupId": {
"description": "The Id of the target resource group (for resource manager deployment) in which the failover VM is to be created.",
"type": "string"
},
"targetAzureVmName": {
"description": "The target azure VM Name.",
"type": "string"
},
"targetManagedDiskTags": {
"description": "The tags for the target managed disks.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"targetNicTags": {
"description": "The tags for the target NICs.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"targetProximityPlacementGroupId": {
"description": "The proximity placement group ARM Id.",
"type": "string"
},
"targetVmSize": {
"description": "The target VM size.",
"type": "string"
},
"targetVmTags": {
"description": "The target VM tags.",
"oneOf": [
{
"additionalProperties": {
"type": "string"
},
"properties": {},
"type": "object"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"instanceType"
],
"type": "object"
},
{
"description": "InMageRcm specific enable protection input.",
"properties": {
"disksDefault": {
"description": "The default disk input.",
"oneOf": [
{
"$ref": "#/definitions/InMageRcmDisksDefaultInput"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"disksToInclude": {
"description": "The disks to include list.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/InMageRcmDiskInput"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"fabricDiscoveryMachineId": {
"description": "The ARM Id of discovered machine.",
"type": "string"
},
"instanceType": {
"enum": [
"InMageRcm"
],
"type": "string"
},
"licenseType": {
"description": "The license type.",
"oneOf": [
{
"enum": [
"NotSpecified",
"NoLicenseType",
"WindowsServer"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"multiVmGroupName": {
"description": "The multi VM group name.",
"type": "string"
},
"processServerId": {
"description": "The process server Id.",
"type": "string"
},
"runAsAccountId": {
"description": "The run-as account Id.",
"type": "string"
},
"targetAvailabilitySetId": {
"description": "The target availability set ARM Id.",
"type": "string"
},
"targetAvailabilityZone": {
"description": "The target availability zone.",
"type": "string"
},
"targetBootDiagnosticsStorageAccountId": {
"description": "The target boot diagnostics storage account ARM Id.",
"type": "string"
},
"targetNetworkId": {
"description": "The selected target network ARM Id.",
"type": "string"
},
"targetProximityPlacementGroupId": {
"description": "The target proximity placement group Id.",
"type": "string"
},
"targetResourceGroupId": {
"description": "The target resource group ARM Id.",
"type": "string"
},
"targetSubnetName": {
"description": "The selected target subnet name.",
"type": "string"
},
"targetVmName": {
"description": "The target VM name.",
"type": "string"
},
"targetVmSize": {
"description": "The target VM size.",
"type": "string"
},
"testNetworkId": {
"description": "The selected test network ARM Id.",
"type": "string"
},
"testSubnetName": {
"description": "The selected test subnet name.",
"type": "string"
}
},
"required": [
"fabricDiscoveryMachineId",
"targetResourceGroupId",
"processServerId",
"instanceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"ExtendedLocation": {
"description": "Extended location of the resource.",
"properties": {
"name": {
"description": "The name of the extended location.",
"type": "string"
},
"type": {
"description": "The extended location type.",
"oneOf": [
{
"enum": [
"EdgeZone"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"name",
"type"
],
"type": "object"
},
"FabricCreationInputProperties": {
"description": "Properties of site details provided during the time of site creation.",
"properties": {
"customDetails": {
"description": "Fabric provider specific creation input.",
"oneOf": [
{
"$ref": "#/definitions/FabricSpecificCreationInput"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"FabricSpecificCreateNetworkMappingInput": {
"description": "Input details specific to fabrics during Network Mapping.",
"oneOf": [
{
"description": "Create network mappings input properties/behavior specific to Azure to Azure Network mapping.",
"properties": {
"instanceType": {
"enum": [
"AzureToAzure"
],
"type": "string"
},
"primaryNetworkId": {
"description": "The primary azure vnet Id.",
"type": "string"
}
},
"required": [
"primaryNetworkId",
"instanceType"
],
"type": "object"
},
{
"description": "Create network mappings input properties/behavior specific to Vmm to Azure Network mapping.",
"properties": {
"instanceType": {
"enum": [
"VmmToAzure"
],
"type": "string"
}
},
"required": [
"instanceType"
],
"type": "object"
},
{
"description": "Create network mappings input properties/behavior specific to vmm to vmm Network mapping.",
"properties": {
"instanceType": {
"enum": [
"VmmToVmm"
],
"type": "string"
}
},
"required": [
"instanceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"FabricSpecificCreationInput": {
"description": "Fabric provider specific settings.",
"oneOf": [
{
"description": "Fabric provider specific settings.",
"properties": {
"instanceType": {
"enum": [
"Azure"
],
"type": "string"
},
"location": {
"description": "The Location.",
"type": "string"
}
},
"required": [
"instanceType"
],
"type": "object"
},
{
"description": "InMageRcm fabric provider specific settings.",
"properties": {
"instanceType": {
"enum": [
"InMageRcm"
],
"type": "string"
},
"physicalSiteId": {
"description": "The ARM Id of the physical site.",
"type": "string"
},
"sourceAgentIdentity": {
"description": "The identity provider input for source agent authentication.",
"oneOf": [
{
"$ref": "#/definitions/IdentityProviderInput"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"vmwareSiteId": {
"description": "The ARM Id of the VMware site.",
"type": "string"
}
},
"required": [
"vmwareSiteId",
"physicalSiteId",
"sourceAgentIdentity",
"instanceType"
],
"type": "object"
},
{
"description": "VMwareV2 fabric provider specific settings.",
"properties": {
"instanceType": {
"enum": [
"VMwareV2"
],
"type": "string"
},
"migrationSolutionId": {
"description": "The ARM Id of the migration solution.",
"type": "string"
},
"physicalSiteId": {
"description": "The ARM Id of the physical site.",
"type": "string"
},
"vmwareSiteId": {
"description": "The ARM Id of the VMware site.",
"type": "string"
}
},
"required": [
"migrationSolutionId",
"instanceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"HyperVReplicaAzureDiskInputDetails": {
"description": "Disk input details.",
"properties": {
"diskEncryptionSetId": {
"description": "The DiskEncryptionSet ARM ID.",
"type": "string"
},
"diskId": {
"description": "The DiskId.",
"type": "string"
},
"diskType": {
"description": "The DiskType.",
"oneOf": [
{
"enum": [
"Standard_LRS",
"Premium_LRS",
"StandardSSD_LRS"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"logStorageAccountId": {
"description": "The LogStorageAccountId.",
"type": "string"
}
},
"type": "object"
},
"IdentityProviderInput": {
"description": "Identity provider input.",
"properties": {
"aadAuthority": {
"description": "The base authority for Azure Active Directory authentication.",
"type": "string"
},
"applicationId": {
"description": "The application/client Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.",
"type": "string"
},
"audience": {
"description": "The intended Audience of the service principal with which the on-premise management/data plane components would communicate with our Azure services.",
"type": "string"
},
"objectId": {
"description": "The object Id of the service principal with which the on-premise management/data plane components would communicate with our Azure services.",
"type": "string"
},
"tenantId": {
"description": "The tenant Id for the service principal with which the on-premise management/data plane components would communicate with our Azure services.",
"type": "string"
}
},
"required": [
"tenantId",
"applicationId",
"objectId",
"audience",
"aadAuthority"
],
"type": "object"
},
"InMageAzureV2DiskInputDetails": {
"description": "Disk input details.",
"properties": {
"diskEncryptionSetId": {
"description": "The DiskEncryptionSet ARM ID.",
"type": "string"
},
"diskId": {
"description": "The DiskId.",
"type": "string"
},
"diskType": {
"description": "The DiskType.",
"oneOf": [
{
"enum": [
"Standard_LRS",
"Premium_LRS",
"StandardSSD_LRS"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"logStorageAccountId": {
"description": "The LogStorageAccountId.",
"type": "string"
}
},
"type": "object"
},
"InMageDiskExclusionInput": {
"description": "DiskExclusionInput when doing enable protection of virtual machine in InMage provider.",
"properties": {
"diskSignatureOptions": {
"description": "The guest disk signature based option for disk exclusion.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/InMageDiskSignatureExclusionOptions"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"volumeOptions": {
"description": "The volume label based option for disk exclusion.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/InMageVolumeExclusionOptions"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"InMageDiskSignatureExclusionOptions": {
"description": "Guest disk signature based disk exclusion option when doing enable protection of virtual machine in InMage provider.",
"properties": {
"diskSignature": {
"description": "The guest signature of disk to be excluded from replication.",
"type": "string"
}
},
"type": "object"
},
"InMageRcmDiskInput": {
"description": "InMageRcm disk input.",
"properties": {
"diskEncryptionSetId": {
"description": "The DiskEncryptionSet ARM Id.",
"type": "string"
},
"diskId": {
"description": "The disk Id.",
"type": "string"
},
"diskType": {
"description": "The disk type.",
"oneOf": [
{
"enum": [
"Standard_LRS",
"Premium_LRS",
"StandardSSD_LRS"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"logStorageAccountId": {
"description": "The log storage account ARM Id.",
"type": "string"
}
},
"required": [
"diskId",
"logStorageAccountId",
"diskType"
],
"type": "object"
},
"InMageRcmDisksDefaultInput": {
"description": "InMageRcm disk input.",
"properties": {
"diskEncryptionSetId": {
"description": "The DiskEncryptionSet ARM Id.",
"type": "string"
},
"diskType": {
"description": "The disk type.",
"oneOf": [
{
"enum": [
"Standard_LRS",
"Premium_LRS",
"StandardSSD_LRS"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"logStorageAccountId": {
"description": "The log storage account ARM Id.",
"type": "string"
}
},
"required": [
"logStorageAccountId",
"diskType"
],
"type": "object"
},
"InMageVolumeExclusionOptions": {
"description": "Guest disk signature based disk exclusion option when doing enable protection of virtual machine in InMage provider.",
"properties": {
"onlyExcludeIfSingleVolume": {
"description": "The value indicating whether to exclude multi volume disk or not. If a disk has multiple volumes and one of the volume has label matching with VolumeLabel this disk will be excluded from replication if OnlyExcludeIfSingleVolume is false.",
"type": "string"
},
"volumeLabel": {
"description": "The volume label. The disk having any volume with this label will be excluded from replication.",
"type": "string"
}
},
"type": "object"
},
"KeyEncryptionKeyInfo": {
"description": "Key Encryption Key (KEK) information.",
"properties": {
"keyIdentifier": {
"description": "The key URL / identifier.",
"type": "string"
},
"keyVaultResourceArmId": {
"description": "The KeyVault resource ARM Id for key.",
"type": "string"
}
},
"type": "object"
},
"PolicyProviderSpecificInput": {
"description": "Base class for provider specific input.",
"oneOf": [
{
"description": "A2A Policy creation input.",
"properties": {
"appConsistentFrequencyInMinutes": {
"description": "The app consistent snapshot frequency (in minutes).",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"crashConsistentFrequencyInMinutes": {
"description": "The crash consistent snapshot frequency (in minutes).",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"instanceType": {
"enum": [
"A2A"
],
"type": "string"
},
"multiVmSyncStatus": {
"description": "A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.",
"oneOf": [
{
"enum": [
"Enable",
"Disable"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryPointHistory": {
"description": "The duration in minutes until which the recovery points need to be stored.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"multiVmSyncStatus",
"instanceType"
],
"type": "object"
},
{
"description": "A2A Cross-Cluster Migration Policy creation input.",
"properties": {
"instanceType": {
"enum": [
"A2ACrossClusterMigration"
],
"type": "string"
}
},
"required": [
"instanceType"
],
"type": "object"
},
{
"description": "HyperV Replica Blue policy input.",
"properties": {
"allowedAuthenticationType": {
"description": "A value indicating the authentication type.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"applicationConsistentSnapshotFrequencyInHours": {
"description": "A value indicating the application consistent frequency.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"compression": {
"description": "A value indicating whether compression has to be enabled.",
"type": "string"
},
"initialReplicationMethod": {
"description": "A value indicating whether IR is online.",
"type": "string"
},
"instanceType": {
"enum": [
"HyperVReplica2012R2"
],
"type": "string"
},
"offlineReplicationExportPath": {
"description": "A value indicating the offline IR export path.",
"type": "string"
},
"offlineReplicationImportPath": {
"description": "A value indicating the offline IR import path.",
"type": "string"
},
"onlineReplicationStartTime": {
"description": "A value indicating the online IR start time.",
"type": "string"
},
"recoveryPoints": {
"description": "A value indicating the number of recovery points.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"replicaDeletion": {
"description": "A value indicating whether the VM has to be auto deleted.",
"type": "string"
},
"replicationFrequencyInSeconds": {
"description": "A value indicating the replication interval.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"replicationPort": {
"description": "A value indicating the recovery HTTPS port.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"instanceType"
],
"type": "object"
},
{
"description": "Hyper-V Replica Azure specific input for creating a protection profile.",
"properties": {
"applicationConsistentSnapshotFrequencyInHours": {
"description": "The interval (in hours) at which Hyper-V Replica should create an application consistent snapshot within the VM.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"instanceType": {
"enum": [
"HyperVReplicaAzure"
],
"type": "string"
},
"onlineReplicationStartTime": {
"description": "The scheduled start time for the initial replication. If this parameter is Null, the initial replication starts immediately.",
"type": "string"
},
"recoveryPointHistoryDuration": {
"description": "The duration (in hours) to which point the recovery history needs to be maintained.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"replicationInterval": {
"description": "The replication interval.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"storageAccounts": {
"description": "The list of storage accounts to which the VMs in the primary cloud can replicate to.",
"oneOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"instanceType"
],
"type": "object"
},
{
"description": "VMWare Azure specific protection profile Input.",
"properties": {
"appConsistentFrequencyInMinutes": {
"description": "The app consistent snapshot frequency (in minutes).",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"instanceType": {
"enum": [
"InMage"
],
"type": "string"
},
"multiVmSyncStatus": {
"description": "A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.",
"oneOf": [
{
"enum": [
"Enable",
"Disable"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryPointHistory": {
"description": "The duration in minutes until which the recovery points need to be stored.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryPointThresholdInMinutes": {
"description": "The recovery point threshold in minutes.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"multiVmSyncStatus",
"instanceType"
],
"type": "object"
},
{
"description": "VMWare Azure specific policy Input.",
"properties": {
"appConsistentFrequencyInMinutes": {
"description": "The app consistent snapshot frequency (in minutes).",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"crashConsistentFrequencyInMinutes": {
"description": "The crash consistent snapshot frequency (in minutes).",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"instanceType": {
"enum": [
"InMageAzureV2"
],
"type": "string"
},
"multiVmSyncStatus": {
"description": "A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.",
"oneOf": [
{
"enum": [
"Enable",
"Disable"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryPointHistory": {
"description": "The duration in minutes until which the recovery points need to be stored.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryPointThresholdInMinutes": {
"description": "The recovery point threshold in minutes.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"multiVmSyncStatus",
"instanceType"
],
"type": "object"
},
{
"description": "InMageRcm policy creation input.",
"properties": {
"appConsistentFrequencyInMinutes": {
"description": "The app consistent snapshot frequency (in minutes).",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"crashConsistentFrequencyInMinutes": {
"description": "The crash consistent snapshot frequency (in minutes).",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"enableMultiVmSync": {
"description": "A value indicating whether multi-VM sync has to be enabled.",
"type": "string"
},
"instanceType": {
"enum": [
"InMageRcm"
],
"type": "string"
},
"recoveryPointHistoryInMinutes": {
"description": "The duration in minutes until which the recovery points need to be stored.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"instanceType"
],
"type": "object"
},
{
"description": "InMageRcmFailback policy creation input.",
"properties": {
"appConsistentFrequencyInMinutes": {
"description": "The app consistent snapshot frequency (in minutes).",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"crashConsistentFrequencyInMinutes": {
"description": "The crash consistent snapshot frequency (in minutes).",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"instanceType": {
"enum": [
"InMageRcmFailback"
],
"type": "string"
}
},
"required": [
"instanceType"
],
"type": "object"
},
{
"description": "VMware Cbt policy creation input.",
"properties": {
"appConsistentFrequencyInMinutes": {
"description": "The app consistent snapshot frequency (in minutes).",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"crashConsistentFrequencyInMinutes": {
"description": "The crash consistent snapshot frequency (in minutes).",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"instanceType": {
"enum": [
"VMwareCbt"
],
"type": "string"
},
"recoveryPointHistoryInMinutes": {
"description": "The duration in minutes until which the recovery points need to be stored.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"instanceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"ProtectionProfileCustomDetails": {
"description": "Protection Profile custom input.",
"oneOf": [
{
"description": "Existing storage account input.",
"properties": {
"protectionProfileId": {
"description": "The protection profile Arm Id. Throw error, if resource does not exists.",
"type": "string"
},
"resourceType": {
"enum": [
"Existing"
],
"type": "string"
}
},
"required": [
"protectionProfileId",
"resourceType"
],
"type": "object"
},
{
"description": "New Protection profile input.",
"properties": {
"appConsistentFrequencyInMinutes": {
"description": "The app consistent snapshot frequency (in minutes).",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"crashConsistentFrequencyInMinutes": {
"description": "The crash consistent snapshot frequency (in minutes).",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"multiVmSyncStatus": {
"description": "A value indicating whether multi-VM sync has to be enabled. Value should be 'Enabled' or 'Disabled'.",
"oneOf": [
{
"enum": [
"Enable",
"Disable"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"policyName": {
"description": "The protection profile input.",
"type": "string"
},
"recoveryPointHistory": {
"description": "The duration in minutes until which the recovery points need to be stored.",
"oneOf": [
{
"type": "integer"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"resourceType": {
"enum": [
"New"
],
"type": "string"
}
},
"required": [
"policyName",
"multiVmSyncStatus",
"resourceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"RecoveryAvailabilitySetCustomDetails": {
"description": "Recovery Availability Set custom input.",
"oneOf": [
{
"description": "Existing recovery availability set input.",
"properties": {
"recoveryAvailabilitySetId": {
"description": "The recovery availability set Id. Will throw error, if resource does not exist.",
"type": "string"
},
"resourceType": {
"enum": [
"Existing"
],
"type": "string"
}
},
"required": [
"resourceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"RecoveryPlanAction": {
"description": "Recovery plan action details.",
"properties": {
"actionName": {
"description": "The action name.",
"type": "string"
},
"customDetails": {
"description": "The custom details.",
"oneOf": [
{
"$ref": "#/definitions/RecoveryPlanActionDetails"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"failoverDirections": {
"description": "The list of failover directions.",
"oneOf": [
{
"items": {
"enum": [
"PrimaryToRecovery",
"RecoveryToPrimary"
],
"type": "string"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"failoverTypes": {
"description": "The list of failover types.",
"oneOf": [
{
"items": {
"enum": [
"ReverseReplicate",
"Commit",
"PlannedFailover",
"UnplannedFailover",
"DisableProtection",
"TestFailover",
"TestFailoverCleanup",
"Failback",
"FinalizeFailback",
"CancelFailover",
"ChangePit",
"RepairReplication",
"SwitchProtection",
"CompleteMigration"
],
"type": "string"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"actionName",
"failoverTypes",
"failoverDirections",
"customDetails"
],
"type": "object"
},
"RecoveryPlanActionDetails": {
"description": "Recovery plan action custom details.",
"oneOf": [
{
"description": "Recovery plan Automation runbook action details.",
"properties": {
"fabricLocation": {
"description": "The fabric location.",
"oneOf": [
{
"enum": [
"Primary",
"Recovery"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"instanceType": {
"enum": [
"AutomationRunbookActionDetails"
],
"type": "string"
},
"runbookId": {
"description": "The runbook ARM Id.",
"type": "string"
},
"timeout": {
"description": "The runbook timeout.",
"type": "string"
}
},
"required": [
"fabricLocation",
"instanceType"
],
"type": "object"
},
{
"description": "Recovery plan manual action details.",
"properties": {
"description": {
"description": "The manual action description.",
"type": "string"
},
"instanceType": {
"enum": [
"ManualActionDetails"
],
"type": "string"
}
},
"required": [
"instanceType"
],
"type": "object"
},
{
"description": "Recovery plan script action details.",
"properties": {
"fabricLocation": {
"description": "The fabric location.",
"oneOf": [
{
"enum": [
"Primary",
"Recovery"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"instanceType": {
"enum": [
"ScriptActionDetails"
],
"type": "string"
},
"path": {
"description": "The script path.",
"type": "string"
},
"timeout": {
"description": "The script timeout.",
"type": "string"
}
},
"required": [
"path",
"fabricLocation",
"instanceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"RecoveryPlanGroup": {
"description": "Recovery plan group details.",
"properties": {
"endGroupActions": {
"description": "The end group actions.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/RecoveryPlanAction"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"groupType": {
"description": "The group type.",
"oneOf": [
{
"enum": [
"Shutdown",
"Boot",
"Failover"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"replicationProtectedItems": {
"description": "The list of protected items.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/RecoveryPlanProtectedItem"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"startGroupActions": {
"description": "The start group actions.",
"oneOf": [
{
"items": {
"$ref": "#/definitions/RecoveryPlanAction"
},
"type": "array"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"required": [
"groupType"
],
"type": "object"
},
"RecoveryPlanProtectedItem": {
"description": "Recovery plan protected item.",
"properties": {
"id": {
"description": "The ARM Id of the recovery plan protected item.",
"type": "string"
},
"virtualMachineId": {
"description": "The virtual machine Id.",
"type": "string"
}
},
"type": "object"
},
"RecoveryPlanProviderSpecificInput": {
"description": "Recovery plan provider specific input base class.",
"oneOf": [
{
"description": "Recovery plan A2A input.",
"properties": {
"instanceType": {
"enum": [
"A2A"
],
"type": "string"
},
"primaryExtendedLocation": {
"description": "The primary extended location.",
"oneOf": [
{
"$ref": "#/definitions/ExtendedLocation"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"primaryZone": {
"description": "The primary zone.",
"type": "string"
},
"recoveryExtendedLocation": {
"description": "The recovery extended location.",
"oneOf": [
{
"$ref": "#/definitions/ExtendedLocation"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"recoveryZone": {
"description": "The recovery zone.",
"type": "string"
}
},
"required": [
"instanceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"RecoveryProximityPlacementGroupCustomDetails": {
"description": "Recovery Proximity placement group custom input.",
"oneOf": [
{
"description": "Existing recovery proximity placement group input.",
"properties": {
"recoveryProximityPlacementGroupId": {
"description": "The recovery proximity placement group Id. Will throw error, if resource does not exist.",
"type": "string"
},
"resourceType": {
"enum": [
"Existing"
],
"type": "string"
}
},
"required": [
"resourceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"RecoveryResourceGroupCustomDetails": {
"description": "Recovery Resource Group custom input.",
"oneOf": [
{
"description": "Existing recovery resource group input.",
"properties": {
"recoveryResourceGroupId": {
"description": "The recovery resource group Id. Valid for V2 scenarios.",
"type": "string"
},
"resourceType": {
"enum": [
"Existing"
],
"type": "string"
}
},
"required": [
"resourceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"RecoveryVirtualNetworkCustomDetails": {
"description": "Recovery Virtual network custom input.",
"oneOf": [
{
"description": "Existing recovery virtual network input.",
"properties": {
"recoverySubnetName": {
"description": "The recovery subnet name.",
"type": "string"
},
"recoveryVirtualNetworkId": {
"description": "The recovery virtual network Id. Will throw error, if resource does not exist.",
"type": "string"
},
"resourceType": {
"enum": [
"Existing"
],
"type": "string"
}
},
"required": [
"recoveryVirtualNetworkId",
"resourceType"
],
"type": "object"
},
{
"description": "Recovery virtual network input to create new virtual network from given source network.",
"properties": {
"recoveryVirtualNetworkName": {
"description": "The recovery virtual network name.",
"type": "string"
},
"recoveryVirtualNetworkResourceGroupName": {
"description": "The name of the resource group to be used to create the recovery virtual network. If absent, target network would be created in the same resource group as target VM.",
"type": "string"
},
"resourceType": {
"enum": [
"New"
],
"type": "string"
}
},
"required": [
"resourceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"ReplicationProviderSpecificContainerCreationInput": {
"description": "Provider specific input for container creation operation.",
"oneOf": [
{
"description": "A2A cloud creation input.",
"properties": {
"instanceType": {
"enum": [
"A2A"
],
"type": "string"
}
},
"required": [
"instanceType"
],
"type": "object"
},
{
"description": "A2ACrossClusterMigration cloud creation input.",
"properties": {
"instanceType": {
"enum": [
"A2ACrossClusterMigration"
],
"type": "string"
}
},
"required": [
"instanceType"
],
"type": "object"
},
{
"description": "VMwareCbt container creation input.",
"properties": {
"instanceType": {
"enum": [
"VMwareCbt"
],
"type": "string"
}
},
"required": [
"instanceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"ReplicationProviderSpecificContainerMappingInput": {
"description": "Provider specific input for pairing operations.",
"oneOf": [
{
"description": "A2A container mapping input.",
"properties": {
"agentAutoUpdateStatus": {
"description": "A value indicating whether the auto update is enabled.",
"oneOf": [
{
"enum": [
"Disabled",
"Enabled"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"automationAccountArmId": {
"description": "The automation account arm id.",
"type": "string"
},
"automationAccountAuthenticationType": {
"description": "A value indicating the type authentication to use for automation Account.",
"oneOf": [
{
"enum": [
"RunAsAccount",
"SystemAssignedIdentity"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"instanceType": {
"enum": [
"A2A"
],
"type": "string"
}
},
"required": [
"instanceType"
],
"type": "object"
},
{
"description": "VMwareCbt container mapping input.",
"properties": {
"instanceType": {
"enum": [
"VMwareCbt"
],
"type": "string"
},
"keyVaultId": {
"description": "The target key vault ARM Id.",
"type": "string"
},
"keyVaultUri": {
"description": "The target key vault URL.",
"type": "string"
},
"serviceBusConnectionStringSecretName": {
"description": "The secret name of the service bus connection string.",
"type": "string"
},
"storageAccountId": {
"description": "The storage account ARM Id.",
"type": "string"
},
"storageAccountSasSecretName": {
"description": "The secret name of the storage account.",
"type": "string"
},
"targetLocation": {
"description": "The target location.",
"type": "string"
}
},
"required": [
"storageAccountId",
"targetLocation",
"instanceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"StorageAccountCustomDetails": {
"description": "Storage account custom input.",
"oneOf": [
{
"description": "Existing storage account input.",
"properties": {
"azureStorageAccountId": {
"description": "The storage account Arm Id. Throw error, if resource does not exists.",
"type": "string"
},
"resourceType": {
"enum": [
"Existing"
],
"type": "string"
}
},
"required": [
"azureStorageAccountId",
"resourceType"
],
"type": "object"
}
],
"properties": {},
"type": "object"
},
"StorageMappingInputProperties": {
"description": "Storage mapping input properties.",
"properties": {
"targetStorageClassificationId": {
"description": "The ID of the storage object.",
"type": "string"
}
},
"type": "object"
},
"VMwareCbtDiskInput": {
"description": "VMwareCbt disk input.",
"properties": {
"diskEncryptionSetId": {
"description": "The DiskEncryptionSet ARM Id.",
"type": "string"
},
"diskId": {
"description": "The disk Id.",
"type": "string"
},
"diskType": {
"description": "The disk type.",
"oneOf": [
{
"enum": [
"Standard_LRS",
"Premium_LRS",
"StandardSSD_LRS"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"isOSDisk": {
"description": "A value indicating whether the disk is the OS disk.",
"type": "string"
},
"logStorageAccountId": {
"description": "The log storage account ARM Id.",
"type": "string"
},
"logStorageAccountSasSecretName": {
"description": "The key vault secret name of the log storage account.",
"type": "string"
}
},
"required": [
"diskId",
"isOSDisk",
"logStorageAccountId",
"logStorageAccountSasSecretName"
],
"type": "object"
},
"VMwareCbtSecurityProfileProperties": {
"description": "VMwareCbt security profile input.",
"properties": {
"isTargetVmConfidentialEncryptionEnabled": {
"description": "A value indicating whether confidential compute encryption to be enabled.",
"type": "string"
},
"isTargetVmIntegrityMonitoringEnabled": {
"description": "A value indicating whether integrity monitoring to be enabled.",
"type": "string"
},
"isTargetVmSecureBootEnabled": {
"description": "A value indicating whether secure boot to be enabled.",
"type": "string"
},
"isTargetVmTpmEnabled": {
"description": "A value indicating whether trusted platform module to be enabled.",
"type": "string"
},
"targetVmSecurityType": {
"description": "The target VM security type.",
"oneOf": [
{
"enum": [
"None",
"TrustedLaunch",
"ConfidentialVM"
],
"type": "string"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
}
},
"type": "object"
},
"VaultSettingCreationInputProperties": {
"description": "Input to create vault setting.",
"properties": {
"migrationSolutionId": {
"description": "The migration solution Id.",
"type": "string"
},
"vmwareToAzureProviderType": {
"description": "VMware to Azure provider type.",
"type": "string"
}
},
"type": "object"
},
"vaults_replicationFabrics_replicationProtectionContainers_childResource": {
"description": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "Unique protection container ARM name.",
"type": "string"
},
"properties": {
"description": "Create protection container input properties.",
"oneOf": [
{
"$ref": "#/definitions/CreateProtectionContainerInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"replicationProtectionContainers"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationFabrics_replicationProtectionContainers_replicationMigrationItems_childResource": {
"description": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationMigrationItems",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "Migration item name.",
"type": "string"
},
"properties": {
"description": "Enable migration input properties.",
"oneOf": [
{
"$ref": "#/definitions/EnableMigrationInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"replicationMigrationItems"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationFabrics_replicationProtectionContainers_replicationProtectedItems_childResource": {
"description": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectedItems",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "A name for the replication protected item.",
"type": "string"
},
"properties": {
"description": "Enable protection input properties.",
"oneOf": [
{
"$ref": "#/definitions/EnableProtectionInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"replicationProtectedItems"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationFabrics_replicationProtectionContainers_replicationProtectionContainerMappings_childResource": {
"description": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationProtectionContainers/replicationProtectionContainerMappings",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "Protection container mapping name.",
"type": "string"
},
"properties": {
"description": "Configure protection input properties.",
"oneOf": [
{
"$ref": "#/definitions/CreateProtectionContainerMappingInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"replicationProtectionContainerMappings"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationFabrics_replicationRecoveryServicesProviders_childResource": {
"description": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationRecoveryServicesProviders",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "Recovery services provider name.",
"type": "string"
},
"properties": {
"description": "The properties of an add provider request.",
"oneOf": [
{
"$ref": "#/definitions/AddRecoveryServicesProviderInputProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"replicationRecoveryServicesProviders"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
},
"vaults_replicationFabrics_replicationvCenters_childResource": {
"description": "Microsoft.RecoveryServices/vaults/replicationFabrics/replicationvCenters",
"properties": {
"apiVersion": {
"enum": [
"2023-02-01"
],
"type": "string"
},
"name": {
"description": "vcenter name.",
"type": "string"
},
"properties": {
"description": "The properties of an add vCenter request.",
"oneOf": [
{
"$ref": "#/definitions/AddVCenterRequestProperties"
},
{
"$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression"
}
]
},
"type": {
"enum": [
"replicationvCenters"
],
"type": "string"
}
},
"required": [
"name",
"properties",
"apiVersion",
"type"
],
"type": "object"
}
}
}