From d537d197e5b541d1f9f767b9aef483f65ff9993b Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 18 May 2021 08:32:35 +0000 Subject: [PATCH 01/17] Autogenerate schemas --- schemas/2018-11-01-preview/Microsoft.Blueprint.json | 5 ----- 1 file changed, 5 deletions(-) diff --git a/schemas/2018-11-01-preview/Microsoft.Blueprint.json b/schemas/2018-11-01-preview/Microsoft.Blueprint.json index 18bcb727a9..c28cde4a70 100644 --- a/schemas/2018-11-01-preview/Microsoft.Blueprint.json +++ b/schemas/2018-11-01-preview/Microsoft.Blueprint.json @@ -324,11 +324,6 @@ "maxLength": 256, "description": "One-liner string explain this resource." }, - "layout": { - "type": "object", - "properties": {}, - "description": "Layout view of the blueprint definition for UI reference." - }, "parameters": { "oneOf": [ { From dd11c7e39ad622d2dbc6b1ecd5191e2c55e1aa22 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 18 May 2021 08:32:46 +0000 Subject: [PATCH 02/17] Update resource list --- generator/resources.json | 48 +++++++++++++++++++++++++++++----------- 1 file changed, 35 insertions(+), 13 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index c5994aa20d..419e01394e 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -8,57 +8,79 @@ "Microsoft.AVS/privateClouds": [ "2020-03-20", "2020-07-17-preview", - "2021-01-01-preview" + "2021-01-01-preview", + "2021-06-01" ], "Microsoft.AVS/privateClouds/addons": [ "2020-07-17-preview", - "2021-01-01-preview" + "2021-01-01-preview", + "2021-06-01" ], "Microsoft.AVS/privateClouds/authorizations": [ "2020-03-20", "2020-07-17-preview", - "2021-01-01-preview" + "2021-01-01-preview", + "2021-06-01" + ], + "Microsoft.AVS/privateClouds/cloudLinks": [ + "2021-06-01" ], "Microsoft.AVS/privateClouds/clusters": [ "2020-03-20", "2020-07-17-preview", - "2021-01-01-preview" + "2021-01-01-preview", + "2021-06-01" ], "Microsoft.AVS/privateClouds/clusters/datastores": [ - "2021-01-01-preview" + "2021-01-01-preview", + "2021-06-01" ], "Microsoft.AVS/privateClouds/globalReachConnections": [ "2020-07-17-preview", - "2021-01-01-preview" + "2021-01-01-preview", + "2021-06-01" ], "Microsoft.AVS/privateClouds/hcxEnterpriseSites": [ "2020-03-20", "2020-07-17-preview", - "2021-01-01-preview" + "2021-01-01-preview", + "2021-06-01" + ], + "Microsoft.AVS/privateClouds/scriptExecutions": [ + "2021-06-01" ], "Microsoft.AVS/privateClouds/workloadNetworks/dhcpConfigurations": [ "2020-07-17-preview", - "2021-01-01-preview" + "2021-01-01-preview", + "2021-06-01" ], "Microsoft.AVS/privateClouds/workloadNetworks/dnsServices": [ "2020-07-17-preview", - "2021-01-01-preview" + "2021-01-01-preview", + "2021-06-01" ], "Microsoft.AVS/privateClouds/workloadNetworks/dnsZones": [ "2020-07-17-preview", - "2021-01-01-preview" + "2021-01-01-preview", + "2021-06-01" ], "Microsoft.AVS/privateClouds/workloadNetworks/portMirroringProfiles": [ "2020-07-17-preview", - "2021-01-01-preview" + "2021-01-01-preview", + "2021-06-01" + ], + "Microsoft.AVS/privateClouds/workloadNetworks/publicIPs": [ + "2021-06-01" ], "Microsoft.AVS/privateClouds/workloadNetworks/segments": [ "2020-07-17-preview", - "2021-01-01-preview" + "2021-01-01-preview", + "2021-06-01" ], "Microsoft.AVS/privateClouds/workloadNetworks/vmGroups": [ "2020-07-17-preview", - "2021-01-01-preview" + "2021-01-01-preview", + "2021-06-01" ], "Microsoft.Aad/domainServices/ouContainer": [ "2017-06-01", From 0b9a06469f6c2fc633b27dcb09bd216f19670eb1 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 18 May 2021 09:19:23 +0000 Subject: [PATCH 03/17] Autogenerate schemas --- .../Microsoft.MachineLearningServices.json | 232 ++++++++++++++++++ 1 file changed, 232 insertions(+) diff --git a/schemas/2021-03-01-preview/Microsoft.MachineLearningServices.json b/schemas/2021-03-01-preview/Microsoft.MachineLearningServices.json index 8a23c1b5f5..019d384649 100644 --- a/schemas/2021-03-01-preview/Microsoft.MachineLearningServices.json +++ b/schemas/2021-03-01-preview/Microsoft.MachineLearningServices.json @@ -3492,6 +3492,17 @@ ], "description": "Settings for a personal compute instance." }, + "schedules": { + "oneOf": [ + { + "$ref": "#/definitions/ComputeSchedules" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of schedules to be applied on the computes" + }, "setupScripts": { "oneOf": [ { @@ -3557,6 +3568,96 @@ }, "description": "Specifies policy and settings for SSH access." }, + "ComputeSchedules": { + "type": "object", + "properties": { + "computeStartStop": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ComputeStartStopSchedule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of compute start stop schedules to be applied." + } + }, + "description": "The list of schedules to be applied on the computes" + }, + "ComputeStartStopSchedule": { + "type": "object", + "properties": { + "action": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Start", + "Stop" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "cron": { + "oneOf": [ + { + "$ref": "#/definitions/Cron" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The workflow trigger cron for ComputeStartStop schedule type." + }, + "recurrence": { + "oneOf": [ + { + "$ref": "#/definitions/Recurrence" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The workflow trigger recurrence for ComputeStartStop schedule type." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "triggerType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Recurrence", + "Cron" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "description": "Compute start stop schedule properties" + }, "ContainerResourceRequirements": { "type": "object", "properties": { @@ -3790,6 +3891,24 @@ }, "description": "The authentication keys." }, + "Cron": { + "type": "object", + "properties": { + "expression": { + "type": "string", + "description": "The cron expression." + }, + "startTime": { + "type": "string", + "description": "The start time." + }, + "timeZone": { + "type": "string", + "description": "The time zone." + } + }, + "description": "The workflow trigger cron for ComputeStartStop schedule type." + }, "Databricks": { "type": "object", "properties": { @@ -6505,6 +6624,119 @@ } } }, + "Recurrence": { + "type": "object", + "properties": { + "frequency": { + "oneOf": [ + { + "type": "string", + "enum": [ + "NotSpecified", + "Second", + "Minute", + "Hour", + "Day", + "Week", + "Month", + "Year" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "interval": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The interval." + }, + "schedule": { + "oneOf": [ + { + "$ref": "#/definitions/RecurrenceSchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The recurrence schedule" + }, + "startTime": { + "type": "string", + "description": "The start time." + }, + "timeZone": { + "type": "string", + "description": "The time zone." + } + }, + "description": "The workflow trigger recurrence for ComputeStartStop schedule type." + }, + "RecurrenceSchedule": { + "type": "object", + "properties": { + "hours": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "integer" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The hours." + }, + "minutes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "integer" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The minutes." + }, + "weekDays": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The days of the week." + } + }, + "description": "The recurrence schedule" + }, "ResourceId": { "type": "object", "properties": { From c59be82c322f38b76e1a1a3652d412fe2fa07836 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 18 May 2021 10:24:41 +0000 Subject: [PATCH 04/17] Autogenerate schemas --- .../Microsoft.RecoveryServices.Backup.json | 3990 +++++++++++++++++ schemas/common/autogeneratedResources.json | 21 + 2 files changed, 4011 insertions(+) create mode 100644 schemas/2021-04-01/Microsoft.RecoveryServices.Backup.json diff --git a/schemas/2021-04-01/Microsoft.RecoveryServices.Backup.json b/schemas/2021-04-01/Microsoft.RecoveryServices.Backup.json new file mode 100644 index 0000000000..16a9fcbd8f --- /dev/null +++ b/schemas/2021-04-01/Microsoft.RecoveryServices.Backup.json @@ -0,0 +1,3990 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-04-01/Microsoft.RecoveryServices.Backup.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.RecoveryServices", + "description": "Microsoft RecoveryServices Resource Types", + "resourceDefinitions": { + "vaults_backupconfig": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-04-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/vaultconfig$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BackupResourceVaultConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup resource vault config details." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.RecoveryServices/vaults/backupconfig" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupconfig" + }, + "vaults_backupEncryptionConfigs": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-04-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/backupResourceEncryptionConfig$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BackupResourceEncryptionConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.RecoveryServices/vaults/backupEncryptionConfigs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupEncryptionConfigs" + }, + "vaults_backupFabrics_backupProtectionIntent": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-04-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "Intent object name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ProtectionIntent" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup ProtectionIntent." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.RecoveryServices/vaults/backupFabrics/backupProtectionIntent" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupFabrics/backupProtectionIntent" + }, + "vaults_backupFabrics_protectionContainers": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-04-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "Name of the container to be registered." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ProtectionContainer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for container with backup items. Containers with specific workloads are derived from this class." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/vaults_backupFabrics_protectionContainers_protectedItems_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers" + }, + "vaults_backupFabrics_protectionContainers_protectedItems": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-04-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "Item name to be backed up." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ProtectedItem" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup items." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems" + }, + "vaults_backupPolicies": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-04-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "Backup policy to be created." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ProtectionPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup policy. Workload-specific backup policies are derived from this class." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.RecoveryServices/vaults/backupPolicies" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupPolicies" + }, + "vaults_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-04-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnection" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Private Endpoint Connection Response Properties" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.RecoveryServices/vaults/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/privateEndpointConnections" + } + }, + "definitions": { + "AzureBackupServerContainer": { + "type": "object", + "properties": { + "containerType": { + "type": "string", + "enum": [ + "AzureBackupServerContainer" + ] + } + }, + "required": [ + "containerType" + ], + "description": "AzureBackupServer (DPMVenus) workload-specific protection container." + }, + "AzureFileshareProtectedItem": { + "type": "object", + "properties": { + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/AzureFileshareProtectedItemExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information about Azure File Share backup item." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of the fileshare represented by this backup item." + }, + "kpisHealths": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KPIResourceHealthDetails" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health details of different KPIs" + }, + "lastBackupStatus": { + "type": "string", + "description": "Last backup operation status. Possible values: Healthy, Unhealthy." + }, + "lastBackupTime": { + "type": "string", + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item." + }, + "protectedItemType": { + "type": "string", + "enum": [ + "AzureFileShareProtectedItem" + ] + }, + "protectionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup state of this backup item." + }, + "protectionStatus": { + "type": "string", + "description": "Backup status of this backup item." + } + }, + "required": [ + "protectedItemType" + ], + "description": "Azure File Share workload-specific backup item." + }, + "AzureFileshareProtectedItemExtendedInfo": { + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "The oldest backup copy available for this item in the service." + }, + "policyState": { + "type": "string", + "description": "Indicates consistency of policy object and policy applied to this backup item." + }, + "recoveryPointCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of available backup copies associated with this backup item." + } + }, + "description": "Additional information about Azure File Share backup item." + }, + "AzureFileShareProtectionPolicy": { + "type": "object", + "properties": { + "backupManagementType": { + "type": "string", + "enum": [ + "AzureStorage" + ] + }, + "retentionPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for retention policy." + }, + "schedulePolicy": { + "oneOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup schedule." + }, + "timeZone": { + "type": "string", + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\"." + }, + "workLoadType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of workload for the backup management." + } + }, + "required": [ + "backupManagementType" + ], + "description": "AzureStorage backup policy." + }, + "AzureIaaSClassicComputeVMContainer": { + "type": "object", + "properties": { + "containerType": { + "type": "string", + "enum": [ + "Microsoft.ClassicCompute/virtualMachines" + ] + } + }, + "required": [ + "containerType" + ], + "description": "IaaS VM workload-specific backup item representing a classic virtual machine." + }, + "AzureIaaSClassicComputeVMProtectedItem": { + "type": "object", + "properties": { + "protectedItemType": { + "type": "string", + "enum": [ + "Microsoft.ClassicCompute/virtualMachines" + ] + } + }, + "required": [ + "protectedItemType" + ], + "description": "IaaS VM workload-specific backup item representing the Classic Compute VM." + }, + "AzureIaaSComputeVMContainer": { + "type": "object", + "properties": { + "containerType": { + "type": "string", + "enum": [ + "Microsoft.Compute/virtualMachines" + ] + } + }, + "required": [ + "containerType" + ], + "description": "IaaS VM workload-specific backup item representing an Azure Resource Manager virtual machine." + }, + "AzureIaaSComputeVMProtectedItem": { + "type": "object", + "properties": { + "protectedItemType": { + "type": "string", + "enum": [ + "Microsoft.Compute/virtualMachines" + ] + } + }, + "required": [ + "protectedItemType" + ], + "description": "IaaS VM workload-specific backup item representing the Azure Resource Manager VM." + }, + "AzureIaaSVMHealthDetails": { + "type": "object", + "properties": {}, + "description": "Azure IaaS VM workload-specific Health Details." + }, + "AzureIaaSVMProtectedItem": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureIaaSClassicComputeVMProtectedItem" + }, + { + "$ref": "#/definitions/AzureIaaSComputeVMProtectedItem" + } + ], + "properties": { + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/AzureIaaSVMProtectedItemExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information on Azure IaaS VM specific backup item." + }, + "extendedProperties": { + "oneOf": [ + { + "$ref": "#/definitions/ExtendedProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Extended Properties for Azure IaasVM Backup." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of the VM represented by this backup item." + }, + "healthDetails": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/AzureIaaSVMHealthDetails" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health details on this backup item." + }, + "healthStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Passed", + "ActionRequired", + "ActionSuggested", + "Invalid" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health status of protected item." + }, + "kpisHealths": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KPIResourceHealthDetails" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health details of different KPIs" + }, + "lastBackupStatus": { + "type": "string", + "description": "Last backup operation status." + }, + "lastBackupTime": { + "type": "string", + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item." + }, + "protectedItemDataId": { + "type": "string", + "description": "Data ID of the protected item." + }, + "protectedItemType": { + "type": "string", + "enum": [ + "AzureIaaSVMProtectedItem" + ] + }, + "protectionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup state of this backup item." + }, + "protectionStatus": { + "type": "string", + "description": "Backup status of this backup item." + }, + "virtualMachineId": { + "type": "string", + "description": "Fully qualified ARM ID of the virtual machine represented by this item." + } + }, + "required": [ + "protectedItemType" + ], + "description": "IaaS VM workload-specific backup item." + }, + "AzureIaaSVMProtectedItemExtendedInfo": { + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "The oldest backup copy available for this backup item." + }, + "policyInconsistent": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies if backup policy associated with the backup item is inconsistent." + }, + "recoveryPointCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of backup copies available for this backup item." + } + }, + "description": "Additional information on Azure IaaS VM specific backup item." + }, + "AzureIaaSVMProtectionPolicy": { + "type": "object", + "properties": { + "backupManagementType": { + "type": "string", + "enum": [ + "AzureIaasVM" + ] + }, + "instantRPDetails": { + "oneOf": [ + { + "$ref": "#/definitions/InstantRPAdditionalDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "instantRpRetentionRangeInDays": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Instant RP retention policy range in days" + }, + "retentionPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for retention policy." + }, + "schedulePolicy": { + "oneOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup schedule." + }, + "timeZone": { + "type": "string", + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\"." + } + }, + "required": [ + "backupManagementType" + ], + "description": "IaaS VM workload-specific backup policy." + }, + "AzureRecoveryServiceVaultProtectionIntent": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureWorkloadAutoProtectionIntent" + } + ], + "properties": { + "protectionIntentItemType": { + "type": "string", + "enum": [ + "RecoveryServiceVaultItem" + ] + } + }, + "required": [ + "protectionIntentItemType" + ], + "description": "Azure Recovery Services Vault specific protection intent item." + }, + "AzureResourceProtectionIntent": { + "type": "object", + "properties": { + "friendlyName": { + "type": "string", + "description": "Friendly name of the VM represented by this backup item." + }, + "protectionIntentItemType": { + "type": "string", + "enum": [ + "AzureResourceItem" + ] + } + }, + "required": [ + "protectionIntentItemType" + ], + "description": "IaaS VM specific backup protection intent item." + }, + "AzureSQLAGWorkloadContainerProtectionContainer": { + "type": "object", + "properties": { + "containerType": { + "type": "string", + "enum": [ + "SQLAGWorkLoadContainer" + ] + } + }, + "required": [ + "containerType" + ], + "description": "Container for SQL workloads under SQL Availability Group." + }, + "AzureSqlContainer": { + "type": "object", + "properties": { + "containerType": { + "type": "string", + "enum": [ + "AzureSqlContainer" + ] + } + }, + "required": [ + "containerType" + ], + "description": "Azure Sql workload-specific container." + }, + "AzureSqlProtectedItem": { + "type": "object", + "properties": { + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/AzureSqlProtectedItemExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information on Azure Sql specific protected item." + }, + "protectedItemDataId": { + "type": "string", + "description": "Internal ID of a backup item. Used by Azure SQL Backup engine to contact Recovery Services." + }, + "protectedItemType": { + "type": "string", + "enum": [ + "Microsoft.Sql/servers/databases" + ] + }, + "protectionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup state of the backed up item." + } + }, + "required": [ + "protectedItemType" + ], + "description": "Azure SQL workload-specific backup item." + }, + "AzureSqlProtectedItemExtendedInfo": { + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "The oldest backup copy available for this item in the service." + }, + "policyState": { + "type": "string", + "description": "State of the backup policy associated with this backup item." + }, + "recoveryPointCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of available backup copies associated with this backup item." + } + }, + "description": "Additional information on Azure Sql specific protected item." + }, + "AzureSqlProtectionPolicy": { + "type": "object", + "properties": { + "backupManagementType": { + "type": "string", + "enum": [ + "AzureSql" + ] + }, + "retentionPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for retention policy." + } + }, + "required": [ + "backupManagementType" + ], + "description": "Azure SQL workload-specific backup policy." + }, + "AzureStorageContainer": { + "type": "object", + "properties": { + "containerType": { + "type": "string", + "enum": [ + "StorageContainer" + ] + }, + "protectedItemCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of items backed up in this container." + }, + "resourceGroup": { + "type": "string", + "description": "Resource group name of Recovery Services Vault." + }, + "sourceResourceId": { + "type": "string", + "description": "Fully qualified ARM url." + }, + "storageAccountVersion": { + "type": "string", + "description": "Storage account version." + } + }, + "required": [ + "containerType" + ], + "description": "Azure Storage Account workload-specific container." + }, + "AzureVMAppContainerProtectionContainer": { + "type": "object", + "properties": { + "containerType": { + "type": "string", + "enum": [ + "VMAppContainer" + ] + } + }, + "required": [ + "containerType" + ], + "description": "Container for SQL workloads under Azure Virtual Machines." + }, + "AzureVmWorkloadProtectedItem": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadSAPAseDatabaseProtectedItem" + }, + { + "$ref": "#/definitions/AzureVmWorkloadSAPHanaDatabaseProtectedItem" + }, + { + "$ref": "#/definitions/AzureVmWorkloadSQLDatabaseProtectedItem" + } + ], + "properties": { + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItemExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information on Azure Workload for SQL specific backup item." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of the DB represented by this backup item." + }, + "kpisHealths": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/KPIResourceHealthDetails" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health details of different KPIs" + }, + "lastBackupErrorDetail": { + "oneOf": [ + { + "$ref": "#/definitions/ErrorDetail" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Error Detail class which encapsulates Code, Message and Recommendations." + }, + "lastBackupStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Healthy", + "Unhealthy", + "IRPending" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Last backup operation status. Possible values: Healthy, Unhealthy." + }, + "lastBackupTime": { + "type": "string", + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item." + }, + "parentName": { + "type": "string", + "description": "Parent name of the DB such as Instance or Availability Group." + }, + "parentType": { + "type": "string", + "description": "Parent type of protected item, example: for a DB, standalone server or distributed" + }, + "protectedItemDataSourceId": { + "type": "string", + "description": "Data ID of the protected item." + }, + "protectedItemHealthStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Healthy", + "Unhealthy", + "NotReachable", + "IRPending" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health status of the backup item, evaluated based on last heartbeat received." + }, + "protectedItemType": { + "type": "string", + "enum": [ + "AzureVmWorkloadProtectedItem" + ] + }, + "protectionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup state of this backup item." + }, + "protectionStatus": { + "type": "string", + "description": "Backup status of this backup item." + }, + "serverName": { + "type": "string", + "description": "Host/Cluster Name for instance or AG" + } + }, + "required": [ + "protectedItemType" + ], + "description": "Azure VM workload-specific protected item." + }, + "AzureVmWorkloadProtectedItemExtendedInfo": { + "type": "object", + "properties": { + "oldestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "The oldest backup copy available for this backup item." + }, + "policyState": { + "type": "string", + "description": "Indicates consistency of policy object and policy applied to this backup item." + }, + "recoveryPointCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of backup copies available for this backup item." + } + }, + "description": "Additional information on Azure Workload for SQL specific backup item." + }, + "AzureVmWorkloadProtectionPolicy": { + "type": "object", + "properties": { + "backupManagementType": { + "type": "string", + "enum": [ + "AzureWorkload" + ] + }, + "makePolicyConsistent": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Fix the policy inconsistency" + }, + "settings": { + "oneOf": [ + { + "$ref": "#/definitions/Settings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Common settings field for backup management" + }, + "subProtectionPolicy": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/SubProtectionPolicy" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of sub-protection policies which includes schedule and retention" + }, + "workLoadType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of workload for the backup management." + } + }, + "required": [ + "backupManagementType" + ], + "description": "Azure VM (Mercury) workload-specific backup policy." + }, + "AzureVmWorkloadSAPAseDatabaseProtectedItem": { + "type": "object", + "properties": { + "protectedItemType": { + "type": "string", + "enum": [ + "AzureVmWorkloadSAPAseDatabase" + ] + } + }, + "required": [ + "protectedItemType" + ], + "description": "Azure VM workload-specific protected item representing SAP ASE Database." + }, + "AzureVmWorkloadSAPHanaDatabaseProtectedItem": { + "type": "object", + "properties": { + "protectedItemType": { + "type": "string", + "enum": [ + "AzureVmWorkloadSAPHanaDatabase" + ] + } + }, + "required": [ + "protectedItemType" + ], + "description": "Azure VM workload-specific protected item representing SAP HANA Database." + }, + "AzureVmWorkloadSQLDatabaseProtectedItem": { + "type": "object", + "properties": { + "protectedItemType": { + "type": "string", + "enum": [ + "AzureVmWorkloadSQLDatabase" + ] + } + }, + "required": [ + "protectedItemType" + ], + "description": "Azure VM workload-specific protected item representing SQL Database." + }, + "AzureWorkloadAutoProtectionIntent": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureWorkloadSQLAutoProtectionIntent" + } + ], + "properties": { + "protectionIntentItemType": { + "type": "string", + "enum": [ + "AzureWorkloadAutoProtectionIntent" + ] + } + }, + "required": [ + "protectionIntentItemType" + ], + "description": "Azure Recovery Services Vault specific protection intent item." + }, + "AzureWorkloadContainer": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureSQLAGWorkloadContainerProtectionContainer" + }, + { + "$ref": "#/definitions/AzureVMAppContainerProtectionContainer" + } + ], + "properties": { + "containerType": { + "type": "string", + "enum": [ + "AzureWorkloadContainer" + ] + }, + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/AzureWorkloadContainerExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Extended information of the container." + }, + "lastUpdatedTime": { + "type": "string", + "format": "date-time", + "description": "Time stamp when this container was updated." + }, + "operationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Register", + "Reregister" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Re-Do Operation." + }, + "sourceResourceId": { + "type": "string", + "description": "ARM ID of the virtual machine represented by this Azure Workload Container" + }, + "workloadType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Workload type for which registration was sent." + } + }, + "required": [ + "containerType" + ], + "description": "Container for the workloads running inside Azure Compute or Classic Compute." + }, + "AzureWorkloadContainerExtendedInfo": { + "type": "object", + "properties": { + "hostServerName": { + "type": "string", + "description": "Host Os Name in case of Stand Alone and Cluster Name in case of distributed container." + }, + "inquiryInfo": { + "oneOf": [ + { + "$ref": "#/definitions/InquiryInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Details about inquired protectable items under a given container." + }, + "nodesList": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/DistributedNodesInfo" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of the nodes in case of distributed container." + } + }, + "description": "Extended information of the container." + }, + "AzureWorkloadSQLAutoProtectionIntent": { + "type": "object", + "properties": { + "protectionIntentItemType": { + "type": "string", + "enum": [ + "AzureWorkloadSQLAutoProtectionIntent" + ] + }, + "workloadItemType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "SQLInstance", + "SQLDataBase", + "SAPHanaSystem", + "SAPHanaDatabase", + "SAPAseSystem", + "SAPAseDatabase" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Workload item type of the item for which intent is to be set." + } + }, + "required": [ + "protectionIntentItemType" + ], + "description": "Azure Workload SQL Auto Protection intent item." + }, + "BackupResourceEncryptionConfig": { + "type": "object", + "properties": { + "encryptionAtRestType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "MicrosoftManaged", + "CustomerManaged" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Encryption At Rest Type." + }, + "infrastructureEncryptionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Disabled", + "Enabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "keyUri": { + "type": "string", + "description": "Key Vault Key URI" + }, + "lastUpdateStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "NotEnabled", + "PartiallySucceeded", + "PartiallyFailed", + "Failed", + "Succeeded", + "Initialized", + "FirstInitialization" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "subscriptionId": { + "type": "string", + "description": "Key Vault Subscription Id" + } + } + }, + "BackupResourceVaultConfig": { + "type": "object", + "properties": { + "enhancedSecurityState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enabled or Disabled." + }, + "softDeleteFeatureState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Soft Delete feature state." + }, + "storageModelType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "GeoRedundant", + "LocallyRedundant", + "ZoneRedundant", + "ReadAccessGeoZoneRedundant" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Storage type." + }, + "storageType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "GeoRedundant", + "LocallyRedundant", + "ZoneRedundant", + "ReadAccessGeoZoneRedundant" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Storage type." + }, + "storageTypeState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Locked", + "Unlocked" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Locked or Unlocked. Once a machine is registered against a resource, the storageTypeState is always Locked." + } + }, + "description": "Backup resource vault config details." + }, + "ContainerIdentityInfo": { + "type": "object", + "properties": { + "aadTenantId": { + "type": "string", + "description": "Protection container identity - AAD Tenant" + }, + "audience": { + "type": "string", + "description": "Protection container identity - Audience" + }, + "servicePrincipalClientId": { + "type": "string", + "description": "Protection container identity - AAD Service Principal" + }, + "uniqueName": { + "type": "string", + "description": "Unique name of the container" + } + }, + "description": "Container identity information" + }, + "DailyRetentionFormat": { + "type": "object", + "properties": { + "daysOfTheMonth": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Day" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of days of the month." + } + }, + "description": "Daily retention format." + }, + "DailyRetentionSchedule": { + "type": "object", + "properties": { + "retentionDuration": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionDuration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention duration." + }, + "retentionTimes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention times of retention policy." + } + }, + "description": "Daily retention schedule." + }, + "Day": { + "type": "object", + "properties": { + "date": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Date of the month" + }, + "isLast": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether Date is last date of month" + } + }, + "description": "Day of the week." + }, + "DiskExclusionProperties": { + "type": "object", + "properties": { + "diskLunList": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "integer" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of Disks' Logical Unit Numbers (LUN) to be used for VM Protection." + }, + "isInclusionList": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag to indicate whether DiskLunList is to be included/ excluded from backup." + } + } + }, + "DistributedNodesInfo": { + "type": "object", + "properties": { + "errorDetail": { + "oneOf": [ + { + "$ref": "#/definitions/ErrorDetail" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Error Detail class which encapsulates Code, Message and Recommendations." + }, + "nodeName": { + "type": "string", + "description": "Name of the node under a distributed container." + }, + "status": { + "type": "string", + "description": "Status of this Node.\r\nFailed | Succeeded" + } + }, + "description": "This is used to represent the various nodes of the distributed container." + }, + "DpmContainer": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureBackupServerContainer" + } + ], + "properties": { + "canReRegister": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether the container is re-registrable." + }, + "containerId": { + "type": "string", + "description": "ID of container." + }, + "containerType": { + "type": "string", + "enum": [ + "DPMContainer" + ] + }, + "dpmAgentVersion": { + "type": "string", + "description": "Backup engine Agent version" + }, + "dpmServers": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of BackupEngines protecting the container" + }, + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/DPMContainerExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information of the DPMContainer." + }, + "protectedItemCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of protected items in the BackupEngine" + }, + "protectionStatus": { + "type": "string", + "description": "Protection status of the container." + }, + "upgradeAvailable": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "To check if upgrade available" + } + }, + "required": [ + "containerType" + ], + "description": "DPM workload-specific protection container." + }, + "DPMContainerExtendedInfo": { + "type": "object", + "properties": { + "lastRefreshedAt": { + "type": "string", + "format": "date-time", + "description": "Last refresh time of the DPMContainer." + } + }, + "description": "Additional information of the DPMContainer." + }, + "DPMProtectedItem": { + "type": "object", + "properties": { + "backupEngineName": { + "type": "string", + "description": "Backup Management server protecting this backup item" + }, + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/DPMProtectedItemExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information of DPM Protected item." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of the managed item" + }, + "protectedItemType": { + "type": "string", + "enum": [ + "DPMProtectedItem" + ] + }, + "protectionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Protection state of the backup engine." + } + }, + "required": [ + "protectedItemType" + ], + "description": "Additional information on Backup engine specific backup item." + }, + "DPMProtectedItemExtendedInfo": { + "type": "object", + "properties": { + "diskStorageUsedInBytes": { + "type": "string", + "description": "Used Disk storage in bytes." + }, + "isCollocated": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "To check if backup item is collocated." + }, + "isPresentOnCloud": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "To check if backup item is cloud protected." + }, + "lastBackupStatus": { + "type": "string", + "description": "Last backup status information on backup item." + }, + "lastRefreshedAt": { + "type": "string", + "format": "date-time", + "description": "Last refresh time on backup item." + }, + "oldestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "Oldest cloud recovery point time." + }, + "onPremiseLatestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "latest disk recovery point time." + }, + "onPremiseOldestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "Oldest disk recovery point time." + }, + "onPremiseRecoveryPointCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "disk recovery point count." + }, + "protectableObjectLoadPath": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Attribute to provide information on various DBs." + }, + "protected": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "To check if backup item is disk protected." + }, + "protectionGroupName": { + "type": "string", + "description": "Protection group name of the backup item." + }, + "recoveryPointCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "cloud recovery point count." + }, + "totalDiskStorageSizeInBytes": { + "type": "string", + "description": "total Disk storage in bytes." + } + }, + "description": "Additional information of DPM Protected item." + }, + "ErrorDetail": { + "type": "object", + "properties": {}, + "description": "Error Detail class which encapsulates Code, Message and Recommendations." + }, + "ExtendedProperties": { + "type": "object", + "properties": { + "diskExclusionProperties": { + "oneOf": [ + { + "$ref": "#/definitions/DiskExclusionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + } + }, + "description": "Extended Properties for Azure IaasVM Backup." + }, + "GenericContainer": { + "type": "object", + "properties": { + "containerType": { + "type": "string", + "enum": [ + "GenericContainer" + ] + }, + "extendedInformation": { + "oneOf": [ + { + "$ref": "#/definitions/GenericContainerExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Container extended information" + }, + "fabricName": { + "type": "string", + "description": "Name of the container's fabric" + } + }, + "required": [ + "containerType" + ], + "description": "Base class for generic container of backup items" + }, + "GenericContainerExtendedInfo": { + "type": "object", + "properties": { + "containerIdentityInfo": { + "oneOf": [ + { + "$ref": "#/definitions/ContainerIdentityInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Container identity information" + }, + "rawCertData": { + "type": "string", + "description": "Public key of container cert" + }, + "serviceEndpoints": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure Backup Service Endpoints for the container" + } + }, + "description": "Container extended information" + }, + "GenericProtectedItem": { + "type": "object", + "properties": { + "fabricName": { + "type": "string", + "description": "Name of this backup item's fabric." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of the container." + }, + "policyState": { + "type": "string", + "description": "Indicates consistency of policy object and policy applied to this backup item." + }, + "protectedItemId": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data Plane Service ID of the protected item." + }, + "protectedItemType": { + "type": "string", + "enum": [ + "GenericProtectedItem" + ] + }, + "protectionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "IRPending", + "Protected", + "ProtectionError", + "ProtectionStopped", + "ProtectionPaused" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup state of this backup item." + }, + "sourceAssociations": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Loosely coupled (type, value) associations (example - parent of a protected item)" + } + }, + "required": [ + "protectedItemType" + ], + "description": "Base class for backup items." + }, + "GenericProtectionPolicy": { + "type": "object", + "properties": { + "backupManagementType": { + "type": "string", + "enum": [ + "GenericProtectionPolicy" + ] + }, + "fabricName": { + "type": "string", + "description": "Name of this policy's fabric." + }, + "subProtectionPolicy": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/SubProtectionPolicy" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of sub-protection policies which includes schedule and retention" + }, + "timeZone": { + "type": "string", + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\"." + } + }, + "required": [ + "backupManagementType" + ], + "description": "Azure VM (Mercury) workload-specific backup policy." + }, + "IaaSVMContainer": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureIaaSClassicComputeVMContainer" + }, + { + "$ref": "#/definitions/AzureIaaSComputeVMContainer" + } + ], + "properties": { + "containerType": { + "type": "string", + "enum": [ + "IaaSVMContainer" + ] + }, + "resourceGroup": { + "type": "string", + "description": "Resource group name of Recovery Services Vault." + }, + "virtualMachineId": { + "type": "string", + "description": "Fully qualified ARM url of the virtual machine represented by this Azure IaaS VM container." + }, + "virtualMachineVersion": { + "type": "string", + "description": "Specifies whether the container represents a Classic or an Azure Resource Manager VM." + } + }, + "required": [ + "containerType" + ], + "description": "IaaS VM workload-specific container." + }, + "InquiryInfo": { + "type": "object", + "properties": { + "errorDetail": { + "oneOf": [ + { + "$ref": "#/definitions/ErrorDetail" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Error Detail class which encapsulates Code, Message and Recommendations." + }, + "inquiryDetails": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/WorkloadInquiryDetails" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Inquiry Details which will have workload specific details.\r\nFor e.g. - For SQL and oracle this will contain different details." + }, + "status": { + "type": "string", + "description": "Inquiry Status for this container such as\r\nInProgress | Failed | Succeeded" + } + }, + "description": "Details about inquired protectable items under a given container." + }, + "InquiryValidation": { + "type": "object", + "properties": { + "errorDetail": { + "oneOf": [ + { + "$ref": "#/definitions/ErrorDetail" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Error Detail class which encapsulates Code, Message and Recommendations." + }, + "status": { + "type": "string", + "description": "Status for the Inquiry Validation." + } + }, + "description": "Validation for inquired protectable items under a given container." + }, + "InstantRPAdditionalDetails": { + "type": "object", + "properties": { + "azureBackupRGNamePrefix": { + "type": "string" + }, + "azureBackupRGNameSuffix": { + "type": "string" + } + } + }, + "KPIResourceHealthDetails": { + "type": "object", + "properties": { + "resourceHealthDetails": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ResourceHealthDetails" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource Health Status" + }, + "resourceHealthStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Healthy", + "TransientDegraded", + "PersistentDegraded", + "TransientUnhealthy", + "PersistentUnhealthy", + "Invalid" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource Health Status." + } + }, + "description": "KPI Resource Health Details" + }, + "LogSchedulePolicy": { + "type": "object", + "properties": { + "scheduleFrequencyInMins": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Frequency of the log schedule operation of this policy in minutes." + }, + "schedulePolicyType": { + "type": "string", + "enum": [ + "LogSchedulePolicy" + ] + } + }, + "required": [ + "schedulePolicyType" + ], + "description": "Log policy schedule." + }, + "LongTermRetentionPolicy": { + "type": "object", + "properties": { + "dailySchedule": { + "oneOf": [ + { + "$ref": "#/definitions/DailyRetentionSchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Daily retention schedule." + }, + "monthlySchedule": { + "oneOf": [ + { + "$ref": "#/definitions/MonthlyRetentionSchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Monthly retention schedule." + }, + "retentionPolicyType": { + "type": "string", + "enum": [ + "LongTermRetentionPolicy" + ] + }, + "weeklySchedule": { + "oneOf": [ + { + "$ref": "#/definitions/WeeklyRetentionSchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Weekly retention schedule." + }, + "yearlySchedule": { + "oneOf": [ + { + "$ref": "#/definitions/YearlyRetentionSchedule" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Yearly retention schedule." + } + }, + "required": [ + "retentionPolicyType" + ], + "description": "Long term retention policy." + }, + "LongTermSchedulePolicy": { + "type": "object", + "properties": { + "schedulePolicyType": { + "type": "string", + "enum": [ + "LongTermSchedulePolicy" + ] + } + }, + "required": [ + "schedulePolicyType" + ], + "description": "Long term policy schedule." + }, + "MabContainer": { + "type": "object", + "properties": { + "agentVersion": { + "type": "string", + "description": "Agent version of this container." + }, + "canReRegister": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Can the container be registered one more time." + }, + "containerHealthState": { + "type": "string", + "description": "Health state of mab container." + }, + "containerId": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "ContainerID represents the container." + }, + "containerType": { + "type": "string", + "enum": [ + "Windows" + ] + }, + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/MabContainerExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information of the container." + }, + "mabContainerHealthDetails": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MABContainerHealthDetails" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health details on this mab container." + }, + "protectedItemCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of items backed up in this container." + } + }, + "required": [ + "containerType" + ], + "description": "Container with items backed up using MAB backup engine." + }, + "MabContainerExtendedInfo": { + "type": "object", + "properties": { + "backupItems": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of backup items associated with this container." + }, + "backupItemType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of backup items associated with this container." + }, + "lastBackupStatus": { + "type": "string", + "description": "Latest backup status of this container." + }, + "lastRefreshedAt": { + "type": "string", + "format": "date-time", + "description": "Time stamp when this container was refreshed." + }, + "policyName": { + "type": "string", + "description": "Backup policy associated with this container." + } + }, + "description": "Additional information of the container." + }, + "MABContainerHealthDetails": { + "type": "object", + "properties": { + "code": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health Code" + }, + "message": { + "type": "string", + "description": "Health Message" + }, + "recommendations": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Health Recommended Actions" + }, + "title": { + "type": "string", + "description": "Health Title" + } + }, + "description": "MAB workload-specific Health Details." + }, + "MabFileFolderProtectedItem": { + "type": "object", + "properties": { + "computerName": { + "type": "string", + "description": "Name of the computer associated with this backup item." + }, + "deferredDeleteSyncTimeInUTC": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Sync time for deferred deletion in UTC" + }, + "extendedInfo": { + "oneOf": [ + { + "$ref": "#/definitions/MabFileFolderProtectedItemExtendedInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional information on the backed up item." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of this backup item." + }, + "lastBackupStatus": { + "type": "string", + "description": "Status of last backup operation." + }, + "lastBackupTime": { + "type": "string", + "format": "date-time", + "description": "Timestamp of the last backup operation on this backup item." + }, + "protectedItemType": { + "type": "string", + "enum": [ + "MabFileFolderProtectedItem" + ] + }, + "protectionState": { + "type": "string", + "description": "Protected, ProtectionStopped, IRPending or ProtectionError" + } + }, + "required": [ + "protectedItemType" + ], + "description": "MAB workload-specific backup item." + }, + "MabFileFolderProtectedItemExtendedInfo": { + "type": "object", + "properties": { + "lastRefreshedAt": { + "type": "string", + "format": "date-time", + "description": "Last time when the agent data synced to service." + }, + "oldestRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "The oldest backup copy available." + }, + "recoveryPointCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of backup copies associated with the backup item." + } + }, + "description": "Additional information on the backed up item." + }, + "MabProtectionPolicy": { + "type": "object", + "properties": { + "backupManagementType": { + "type": "string", + "enum": [ + "MAB" + ] + }, + "retentionPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for retention policy." + }, + "schedulePolicy": { + "oneOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup schedule." + } + }, + "required": [ + "backupManagementType" + ], + "description": "Mab container-specific backup policy." + }, + "MonthlyRetentionSchedule": { + "type": "object", + "properties": { + "retentionDuration": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionDuration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention duration." + }, + "retentionScheduleDaily": { + "oneOf": [ + { + "$ref": "#/definitions/DailyRetentionFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Daily retention format." + }, + "retentionScheduleFormatType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention schedule format type for monthly retention policy." + }, + "retentionScheduleWeekly": { + "oneOf": [ + { + "$ref": "#/definitions/WeeklyRetentionFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Weekly retention format." + }, + "retentionTimes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention times of retention policy." + } + }, + "description": "Monthly retention schedule." + }, + "PrivateEndpoint": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Gets or sets id" + } + }, + "description": "The Private Endpoint network resource that is linked to the Private Endpoint connection" + }, + "PrivateEndpointConnection": { + "type": "object", + "properties": { + "privateEndpoint": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpoint" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Private Endpoint network resource that is linked to the Private Endpoint connection" + }, + "privateLinkServiceConnectionState": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Private Link Service Connection State" + }, + "provisioningState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Succeeded", + "Deleting", + "Failed", + "Pending" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets provisioning state of the private endpoint connection." + } + }, + "description": "Private Endpoint Connection Response Properties" + }, + "PrivateLinkServiceConnectionState": { + "type": "object", + "properties": { + "actionRequired": { + "type": "string", + "description": "Gets or sets actions required" + }, + "description": { + "type": "string", + "description": "Gets or sets description" + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Pending", + "Approved", + "Rejected", + "Disconnected" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the status." + } + }, + "description": "Private Link Service Connection State" + }, + "ProtectedItem": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureFileshareProtectedItem" + }, + { + "$ref": "#/definitions/AzureIaaSVMProtectedItem" + }, + { + "$ref": "#/definitions/AzureSqlProtectedItem" + }, + { + "$ref": "#/definitions/AzureVmWorkloadProtectedItem" + }, + { + "$ref": "#/definitions/DPMProtectedItem" + }, + { + "$ref": "#/definitions/GenericProtectedItem" + }, + { + "$ref": "#/definitions/MabFileFolderProtectedItem" + } + ], + "properties": { + "backupManagementType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of backup management for the backed up item." + }, + "backupSetName": { + "type": "string", + "description": "Name of the backup set the backup item belongs to" + }, + "containerName": { + "type": "string", + "description": "Unique name of container" + }, + "createMode": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Default", + "Recover" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Create mode to indicate recovery of existing soft deleted data source or creation of new data source." + }, + "deferredDeleteTimeInUTC": { + "type": "string", + "format": "date-time", + "description": "Time for deferred deletion in UTC" + }, + "deferredDeleteTimeRemaining": { + "type": "string", + "description": "Time remaining before the DS marked for deferred delete is permanently deleted" + }, + "isDeferredDeleteScheduleUpcoming": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag to identify whether the deferred deleted DS is to be purged soon" + }, + "isRehydrate": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag to identify that deferred deleted DS is to be moved into Pause state" + }, + "isScheduledForDeferredDelete": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag to identify whether the DS is scheduled for deferred delete" + }, + "lastRecoveryPoint": { + "type": "string", + "format": "date-time", + "description": "Timestamp when the last (latest) backup copy was created for this backup item." + }, + "policyId": { + "type": "string", + "description": "ID of the backup policy with which this item is backed up." + }, + "sourceResourceId": { + "type": "string", + "description": "ARM ID of the resource to be backed up." + }, + "workloadType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "VM", + "FileFolder", + "AzureSqlDb", + "SQLDB", + "Exchange", + "Sharepoint", + "VMwareVM", + "SystemState", + "Client", + "GenericDataSource", + "SQLDataBase", + "AzureFileShare", + "SAPHanaDatabase", + "SAPAseDatabase" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of workload this item represents." + } + }, + "description": "Base class for backup items." + }, + "ProtectionContainer": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureSqlContainer" + }, + { + "$ref": "#/definitions/AzureStorageContainer" + }, + { + "$ref": "#/definitions/AzureWorkloadContainer" + }, + { + "$ref": "#/definitions/DpmContainer" + }, + { + "$ref": "#/definitions/GenericContainer" + }, + { + "$ref": "#/definitions/IaaSVMContainer" + }, + { + "$ref": "#/definitions/MabContainer" + } + ], + "properties": { + "backupManagementType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of backup management for the container." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of the container." + }, + "healthStatus": { + "type": "string", + "description": "Status of health of the container." + }, + "registrationStatus": { + "type": "string", + "description": "Status of registration of the container with the Recovery Services Vault." + } + }, + "description": "Base class for container with backup items. Containers with specific workloads are derived from this class." + }, + "ProtectionIntent": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureRecoveryServiceVaultProtectionIntent" + }, + { + "$ref": "#/definitions/AzureResourceProtectionIntent" + } + ], + "properties": { + "backupManagementType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "AzureIaasVM", + "MAB", + "DPM", + "AzureBackupServer", + "AzureSql", + "AzureStorage", + "AzureWorkload", + "DefaultBackup" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of backup management for the backed up item." + }, + "itemId": { + "type": "string", + "description": "ID of the item which is getting protected, In case of Azure Vm , it is ProtectedItemId" + }, + "policyId": { + "type": "string", + "description": "ID of the backup policy with which this item is backed up." + }, + "protectionState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "NotProtected", + "Protecting", + "Protected", + "ProtectionFailed" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backup state of this backup item." + }, + "sourceResourceId": { + "type": "string", + "description": "ARM ID of the resource to be backed up." + } + }, + "description": "Base class for backup ProtectionIntent." + }, + "ProtectionPolicy": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/AzureVmWorkloadProtectionPolicy" + }, + { + "$ref": "#/definitions/AzureFileShareProtectionPolicy" + }, + { + "$ref": "#/definitions/AzureIaaSVMProtectionPolicy" + }, + { + "$ref": "#/definitions/AzureSqlProtectionPolicy" + }, + { + "$ref": "#/definitions/GenericProtectionPolicy" + }, + { + "$ref": "#/definitions/MabProtectionPolicy" + } + ], + "properties": { + "protectedItemsCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of items associated with this policy." + } + }, + "description": "Base class for backup policy. Workload-specific backup policies are derived from this class." + }, + "ResourceHealthDetails": { + "type": "object", + "properties": {}, + "description": "Health Details for backup items." + }, + "RetentionDuration": { + "type": "object", + "properties": { + "count": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Count of duration types. Retention duration is obtained by the counting the duration type Count times.\r\nFor example, when Count = 3 and DurationType = Weeks, retention duration will be three weeks." + }, + "durationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Days", + "Weeks", + "Months", + "Years" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention duration type of retention policy." + } + }, + "description": "Retention duration." + }, + "RetentionPolicy": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/LongTermRetentionPolicy" + }, + { + "$ref": "#/definitions/SimpleRetentionPolicy" + } + ], + "properties": {}, + "description": "Base class for retention policy." + }, + "SchedulePolicy": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/LogSchedulePolicy" + }, + { + "$ref": "#/definitions/LongTermSchedulePolicy" + }, + { + "$ref": "#/definitions/SimpleSchedulePolicy" + } + ], + "properties": {}, + "description": "Base class for backup schedule." + }, + "Settings": { + "type": "object", + "properties": { + "isCompression": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Workload compression flag. This has been added so that 'isSqlCompression'\r\nwill be deprecated once clients upgrade to consider this flag." + }, + "issqlcompression": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "SQL compression flag" + }, + "timeZone": { + "type": "string", + "description": "TimeZone optional input as string. For example: TimeZone = \"Pacific Standard Time\"." + } + }, + "description": "Common settings field for backup management" + }, + "SimpleRetentionPolicy": { + "type": "object", + "properties": { + "retentionDuration": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionDuration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention duration." + }, + "retentionPolicyType": { + "type": "string", + "enum": [ + "SimpleRetentionPolicy" + ] + } + }, + "required": [ + "retentionPolicyType" + ], + "description": "Simple policy retention." + }, + "SimpleSchedulePolicy": { + "type": "object", + "properties": { + "schedulePolicyType": { + "type": "string", + "enum": [ + "SimpleSchedulePolicy" + ] + }, + "scheduleRunDays": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of days of week this schedule has to be run." + }, + "scheduleRunFrequency": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Frequency of the schedule operation of this policy." + }, + "scheduleRunTimes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of times of day this schedule has to be run." + }, + "scheduleWeeklyFrequency": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "At every number weeks this schedule has to be run." + } + }, + "required": [ + "schedulePolicyType" + ], + "description": "Simple policy schedule." + }, + "SubProtectionPolicy": { + "type": "object", + "properties": { + "policyType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Full", + "Differential", + "Log", + "CopyOnlyFull", + "Incremental" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of backup policy type." + }, + "retentionPolicy": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionPolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for retention policy." + }, + "schedulePolicy": { + "oneOf": [ + { + "$ref": "#/definitions/SchedulePolicy" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup schedule." + } + }, + "description": "Sub-protection policy which includes schedule and retention" + }, + "vaults_backupFabrics_protectionContainers_protectedItems_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-04-01" + ] + }, + "eTag": { + "type": "string", + "description": "Optional ETag." + }, + "location": { + "type": "string", + "description": "Resource location." + }, + "name": { + "type": "string", + "description": "Item name to be backed up." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ProtectedItem" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Base class for backup items." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "protectedItems" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems" + }, + "WeeklyRetentionFormat": { + "type": "object", + "properties": { + "daysOfTheWeek": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of days of the week." + }, + "weeksOfTheMonth": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "First", + "Second", + "Third", + "Fourth", + "Last", + "Invalid" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of weeks of month." + } + }, + "description": "Weekly retention format." + }, + "WeeklyRetentionSchedule": { + "type": "object", + "properties": { + "daysOfTheWeek": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of days of week for weekly retention policy." + }, + "retentionDuration": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionDuration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention duration." + }, + "retentionTimes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention times of retention policy." + } + }, + "description": "Weekly retention schedule." + }, + "WorkloadInquiryDetails": { + "type": "object", + "properties": { + "inquiryValidation": { + "oneOf": [ + { + "$ref": "#/definitions/InquiryValidation" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Validation for inquired protectable items under a given container." + }, + "itemCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Contains the protectable item Count inside this Container." + }, + "type": { + "type": "string", + "description": "Type of the Workload such as SQL, Oracle etc." + } + }, + "description": "Details of an inquired protectable item." + }, + "YearlyRetentionSchedule": { + "type": "object", + "properties": { + "monthsOfYear": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Invalid", + "January", + "February", + "March", + "April", + "May", + "June", + "July", + "August", + "September", + "October", + "November", + "December" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of months of year of yearly retention policy." + }, + "retentionDuration": { + "oneOf": [ + { + "$ref": "#/definitions/RetentionDuration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention duration." + }, + "retentionScheduleDaily": { + "oneOf": [ + { + "$ref": "#/definitions/DailyRetentionFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Daily retention format." + }, + "retentionScheduleFormatType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Invalid", + "Daily", + "Weekly" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention schedule format for yearly retention policy." + }, + "retentionScheduleWeekly": { + "oneOf": [ + { + "$ref": "#/definitions/WeeklyRetentionFormat" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Weekly retention format." + }, + "retentionTimes": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Retention times of retention policy." + } + }, + "description": "Yearly retention schedule." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index cfd5c05202..8918f53b4e 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -6952,6 +6952,27 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-03-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_privateEndpointConnections" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-04-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_backupconfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-04-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_backupEncryptionConfigs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-04-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_backupFabrics_backupProtectionIntent" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-04-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_backupFabrics_protectionContainers" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-04-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_backupFabrics_protectionContainers_protectedItems" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-04-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_backupPolicies" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-04-01/Microsoft.RecoveryServices.Backup.json#/resourceDefinitions/vaults_privateEndpointConnections" + }, { "$ref": "https://schema.management.azure.com/schemas/2016-06-01/Microsoft.RecoveryServices.json#/resourceDefinitions/vaults" }, From f871741b55960675611e58236e13c375026880c7 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 18 May 2021 10:24:55 +0000 Subject: [PATCH 05/17] Update resource list --- generator/resources.json | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index 419e01394e..08b012289d 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -5346,7 +5346,8 @@ "2021-02-01", "2021-02-01-preview", "2021-02-10", - "2021-03-01" + "2021-03-01", + "2021-04-01" ], "Microsoft.RecoveryServices/vaults/backupFabrics/backupProtectionIntent": [ "2017-07-01", @@ -5354,7 +5355,8 @@ "2021-02-01", "2021-02-01-preview", "2021-02-10", - "2021-03-01" + "2021-03-01", + "2021-04-01" ], "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers": [ "2016-12-01", @@ -5364,7 +5366,8 @@ "2021-02-01", "2021-02-01-preview", "2021-02-10", - "2021-03-01" + "2021-03-01", + "2021-04-01" ], "Microsoft.RecoveryServices/vaults/backupFabrics/protectionContainers/protectedItems": [ "2016-06-01", @@ -5377,7 +5380,8 @@ "2021-02-01", "2021-02-01-preview", "2021-02-10", - "2021-03-01" + "2021-03-01", + "2021-04-01" ], "Microsoft.RecoveryServices/vaults/backupPolicies": [ "2016-06-01", @@ -5390,7 +5394,8 @@ "2021-02-01", "2021-02-01-preview", "2021-02-10", - "2021-03-01" + "2021-03-01", + "2021-04-01" ], "Microsoft.RecoveryServices/vaults/backupResourceGuardProxies": [ "2021-02-01-preview" @@ -5403,7 +5408,8 @@ "2021-02-01", "2021-02-01-preview", "2021-02-10", - "2021-03-01" + "2021-03-01", + "2021-04-01" ], "Microsoft.RecoveryServices/vaults/backupstorageconfig": [ "2016-12-01", @@ -5433,7 +5439,8 @@ "2021-02-01", "2021-02-01-preview", "2021-02-10", - "2021-03-01" + "2021-03-01", + "2021-04-01" ], "Microsoft.RecoveryServices/vaults/replicationAlertSettings": [ "2016-08-10", From c2daa706bc43a920de0ab082110bf4ed54e593ff Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 18 May 2021 11:48:43 +0000 Subject: [PATCH 06/17] Autogenerate schemas --- .../subscriptionDeploymentTemplate.json | 3 + .../Microsoft.KeyVault.json | 250 ++++++++++++++++++ .../Microsoft.Security.json | 43 +++ schemas/common/autogeneratedResources.json | 3 + 4 files changed, 299 insertions(+) create mode 100644 schemas/2021-01-15-preview/Microsoft.Security.json diff --git a/schemas/2018-05-01/subscriptionDeploymentTemplate.json b/schemas/2018-05-01/subscriptionDeploymentTemplate.json index b23a4d6f58..d7fe5d113a 100644 --- a/schemas/2018-05-01/subscriptionDeploymentTemplate.json +++ b/schemas/2018-05-01/subscriptionDeploymentTemplate.json @@ -471,6 +471,9 @@ { "$ref": "https://schema.management.azure.com/schemas/2020-08-06-preview/Microsoft.Security.json#/unknown_resourceDefinitions/iotSites" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-01-15-preview/Microsoft.Security.json#/subscription_resourceDefinitions/ingestionSettings" + }, { "$ref": "https://schema.management.azure.com/schemas/2019-05-01-preview/Microsoft.Support.json#/subscription_resourceDefinitions/supportTickets" }, diff --git a/schemas/2020-04-01-preview/Microsoft.KeyVault.json b/schemas/2020-04-01-preview/Microsoft.KeyVault.json index 6f7ba25cc2..ab5b9fb9fb 100644 --- a/schemas/2020-04-01-preview/Microsoft.KeyVault.json +++ b/schemas/2020-04-01-preview/Microsoft.KeyVault.json @@ -113,6 +113,9 @@ "type": "array", "items": { "oneOf": [ + { + "$ref": "#/definitions/vaults_keys_childResource" + }, { "$ref": "#/definitions/vaults_accessPolicies_childResource" }, @@ -207,6 +210,68 @@ ], "description": "Microsoft.KeyVault/vaults/accessPolicies" }, + "vaults_keys": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-04-01-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9-]{1,127}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the key to be created." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/KeyProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the key." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The tags that will be assigned to the key." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.KeyVault/vaults/keys" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.KeyVault/vaults/keys" + }, "vaults_privateEndpointConnections": { "type": "object", "properties": { @@ -377,6 +442,129 @@ ], "description": "A rule governing the accessibility of a vault from a specific ip address or ip range." }, + "KeyAttributes": { + "type": "object", + "properties": { + "enabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Determines whether or not the object is enabled." + }, + "exp": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Expiry date in seconds since 1970-01-01T00:00:00Z." + }, + "nbf": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Not before date in seconds since 1970-01-01T00:00:00Z." + } + }, + "description": "The attributes of the key." + }, + "KeyProperties": { + "type": "object", + "properties": { + "attributes": { + "oneOf": [ + { + "$ref": "#/definitions/KeyAttributes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The attributes of the key." + }, + "curveName": { + "oneOf": [ + { + "type": "string", + "enum": [ + "P-256", + "P-384", + "P-521", + "P-256K" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The elliptic curve name. For valid values, see JsonWebKeyCurveName." + }, + "keyOps": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "encrypt", + "decrypt", + "sign", + "verify", + "wrapKey", + "unwrapKey", + "import" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "keySize": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The key size in bits. For example: 2048, 3072, or 4096 for RSA." + }, + "kty": { + "oneOf": [ + { + "type": "string", + "enum": [ + "EC", + "EC-HSM", + "RSA", + "RSA-HSM" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of the key. For valid values, see JsonWebKeyType." + } + }, + "description": "The properties of the key." + }, "ManagedHsmProperties": { "type": "object", "properties": { @@ -1129,6 +1317,68 @@ ], "description": "Microsoft.KeyVault/vaults/accessPolicies" }, + "vaults_keys_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2020-04-01-preview" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^[a-zA-Z0-9-]{1,127}$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the key to be created." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/KeyProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the key." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The tags that will be assigned to the key." + }, + "type": { + "type": "string", + "enum": [ + "keys" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.KeyVault/vaults/keys" + }, "vaults_privateEndpointConnections_childResource": { "type": "object", "properties": { diff --git a/schemas/2021-01-15-preview/Microsoft.Security.json b/schemas/2021-01-15-preview/Microsoft.Security.json new file mode 100644 index 0000000000..f0dbcf159a --- /dev/null +++ b/schemas/2021-01-15-preview/Microsoft.Security.json @@ -0,0 +1,43 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-01-15-preview/Microsoft.Security.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.Security", + "description": "Microsoft Security Resource Types", + "resourceDefinitions": {}, + "subscription_resourceDefinitions": { + "ingestionSettings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-01-15-preview" + ] + }, + "name": { + "type": "string", + "description": "Name of the ingestion setting" + }, + "properties": { + "type": "object", + "properties": {}, + "description": "Ingestion setting data" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Security/ingestionSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.Security/ingestionSettings" + } + }, + "definitions": {} +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 8918f53b4e..fcf46a4ca6 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -5731,6 +5731,9 @@ { "$ref": "https://schema.management.azure.com/schemas/2020-04-01-preview/Microsoft.KeyVault.json#/resourceDefinitions/vaults_accessPolicies" }, + { + "$ref": "https://schema.management.azure.com/schemas/2020-04-01-preview/Microsoft.KeyVault.json#/resourceDefinitions/vaults_keys" + }, { "$ref": "https://schema.management.azure.com/schemas/2020-04-01-preview/Microsoft.KeyVault.json#/resourceDefinitions/vaults_privateEndpointConnections" }, From e878639e1c8897703712182fc20a8c9fa23ab888 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Tue, 18 May 2021 11:48:54 +0000 Subject: [PATCH 07/17] Update resource list --- generator/resources.json | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/generator/resources.json b/generator/resources.json index 08b012289d..1db51cf940 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -3088,7 +3088,8 @@ "2021-04-01-preview" ], "Microsoft.KeyVault/vaults/keys": [ - "2019-09-01" + "2019-09-01", + "2020-04-01-preview" ], "Microsoft.KeyVault/vaults/privateEndpointConnections": [ "2018-02-14", @@ -5721,6 +5722,9 @@ "Microsoft.Security/informationProtectionPolicies": [ "2017-08-01-preview" ], + "Microsoft.Security/ingestionSettings": [ + "2021-01-15-preview" + ], "Microsoft.Security/iotDefenderSettings": [ "2020-08-06-preview" ], From 49fd955b69fdfaceec0713ed69c706596f38a3c6 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 19 May 2021 08:33:45 +0000 Subject: [PATCH 08/17] Update resource list --- generator/resources.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index 1db51cf940..c004c1a069 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -1230,10 +1230,12 @@ ], "Microsoft.CognitiveServices/accounts": [ "2016-02-01-preview", - "2017-04-18" + "2017-04-18", + "2021-04-30" ], "Microsoft.CognitiveServices/accounts/privateEndpointConnections": [ - "2017-04-18" + "2017-04-18", + "2021-04-30" ], "Microsoft.Communication/communicationServices": [ "2020-08-20", From c275fba1dc8710710f3402f88dac7d4b62032ac7 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 19 May 2021 09:15:45 +0000 Subject: [PATCH 09/17] Autogenerate schemas --- .../Microsoft.HybridCompute.json | 678 ++++++++++++++++++ schemas/common/autogeneratedResources.json | 12 + 2 files changed, 690 insertions(+) create mode 100644 schemas/2021-04-22-preview/Microsoft.HybridCompute.json diff --git a/schemas/2021-04-22-preview/Microsoft.HybridCompute.json b/schemas/2021-04-22-preview/Microsoft.HybridCompute.json new file mode 100644 index 0000000000..1732d3d636 --- /dev/null +++ b/schemas/2021-04-22-preview/Microsoft.HybridCompute.json @@ -0,0 +1,678 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-04-22-preview/Microsoft.HybridCompute.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.HybridCompute", + "description": "Microsoft HybridCompute Resource Types", + "resourceDefinitions": { + "machines": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-04-22-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/Identity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the hybrid machine." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MachineProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the properties of a hybrid machine." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/machines_extensions_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.HybridCompute/machines" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/machines" + }, + "machines_extensions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-04-22-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the machine extension." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the properties of a Machine Extension." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.HybridCompute/machines/extensions" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/machines/extensions" + }, + "privateLinkScopes": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-04-22-preview" + ] + }, + "location": { + "type": "string", + "description": "Resource location" + }, + "name": { + "type": "string", + "description": "The name of the Azure Arc PrivateLinkScope resource." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/HybridComputePrivateLinkScopeProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties that define a Azure Arc PrivateLinkScope resource." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/privateLinkScopes_privateEndpointConnections_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.HybridCompute/privateLinkScopes" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/privateLinkScopes" + }, + "privateLinkScopes_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-04-22-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a private endpoint connection." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections" + } + }, + "definitions": { + "HybridComputePrivateLinkScopeProperties": { + "type": "object", + "properties": { + "publicNetworkAccess": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether machines associated with the private link scope can also use public Azure Arc service endpoints." + } + }, + "description": "Properties that define a Azure Arc PrivateLinkScope resource." + }, + "Identity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SystemAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The identity type." + } + }, + "description": "Identity for the resource." + }, + "LocationData": { + "type": "object", + "properties": { + "city": { + "type": "string", + "description": "The city or locality where the resource is located." + }, + "countryOrRegion": { + "type": "string", + "description": "The country or region where the resource is located" + }, + "district": { + "type": "string", + "description": "The district, state, or province where the resource is located." + }, + "name": { + "type": "string", + "maxLength": 256, + "description": "A canonical name for the geographic or physical location." + } + }, + "required": [ + "name" + ], + "description": "Metadata pertaining to the geographic location of the resource." + }, + "MachineExtensionInstanceView": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The machine extension name." + }, + "status": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionInstanceViewStatus" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Instance view status." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + } + }, + "description": "Describes the Machine Extension Instance View." + }, + "MachineExtensionInstanceViewStatus": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "The status code." + }, + "displayStatus": { + "type": "string", + "description": "The short localizable label for the status." + }, + "level": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Info", + "Warning", + "Error" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The level code." + }, + "message": { + "type": "string", + "description": "The detailed status message, including for alerts and error messages." + }, + "time": { + "type": "string", + "format": "date-time", + "description": "The time of the status." + } + }, + "description": "Instance view status." + }, + "MachineExtensionProperties": { + "type": "object", + "properties": { + "autoUpgradeMinorVersion": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether the extension should use a newer minor version if one is available at deployment time. Once deployed, however, the extension will not upgrade minor versions unless redeployed, even with this property set to true." + }, + "forceUpdateTag": { + "type": "string", + "description": "How the extension handler should be forced to update even if the extension configuration has not changed." + }, + "instanceView": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionInstanceView" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the Machine Extension Instance View." + }, + "protectedSettings": { + "type": "object", + "properties": {}, + "description": "The extension can contain either protectedSettings or protectedSettingsFromKeyVault or no protected settings at all." + }, + "publisher": { + "type": "string", + "description": "The name of the extension handler publisher." + }, + "settings": { + "type": "object", + "properties": {}, + "description": "Json formatted public settings for the extension." + }, + "type": { + "type": "string", + "description": "Specifies the type of the extension; an example is \"CustomScriptExtension\"." + }, + "typeHandlerVersion": { + "type": "string", + "description": "Specifies the version of the script handler." + } + }, + "description": "Describes the properties of a Machine Extension." + }, + "MachineProperties": { + "type": "object", + "properties": { + "clientPublicKey": { + "type": "string", + "description": "Public Key that the client provides to be used during initial resource onboarding" + }, + "detectedProperties": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Detected properties from the machine." + }, + "extensions": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MachineExtensionInstanceView" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Machine Extensions information" + }, + "locationData": { + "oneOf": [ + { + "$ref": "#/definitions/LocationData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to the geographic location of the resource." + }, + "osProfile": { + "oneOf": [ + { + "$ref": "#/definitions/OSProfile" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the operating system settings for the hybrid machine." + }, + "parentClusterResourceId": { + "type": "string", + "description": "The resource id of the parent cluster (Azure HCI) this machine is assigned to, if any." + }, + "privateLinkScopeResourceId": { + "type": "string", + "description": "The resource id of the private link scope this machine is assigned to, if any." + }, + "vmId": { + "type": "string", + "description": "Specifies the hybrid machine unique ID." + } + }, + "description": "Describes the properties of a hybrid machine." + }, + "machines_extensions_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-04-22-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the machine extension." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MachineExtensionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Describes the properties of a Machine Extension." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "extensions" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/machines/extensions" + }, + "OSProfile": { + "type": "object", + "properties": {}, + "description": "Specifies the operating system settings for the hybrid machine." + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "privateEndpoint": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointProperty" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkServiceConnectionState": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateLinkServiceConnectionStateProperty" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "State of the private endpoint connection." + } + }, + "description": "Properties of a private endpoint connection." + }, + "PrivateEndpointProperty": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "Resource id of the private endpoint." + } + }, + "description": "Private endpoint which the connection belongs to." + }, + "privateLinkScopes_privateEndpointConnections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-04-22-preview" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a private endpoint connection." + }, + "type": { + "type": "string", + "enum": [ + "privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections" + }, + "PrivateLinkServiceConnectionStateProperty": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "The private link service connection description." + }, + "status": { + "type": "string", + "description": "The private link service connection status." + } + }, + "required": [ + "description", + "status" + ], + "description": "State of the private endpoint connection." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index e2c710c6c9..20ab2ae5e7 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -5512,6 +5512,18 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-03-25-preview/Microsoft.HybridCompute.json#/resourceDefinitions/privateLinkScopes_privateEndpointConnections" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-04-22-preview/Microsoft.HybridCompute.json#/resourceDefinitions/machines" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-04-22-preview/Microsoft.HybridCompute.json#/resourceDefinitions/machines_extensions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-04-22-preview/Microsoft.HybridCompute.json#/resourceDefinitions/privateLinkScopes" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-04-22-preview/Microsoft.HybridCompute.json#/resourceDefinitions/privateLinkScopes_privateEndpointConnections" + }, { "$ref": "https://schema.management.azure.com/schemas/2016-06-01/Microsoft.HybridData.json#/resourceDefinitions/dataManagers" }, From bd4570ac8b9a150e66d4bf97ad9e15e1ce680c55 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 19 May 2021 09:15:56 +0000 Subject: [PATCH 10/17] Update resource list --- generator/resources.json | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index c004c1a069..8baf2d8cdc 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -2930,7 +2930,8 @@ "2020-08-02", "2020-08-15-preview", "2021-01-28-preview", - "2021-03-25-preview" + "2021-03-25-preview", + "2021-04-22-preview" ], "Microsoft.HybridCompute/machines/extensions": [ "2019-08-02-preview", @@ -2939,17 +2940,20 @@ "2020-08-02", "2020-08-15-preview", "2021-01-28-preview", - "2021-03-25-preview" + "2021-03-25-preview", + "2021-04-22-preview" ], "Microsoft.HybridCompute/privateLinkScopes": [ "2020-08-15-preview", "2021-01-28-preview", - "2021-03-25-preview" + "2021-03-25-preview", + "2021-04-22-preview" ], "Microsoft.HybridCompute/privateLinkScopes/privateEndpointConnections": [ "2020-08-15-preview", "2021-01-28-preview", - "2021-03-25-preview" + "2021-03-25-preview", + "2021-04-22-preview" ], "Microsoft.HybridCompute/privateLinkScopes/scopedResources": [ "2020-08-15-preview" From 28243768f79f16305617ffb5275fd1b2fab8ffc6 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Wed, 19 May 2021 12:06:33 +0000 Subject: [PATCH 11/17] Autogenerate schemas --- .../Microsoft.KubernetesConfiguration.json | 479 ++++++++++++++++++ 1 file changed, 479 insertions(+) create mode 100644 schemas/2021-05-01-preview/Microsoft.KubernetesConfiguration.json diff --git a/schemas/2021-05-01-preview/Microsoft.KubernetesConfiguration.json b/schemas/2021-05-01-preview/Microsoft.KubernetesConfiguration.json new file mode 100644 index 0000000000..7ba06e0543 --- /dev/null +++ b/schemas/2021-05-01-preview/Microsoft.KubernetesConfiguration.json @@ -0,0 +1,479 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-05-01-preview/Microsoft.KubernetesConfiguration.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.KubernetesConfiguration", + "description": "Microsoft KubernetesConfiguration Resource Types", + "resourceDefinitions": {}, + "extension_resourceDefinitions": { + "extensions": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-05-01-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/Identity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "name": { + "type": "string", + "description": "Name of the Extension." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ExtensionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of an Extension resource" + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.KubernetesConfiguration/extensions" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.KubernetesConfiguration/extensions" + }, + "sourceControlConfigurations": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-05-01-preview" + ] + }, + "name": { + "type": "string", + "description": "Name of the Source Control Configuration." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SourceControlConfigurationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to create a Source Control Configuration resource" + }, + "systemData": { + "oneOf": [ + { + "$ref": "#/definitions/SystemData" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata pertaining to creation and last modification of the resource." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.KubernetesConfiguration/sourceControlConfigurations" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.KubernetesConfiguration/sourceControlConfigurations" + } + }, + "definitions": { + "ExtensionProperties": { + "type": "object", + "properties": { + "autoUpgradeMinorVersion": { + "oneOf": [ + { + "type": "boolean", + "default": true + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Flag to note if this extension participates in auto upgrade of minor version, or not." + }, + "configurationProtectedSettings": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Configuration settings that are sensitive, as name-value pairs for configuring this extension." + }, + "configurationSettings": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Configuration settings, as name-value pairs for configuring this extension." + }, + "extensionType": { + "type": "string", + "description": "Type of the Extension, of which this resource is an instance of. It must be one of the Extension Types registered with Microsoft.KubernetesConfiguration by the Extension publisher." + }, + "releaseTrain": { + "type": "string", + "default": "Stable", + "description": "ReleaseTrain this extension participates in for auto-upgrade (e.g. Stable, Preview, etc.) - only if autoUpgradeMinorVersion is 'true'." + }, + "scope": { + "oneOf": [ + { + "$ref": "#/definitions/Scope" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Scope of the extension. It can be either Cluster or Namespace; but not both." + }, + "statuses": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ExtensionStatus" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Status from this extension." + }, + "version": { + "type": "string", + "description": "Version of the extension for this extension, if it is 'pinned' to a specific version. autoUpgradeMinorVersion must be 'false'." + } + }, + "description": "Properties of an Extension resource" + }, + "ExtensionStatus": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "Status code provided by the Extension" + }, + "displayStatus": { + "type": "string", + "description": "Short description of status of the extension." + }, + "level": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Error", + "Warning", + "Information" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Level of the status." + }, + "message": { + "type": "string", + "description": "Detailed message of the status from the Extension." + }, + "time": { + "type": "string", + "description": "DateLiteral (per ISO8601) noting the time of installation status." + } + }, + "description": "Status from the extension." + }, + "HelmOperatorProperties": { + "type": "object", + "properties": { + "chartValues": { + "type": "string", + "description": "Values override for the operator Helm chart." + }, + "chartVersion": { + "type": "string", + "description": "Version of the operator Helm chart." + } + }, + "description": "Properties for Helm operator." + }, + "Identity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SystemAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The identity type." + } + }, + "description": "Identity for the resource." + }, + "Scope": { + "type": "object", + "properties": { + "cluster": { + "oneOf": [ + { + "$ref": "#/definitions/ScopeCluster" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies that the scope of the extension is Cluster" + }, + "namespace": { + "oneOf": [ + { + "$ref": "#/definitions/ScopeNamespace" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies that the scope of the extension is Namespace" + } + }, + "description": "Scope of the extension. It can be either Cluster or Namespace; but not both." + }, + "ScopeCluster": { + "type": "object", + "properties": { + "releaseNamespace": { + "type": "string", + "description": "Namespace where the extension Release must be placed, for a Cluster scoped extension. If this namespace does not exist, it will be created" + } + }, + "description": "Specifies that the scope of the extension is Cluster" + }, + "ScopeNamespace": { + "type": "object", + "properties": { + "targetNamespace": { + "type": "string", + "description": "Namespace where the extension will be created for an Namespace scoped extension. If this namespace does not exist, it will be created" + } + }, + "description": "Specifies that the scope of the extension is Namespace" + }, + "SourceControlConfigurationProperties": { + "type": "object", + "properties": { + "configurationProtectedSettings": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Name-value pairs of protected configuration settings for the configuration" + }, + "enableHelmOperator": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Option to enable Helm Operator for this git configuration." + }, + "helmOperatorProperties": { + "oneOf": [ + { + "$ref": "#/definitions/HelmOperatorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties for Helm operator." + }, + "operatorInstanceName": { + "type": "string", + "description": "Instance name of the operator - identifying the specific configuration." + }, + "operatorNamespace": { + "type": "string", + "default": "default", + "description": "The namespace to which this operator is installed to. Maximum of 253 lower case alphanumeric characters, hyphen and period only." + }, + "operatorParams": { + "type": "string", + "description": "Any Parameters for the Operator instance in string format." + }, + "operatorScope": { + "oneOf": [ + { + "type": "string", + "enum": [ + "cluster", + "namespace" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Scope at which the operator will be installed." + }, + "operatorType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Flux" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of the operator." + }, + "repositoryUrl": { + "type": "string", + "description": "Url of the SourceControl Repository." + }, + "sshKnownHostsContents": { + "type": "string", + "description": "Base64-encoded known_hosts contents containing public SSH keys required to access private Git instances" + } + }, + "description": "Properties to create a Source Control Configuration resource" + }, + "SystemData": { + "type": "object", + "properties": { + "createdAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource creation (UTC)." + }, + "createdBy": { + "type": "string", + "description": "The identity that created the resource." + }, + "createdByType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of identity that created the resource." + }, + "lastModifiedAt": { + "type": "string", + "format": "date-time", + "description": "The timestamp of resource last modification (UTC)" + }, + "lastModifiedBy": { + "type": "string", + "description": "The identity that last modified the resource." + }, + "lastModifiedByType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "User", + "Application", + "ManagedIdentity", + "Key" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of identity that last modified the resource." + } + }, + "description": "Metadata pertaining to creation and last modification of the resource." + } + } +} \ No newline at end of file From c19047688463084f15bf3d1162c97cc801eac926 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 21 May 2021 08:32:01 +0000 Subject: [PATCH 12/17] Autogenerate schemas --- schemas/2018-06-01/Microsoft.DataFactory.json | 64 +++++++++++++++++++ 1 file changed, 64 insertions(+) diff --git a/schemas/2018-06-01/Microsoft.DataFactory.json b/schemas/2018-06-01/Microsoft.DataFactory.json index 3f4e972db3..af62e685bc 100644 --- a/schemas/2018-06-01/Microsoft.DataFactory.json +++ b/schemas/2018-06-01/Microsoft.DataFactory.json @@ -2160,6 +2160,20 @@ "properties": {}, "description": "The type of copy behavior for copy sink." }, + "metadata": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specify the custom metadata to be added to sink data. Type: array of objects (or Expression with resultType array of objects)." + }, "type": { "type": "string", "enum": [ @@ -5770,6 +5784,20 @@ "properties": {}, "description": "The type of copy behavior for copy sink." }, + "metadata": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MetadataItem" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specify the custom metadata to be added to sink data. Type: array of objects (or Expression with resultType array of objects)." + }, "type": { "type": "string", "enum": [ @@ -6989,6 +7017,11 @@ ], "description": "Unmatched properties from the message are deserialized this collection" }, + "disableMetricsCollection": { + "type": "object", + "properties": {}, + "description": "If true, disable data store metrics collection. Default is false. Type: boolean (or Expression with resultType boolean)." + }, "maxConcurrentConnections": { "type": "object", "properties": {}, @@ -7146,6 +7179,11 @@ ], "description": "Unmatched properties from the message are deserialized this collection" }, + "disableMetricsCollection": { + "type": "object", + "properties": {}, + "description": "If true, disable data store metrics collection. Default is false. Type: boolean (or Expression with resultType boolean)." + }, "maxConcurrentConnections": { "type": "object", "properties": {}, @@ -17977,6 +18015,22 @@ ], "description": "A copy activity Marketo server source." }, + "MetadataItem": { + "type": "object", + "properties": { + "name": { + "type": "object", + "properties": {}, + "description": "Metadata item key name. Type: string (or Expression with resultType string)." + }, + "value": { + "type": "object", + "properties": {}, + "description": "Metadata item value. Type: string (or Expression with resultType string)." + } + }, + "description": "Specify the name and value of custom metadata item." + }, "MicrosoftAccessLinkedService": { "type": "object", "properties": { @@ -26495,6 +26549,11 @@ ], "description": "Unmatched properties from the message are deserialized this collection" }, + "disableMetricsCollection": { + "type": "object", + "properties": {}, + "description": "If true, disable data store metrics collection. Default is false. Type: boolean (or Expression with resultType boolean)." + }, "maxConcurrentConnections": { "type": "object", "properties": {}, @@ -26547,6 +26606,11 @@ "properties": {}, "description": "The type of copy behavior for copy sink." }, + "disableMetricsCollection": { + "type": "object", + "properties": {}, + "description": "If true, disable data store metrics collection. Default is false. Type: boolean (or Expression with resultType boolean)." + }, "maxConcurrentConnections": { "type": "object", "properties": {}, From d794869efa9255f1a4433ac67be746c010cdbaa6 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 21 May 2021 10:21:31 +0000 Subject: [PATCH 13/17] Autogenerate schemas --- .../2021-07-01-preview/Microsoft.Maps.json | 374 ++++++++++++++++++ schemas/common/autogeneratedResources.json | 6 + 2 files changed, 380 insertions(+) create mode 100644 schemas/2021-07-01-preview/Microsoft.Maps.json diff --git a/schemas/2021-07-01-preview/Microsoft.Maps.json b/schemas/2021-07-01-preview/Microsoft.Maps.json new file mode 100644 index 0000000000..ee77ca32db --- /dev/null +++ b/schemas/2021-07-01-preview/Microsoft.Maps.json @@ -0,0 +1,374 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-07-01-preview/Microsoft.Maps.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.Maps", + "description": "Microsoft Maps Resource Types", + "resourceDefinitions": { + "accounts": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01-preview" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ManagedServiceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity for the resource." + }, + "kind": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Gen1", + "Gen2" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Get or Set Kind property." + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the Maps Account." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MapsAccountProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Additional Map account properties" + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/accounts_creators_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/Sku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The SKU of the Maps Account." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Maps/accounts" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "sku", + "type" + ], + "description": "Microsoft.Maps/accounts" + }, + "accounts_creators": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the Maps Creator instance." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CreatorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Creator resource properties" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.Maps/accounts/creators" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.Maps/accounts/creators" + } + }, + "definitions": { + "accounts_creators_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-07-01-preview" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "description": "The name of the Maps Creator instance." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CreatorProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Creator resource properties" + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "creators" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.Maps/accounts/creators" + }, + "Components1jq1t4ischemasmanagedserviceidentitypropertiesuserassignedidentitiesadditionalproperties": { + "type": "object", + "properties": {} + }, + "CreatorProperties": { + "type": "object", + "properties": { + "storageUnits": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The storage units to be allocated. Integer values from 1 to 100, inclusive." + } + }, + "required": [ + "storageUnits" + ], + "description": "Creator resource properties" + }, + "LinkedResource": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "ARM resource id in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/accounts/{storageName}'." + }, + "uniqueName": { + "type": "string", + "description": "A provided name which uniquely identifies the linked resource." + } + }, + "required": [ + "id", + "uniqueName" + ], + "description": "Linked resource is reference to a resource deployed in an Azure subscription, add the linked resource `uniqueName` value as an optional parameter for operations on Azure Maps Geospatial REST APIs." + }, + "ManagedServiceIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SystemAssigned", + "UserAssigned", + "SystemAssigned, UserAssigned", + "None" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The identity type." + }, + "userAssignedIdentities": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "$ref": "#/definitions/Components1jq1t4ischemasmanagedserviceidentitypropertiesuserassignedidentitiesadditionalproperties" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'." + } + }, + "description": "Identity for the resource." + }, + "MapsAccountProperties": { + "type": "object", + "properties": { + "disableLocalAuth": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Allows toggle functionality on Azure Policy to disable Azure Maps local authentication support. This will disable Shared Keys authentication from any usage." + }, + "linkedResources": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/LinkedResource" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The array of associated resources to the Map account. Linked resource in the array cannot individually update, you must update all linked resources in the array together. These resources may be used on operations on the Azure Maps REST API. Access is controlled by the Map Account Managed Identity(s) permissions to those resource(s)." + } + }, + "description": "Additional Map account properties" + }, + "Sku": { + "type": "object", + "properties": { + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "S0", + "S1", + "G2" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The name of the SKU, in standard format (such as S0)." + } + }, + "required": [ + "name" + ], + "description": "The SKU of the Maps Account." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 20ab2ae5e7..d8a8613077 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -6115,6 +6115,12 @@ { "$ref": "https://schema.management.azure.com/schemas/2021-02-01/Microsoft.Maps.json#/resourceDefinitions/accounts_creators" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-07-01-preview/Microsoft.Maps.json#/resourceDefinitions/accounts" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-07-01-preview/Microsoft.Maps.json#/resourceDefinitions/accounts_creators" + }, { "$ref": "https://schema.management.azure.com/schemas/2018-02-02/Microsoft.Migrate.json#/resourceDefinitions/projects" }, From 2401f63a2a4d5446e4eb72df5cefd7738f8ab37e Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 21 May 2021 10:21:43 +0000 Subject: [PATCH 14/17] Update resource list --- generator/resources.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index 8baf2d8cdc..2e6239f118 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -3433,11 +3433,13 @@ "2017-01-01-preview", "2018-05-01", "2020-02-01-preview", - "2021-02-01" + "2021-02-01", + "2021-07-01-preview" ], "Microsoft.Maps/accounts/creators": [ "2020-02-01-preview", - "2021-02-01" + "2021-02-01", + "2021-07-01-preview" ], "Microsoft.Maps/accounts/privateAtlases": [ "2020-02-01-preview" From 29593803bfab955c9fb8a0f90cf6640211c0298e Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Fri, 21 May 2021 12:10:31 +0000 Subject: [PATCH 15/17] Autogenerate schemas --- schemas/2020-11-01-preview/Microsoft.Sql.json | 6 +++--- schemas/2021-02-01-preview/Microsoft.Sql.json | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/schemas/2020-11-01-preview/Microsoft.Sql.json b/schemas/2020-11-01-preview/Microsoft.Sql.json index 42ed01324f..51283ce3e7 100644 --- a/schemas/2020-11-01-preview/Microsoft.Sql.json +++ b/schemas/2020-11-01-preview/Microsoft.Sql.json @@ -164,7 +164,7 @@ "identity": { "oneOf": [ { - "$ref": "#/definitions/ResourceIdentityWithUserAssignedIdentities" + "$ref": "#/definitions/ResourceIdentity" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -1089,7 +1089,7 @@ "identity": { "oneOf": [ { - "$ref": "#/definitions/ResourceIdentityWithUserAssignedIdentities" + "$ref": "#/definitions/ResourceIdentity" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -5993,7 +5993,7 @@ "status" ] }, - "ResourceIdentityWithUserAssignedIdentities": { + "ResourceIdentity": { "type": "object", "properties": { "type": { diff --git a/schemas/2021-02-01-preview/Microsoft.Sql.json b/schemas/2021-02-01-preview/Microsoft.Sql.json index f84669f0e5..341a28eb19 100644 --- a/schemas/2021-02-01-preview/Microsoft.Sql.json +++ b/schemas/2021-02-01-preview/Microsoft.Sql.json @@ -164,7 +164,7 @@ "identity": { "oneOf": [ { - "$ref": "#/definitions/ResourceIdentityWithUserAssignedIdentities" + "$ref": "#/definitions/ResourceIdentity" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -1089,7 +1089,7 @@ "identity": { "oneOf": [ { - "$ref": "#/definitions/ResourceIdentityWithUserAssignedIdentities" + "$ref": "#/definitions/ResourceIdentity" }, { "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" @@ -6109,7 +6109,7 @@ "status" ] }, - "ResourceIdentityWithUserAssignedIdentities": { + "ResourceIdentity": { "type": "object", "properties": { "type": { From 943c6e40dcd5dff2885b45a8fde4b9821e693c48 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Sat, 22 May 2021 08:39:13 +0000 Subject: [PATCH 16/17] Update resource list --- generator/resources.json | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/generator/resources.json b/generator/resources.json index 2e6239f118..97e9efcc9f 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -3574,7 +3574,8 @@ "2020-09-01", "2020-11-01", "2020-12-01", - "2021-02-01" + "2021-02-01", + "2021-04-01-preview" ], "Microsoft.NetApp/netAppAccounts/backupPolicies": [ "2020-05-01", @@ -3584,7 +3585,8 @@ "2020-09-01", "2020-11-01", "2020-12-01", - "2021-02-01" + "2021-02-01", + "2021-04-01-preview" ], "Microsoft.NetApp/netAppAccounts/capacityPools": [ "2017-08-15", @@ -3603,7 +3605,8 @@ "2020-09-01", "2020-11-01", "2020-12-01", - "2021-02-01" + "2021-02-01", + "2021-04-01-preview" ], "Microsoft.NetApp/netAppAccounts/capacityPools/volumes": [ "2017-08-15", @@ -3622,7 +3625,8 @@ "2020-09-01", "2020-11-01", "2020-12-01", - "2021-02-01" + "2021-02-01", + "2021-04-01-preview" ], "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/backups": [ "2020-05-01", @@ -3632,7 +3636,8 @@ "2020-09-01", "2020-11-01", "2020-12-01", - "2021-02-01" + "2021-02-01", + "2021-04-01-preview" ], "Microsoft.NetApp/netAppAccounts/capacityPools/volumes/snapshots": [ "2017-08-15", @@ -3651,7 +3656,8 @@ "2020-09-01", "2020-11-01", "2020-12-01", - "2021-02-01" + "2021-02-01", + "2021-04-01-preview" ], "Microsoft.NetApp/netAppAccounts/snapshotPolicies": [ "2020-05-01", @@ -3661,7 +3667,8 @@ "2020-09-01", "2020-11-01", "2020-12-01", - "2021-02-01" + "2021-02-01", + "2021-04-01-preview" ], "Microsoft.Network/ApplicationGatewayWebApplicationFirewallPolicies": [ "2018-12-01", From 0537af220c24767b1778321f276473ad354d9969 Mon Sep 17 00:00:00 2001 From: Autogenerator Pipeline Date: Mon, 24 May 2021 11:59:57 +0000 Subject: [PATCH 17/17] Update resource list --- generator/resources.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/generator/resources.json b/generator/resources.json index 97e9efcc9f..2f68274caf 100644 --- a/generator/resources.json +++ b/generator/resources.json @@ -7294,7 +7294,8 @@ "2021-03-08" ], "microsoft.insights/workbooktemplates": [ - "2019-10-17-preview" + "2019-10-17-preview", + "2020-11-20" ], "microsoft.visualstudio/account": [ "2014-04-01-preview"