From 554ce9a79285eddc5f7554b9f4bcc31525998b1a Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Tue, 25 Jul 2023 09:09:45 +0000 Subject: [PATCH] CodeGen from PR 24926 in Azure/azure-rest-api-specs Saifahmed098 databoxedge microsoft.data box edge 2023 07 01 (#24926) * Adds base for updating Microsoft.DataBoxEdge from version stable/2022-03-01 to version 2023-07-01 * Updates readme * Updates API version in new specs and examples * Adding string KubernetesWorkloadProfile in databoxedgeProperties --- schemas/2023-07-01/Microsoft.DataBoxEdge.json | 3061 +++++++++++++++++ schemas/common/autogeneratedResources.json | 42 + 2 files changed, 3103 insertions(+) create mode 100644 schemas/2023-07-01/Microsoft.DataBoxEdge.json diff --git a/schemas/2023-07-01/Microsoft.DataBoxEdge.json b/schemas/2023-07-01/Microsoft.DataBoxEdge.json new file mode 100644 index 0000000000..76583981c0 --- /dev/null +++ b/schemas/2023-07-01/Microsoft.DataBoxEdge.json @@ -0,0 +1,3061 @@ +{ + "id": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.DataBoxEdge.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.DataBoxEdge", + "description": "Microsoft DataBoxEdge Resource Types", + "resourceDefinitions": { + "dataBoxEdgeDevices": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "etag": { + "type": "string", + "description": "The etag for the devices." + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Msi identity details of the resource" + }, + "location": { + "type": "string", + "description": "The location of the device. This is a supported and registered Azure geographical region (for example, West US, East US, or Southeast Asia). The geographical region of a device cannot be changed once it is created, but if an identical geographical region is specified on update, the request will succeed." + }, + "name": { + "type": "string", + "description": "The device name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DataBoxEdgeDeviceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the Data Box Edge/Gateway device." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/dataBoxEdgeDevices_bandwidthSchedules_childResource" + }, + { + "$ref": "#/definitions/dataBoxEdgeDevices_diagnosticProactiveLogCollectionSettings_childResource" + }, + { + "$ref": "#/definitions/dataBoxEdgeDevices_diagnosticRemoteSupportSettings_childResource" + }, + { + "$ref": "#/definitions/dataBoxEdgeDevices_orders_childResource" + }, + { + "$ref": "#/definitions/dataBoxEdgeDevices_roles_childResource" + }, + { + "$ref": "#/definitions/dataBoxEdgeDevices_shares_childResource" + }, + { + "$ref": "#/definitions/dataBoxEdgeDevices_storageAccountCredentials_childResource" + }, + { + "$ref": "#/definitions/dataBoxEdgeDevices_storageAccounts_childResource" + }, + { + "$ref": "#/definitions/dataBoxEdgeDevices_triggers_childResource" + }, + { + "$ref": "#/definitions/dataBoxEdgeDevices_users_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/Sku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The SKU type." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of tags that describe the device. These tags can be used to view and group this device (across resource groups)." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices" + }, + "dataBoxEdgeDevices_bandwidthSchedules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The bandwidth schedule name which needs to be added/updated." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BandwidthScheduleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the bandwidth schedule." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataBoxEdge/dataBoxEdgeDevices/bandwidthSchedules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/bandwidthSchedules" + }, + "dataBoxEdgeDevices_diagnosticProactiveLogCollectionSettings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ProactiveLogCollectionSettingsProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of proactive log collection settings." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataBoxEdge/dataBoxEdgeDevices/diagnosticProactiveLogCollectionSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/diagnosticProactiveLogCollectionSettings" + }, + "dataBoxEdgeDevices_diagnosticRemoteSupportSettings": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DiagnosticRemoteSupportSettingsProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of remote support settings." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataBoxEdge/dataBoxEdgeDevices/diagnosticRemoteSupportSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/diagnosticRemoteSupportSettings" + }, + "dataBoxEdgeDevices_orders": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/OrderProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Order properties." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataBoxEdge/dataBoxEdgeDevices/orders" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/orders" + }, + "dataBoxEdgeDevices_roles": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/CloudEdgeManagementRole" + }, + { + "$ref": "#/definitions/IoTRole" + }, + { + "$ref": "#/definitions/KubernetesRole" + }, + { + "$ref": "#/definitions/MECRole" + } + ], + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The role name." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/dataBoxEdgeDevices_roles_addons_childResource" + }, + { + "$ref": "#/definitions/dataBoxEdgeDevices_roles_monitoringConfig_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles" + ] + } + }, + "required": [ + "apiVersion", + "name", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles" + }, + "dataBoxEdgeDevices_roles_addons": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/ArcAddon" + }, + { + "$ref": "#/definitions/IoTAddon" + } + ], + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The addon name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/addons" + ] + } + }, + "required": [ + "apiVersion", + "name", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/addons" + }, + "dataBoxEdgeDevices_roles_monitoringConfig": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "oneOf": [ + { + "type": "string", + "pattern": "^.*/default$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MonitoringMetricConfigurationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metrics properties" + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/monitoringConfig" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/monitoringConfig" + }, + "dataBoxEdgeDevices_shares": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The share name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ShareProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The share properties." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataBoxEdge/dataBoxEdgeDevices/shares" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/shares" + }, + "dataBoxEdgeDevices_storageAccountCredentials": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The storage account credential name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/StorageAccountCredentialProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The storage account credential properties." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials" + }, + "dataBoxEdgeDevices_storageAccounts": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The StorageAccount name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/StorageAccountProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The storage account properties." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/dataBoxEdgeDevices_storageAccounts_containers_childResource" + } + ] + } + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" + }, + "dataBoxEdgeDevices_storageAccounts_containers": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The container name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ContainerProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The container properties." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + }, + "dataBoxEdgeDevices_triggers": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/FileEventTrigger" + }, + { + "$ref": "#/definitions/PeriodicTimerEventTrigger" + } + ], + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The trigger name." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataBoxEdge/dataBoxEdgeDevices/triggers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/triggers" + }, + "dataBoxEdgeDevices_users": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The user name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/UserProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The user properties." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" + } + }, + "definitions": { + "Address": { + "type": "object", + "properties": { + "addressLine1": { + "type": "string", + "description": "The address line1." + }, + "addressLine2": { + "type": "string", + "description": "The address line1." + }, + "addressLine3": { + "type": "string", + "description": "The address line1." + }, + "city": { + "type": "string", + "description": "The city name." + }, + "country": { + "type": "string", + "description": "The country name." + }, + "postalCode": { + "type": "string", + "description": "The postal code." + }, + "state": { + "type": "string", + "description": "The state name." + } + }, + "required": [ + "country" + ], + "description": "The shipping address of the customer." + }, + "ArcAddon": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "ArcForKubernetes" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ArcAddonProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Arc addon properties." + } + }, + "required": [ + "kind", + "properties" + ], + "description": "Arc Addon." + }, + "ArcAddonProperties": { + "type": "object", + "properties": { + "resourceGroupName": { + "type": "string", + "description": "Arc resource group name" + }, + "resourceLocation": { + "type": "string", + "description": "Arc resource location" + }, + "resourceName": { + "type": "string", + "description": "Arc resource Name" + }, + "subscriptionId": { + "type": "string", + "description": "Arc resource subscription Id" + } + }, + "required": [ + "resourceGroupName", + "resourceLocation", + "resourceName", + "subscriptionId" + ], + "description": "Arc addon properties." + }, + "AsymmetricEncryptedSecret": { + "type": "object", + "properties": { + "encryptionAlgorithm": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "AES256", + "RSAES_PKCS1_v_1_5" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The algorithm used to encrypt \"Value\"." + }, + "encryptionCertThumbprint": { + "type": "string", + "description": "Thumbprint certificate used to encrypt \\\"Value\\\". If the value is unencrypted, it will be null." + }, + "value": { + "type": "string", + "description": "The value of the secret." + } + }, + "required": [ + "encryptionAlgorithm", + "value" + ], + "description": "Represent the secrets intended for encryption with asymmetric key pair." + }, + "Authentication": { + "type": "object", + "properties": { + "symmetricKey": { + "oneOf": [ + { + "$ref": "#/definitions/SymmetricKey" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Symmetric key for authentication." + } + }, + "description": "Authentication mechanism for IoT devices." + }, + "AzureContainerInfo": { + "type": "object", + "properties": { + "containerName": { + "type": "string", + "description": "Container name (Based on the data format specified, this represents the name of Azure Files/Page blob/Block blob)." + }, + "dataFormat": { + "oneOf": [ + { + "type": "string", + "enum": [ + "BlockBlob", + "PageBlob", + "AzureFile" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Storage format used for the file represented by the share." + }, + "storageAccountCredentialId": { + "type": "string", + "description": "ID of the storage account credential used to access storage." + } + }, + "required": [ + "containerName", + "dataFormat", + "storageAccountCredentialId" + ], + "description": "Azure container mapping of the endpoint." + }, + "BandwidthScheduleProperties": { + "type": "object", + "properties": { + "days": { + "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 when this schedule is applicable." + }, + "rateInMbps": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The bandwidth rate in Mbps." + }, + "start": { + "type": "string", + "description": "The start time of the schedule in UTC." + }, + "stop": { + "type": "string", + "description": "The stop time of the schedule in UTC." + } + }, + "required": [ + "days", + "rateInMbps", + "start", + "stop" + ], + "description": "The properties of the bandwidth schedule." + }, + "ClientAccessRight": { + "type": "object", + "properties": { + "accessPermission": { + "oneOf": [ + { + "type": "string", + "enum": [ + "NoAccess", + "ReadOnly", + "ReadWrite" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of access to be allowed for the client." + }, + "client": { + "type": "string", + "description": "IP of the client." + } + }, + "required": [ + "accessPermission", + "client" + ], + "description": "The mapping between a particular client IP and the type of access client has on the NFS share." + }, + "CloudEdgeManagementRole": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "CloudEdgeManagement" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CloudEdgeManagementRoleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "CloudEdgeManagement Role properties." + } + }, + "required": [ + "kind" + ], + "description": "The preview of Virtual Machine Cloud Management from the Azure supports deploying and managing VMs on your Azure Stack Edge device from Azure Portal. \r\nFor more information, refer to: https://docs.microsoft.com/en-us/azure/databox-online/azure-stack-edge-gpu-virtual-machine-overview\r\nBy using this feature, you agree to the preview legal terms. See the https://azure.microsoft.com/en-us/support/legal/preview-supplemental-terms/ for additional details." + }, + "CloudEdgeManagementRoleProperties": { + "type": "object", + "properties": { + "roleStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Role status." + } + }, + "required": [ + "roleStatus" + ], + "description": "CloudEdgeManagement Role properties." + }, + "ComputeResource": { + "type": "object", + "properties": { + "memoryInGB": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Memory in GB" + }, + "processorCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Processor count" + } + }, + "required": [ + "memoryInGB", + "processorCount" + ], + "description": "Compute infrastructure Resource" + }, + "ContactDetails": { + "type": "object", + "properties": { + "companyName": { + "type": "string", + "description": "The name of the company." + }, + "contactPerson": { + "type": "string", + "description": "The contact person name." + }, + "emailList": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The email list." + }, + "phone": { + "type": "string", + "description": "The phone number." + } + }, + "required": [ + "companyName", + "contactPerson", + "emailList", + "phone" + ], + "description": "Contains all the contact details of the customer." + }, + "ContainerProperties": { + "type": "object", + "properties": { + "dataFormat": { + "oneOf": [ + { + "type": "string", + "enum": [ + "BlockBlob", + "PageBlob", + "AzureFile" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "DataFormat for Container." + } + }, + "required": [ + "dataFormat" + ], + "description": "The container properties." + }, + "DataBoxEdgeDeviceProperties": { + "type": "object", + "properties": { + "dataResidency": { + "oneOf": [ + { + "$ref": "#/definitions/DataResidency" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Wraps data-residency related information for edge-resource and this should be used with ARM layer." + } + }, + "description": "The properties of the Data Box Edge/Gateway device." + }, + "dataBoxEdgeDevices_bandwidthSchedules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The bandwidth schedule name which needs to be added/updated." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BandwidthScheduleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of the bandwidth schedule." + }, + "type": { + "type": "string", + "enum": [ + "bandwidthSchedules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/bandwidthSchedules" + }, + "dataBoxEdgeDevices_diagnosticProactiveLogCollectionSettings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ProactiveLogCollectionSettingsProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of proactive log collection settings." + }, + "type": { + "type": "string", + "enum": [ + "diagnosticProactiveLogCollectionSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/diagnosticProactiveLogCollectionSettings" + }, + "dataBoxEdgeDevices_diagnosticRemoteSupportSettings_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DiagnosticRemoteSupportSettingsProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of remote support settings." + }, + "type": { + "type": "string", + "enum": [ + "diagnosticRemoteSupportSettings" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/diagnosticRemoteSupportSettings" + }, + "dataBoxEdgeDevices_orders_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/OrderProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Order properties." + }, + "type": { + "type": "string", + "enum": [ + "orders" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/orders" + }, + "dataBoxEdgeDevices_roles_addons_childResource": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/ArcAddon" + }, + { + "$ref": "#/definitions/IoTAddon" + } + ], + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The addon name." + }, + "type": { + "type": "string", + "enum": [ + "addons" + ] + } + }, + "required": [ + "apiVersion", + "name", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/addons" + }, + "dataBoxEdgeDevices_roles_childResource": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/CloudEdgeManagementRole" + }, + { + "$ref": "#/definitions/IoTRole" + }, + { + "$ref": "#/definitions/KubernetesRole" + }, + { + "$ref": "#/definitions/MECRole" + } + ], + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The role name." + }, + "type": { + "type": "string", + "enum": [ + "roles" + ] + } + }, + "required": [ + "apiVersion", + "name", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles" + }, + "dataBoxEdgeDevices_roles_monitoringConfig_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "enum": [ + "default" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MonitoringMetricConfigurationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metrics properties" + }, + "type": { + "type": "string", + "enum": [ + "monitoringConfig" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/roles/monitoringConfig" + }, + "dataBoxEdgeDevices_shares_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The share name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ShareProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The share properties." + }, + "type": { + "type": "string", + "enum": [ + "shares" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/shares" + }, + "dataBoxEdgeDevices_storageAccountCredentials_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The storage account credential name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/StorageAccountCredentialProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The storage account credential properties." + }, + "type": { + "type": "string", + "enum": [ + "storageAccountCredentials" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccountCredentials" + }, + "dataBoxEdgeDevices_storageAccounts_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The StorageAccount name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/StorageAccountProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The storage account properties." + }, + "type": { + "type": "string", + "enum": [ + "storageAccounts" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts" + }, + "dataBoxEdgeDevices_storageAccounts_containers_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The container name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ContainerProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The container properties." + }, + "type": { + "type": "string", + "enum": [ + "containers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/storageAccounts/containers" + }, + "dataBoxEdgeDevices_triggers_childResource": { + "type": "object", + "oneOf": [ + { + "$ref": "#/definitions/FileEventTrigger" + }, + { + "$ref": "#/definitions/PeriodicTimerEventTrigger" + } + ], + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The trigger name." + }, + "type": { + "type": "string", + "enum": [ + "triggers" + ] + } + }, + "required": [ + "apiVersion", + "name", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/triggers" + }, + "dataBoxEdgeDevices_users_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-07-01" + ] + }, + "name": { + "type": "string", + "description": "The user name." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/UserProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The user properties." + }, + "type": { + "type": "string", + "enum": [ + "users" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DataBoxEdge/dataBoxEdgeDevices/users" + }, + "DataResidency": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "GeoZoneReplication", + "ZoneReplication" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "DataResidencyType enum." + } + }, + "description": "Wraps data-residency related information for edge-resource and this should be used with ARM layer." + }, + "DiagnosticRemoteSupportSettingsProperties": { + "type": "object", + "properties": { + "remoteSupportSettingsList": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/RemoteSupportSettings" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Remote support settings list according to the RemoteApplicationType" + } + }, + "description": "The properties of remote support settings." + }, + "FileEventTrigger": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "FileEvent" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FileTriggerProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "File trigger properties." + } + }, + "required": [ + "kind", + "properties" + ], + "description": "Trigger details." + }, + "FileSourceInfo": { + "type": "object", + "properties": { + "shareId": { + "type": "string", + "description": "File share ID." + } + }, + "required": [ + "shareId" + ], + "description": "File source details." + }, + "FileTriggerProperties": { + "type": "object", + "properties": { + "customContextTag": { + "type": "string", + "maxLength": 192, + "description": "A custom context tag typically used to correlate the trigger against its usage. For example, if a periodic timer trigger is intended for certain specific IoT modules in the device, the tag can be the name or the image URL of the module." + }, + "sinkInfo": { + "oneOf": [ + { + "$ref": "#/definitions/RoleSinkInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Compute role against which events will be raised." + }, + "sourceInfo": { + "oneOf": [ + { + "$ref": "#/definitions/FileSourceInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "File source details." + } + }, + "required": [ + "sinkInfo", + "sourceInfo" + ], + "description": "File trigger properties." + }, + "ImageRepositoryCredential": { + "type": "object", + "properties": { + "imageRepositoryUrl": { + "type": "string", + "description": "Image repository url (e.g.: mcr.microsoft.com)." + }, + "password": { + "oneOf": [ + { + "$ref": "#/definitions/AsymmetricEncryptedSecret" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represent the secrets intended for encryption with asymmetric key pair." + }, + "userName": { + "type": "string", + "description": "Repository user name." + } + }, + "required": [ + "imageRepositoryUrl", + "userName" + ], + "description": "Image repository credential." + }, + "IoTAddon": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "IotEdge" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/IoTAddonProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "IoT addon properties." + } + }, + "required": [ + "kind", + "properties" + ], + "description": "IoT Addon." + }, + "IoTAddonProperties": { + "type": "object", + "properties": { + "ioTDeviceDetails": { + "oneOf": [ + { + "$ref": "#/definitions/IoTDeviceInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata of IoT device/IoT Edge device to be configured." + }, + "ioTEdgeDeviceDetails": { + "oneOf": [ + { + "$ref": "#/definitions/IoTDeviceInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata of IoT device/IoT Edge device to be configured." + } + }, + "required": [ + "ioTDeviceDetails", + "ioTEdgeDeviceDetails" + ], + "description": "IoT addon properties." + }, + "IoTDeviceInfo": { + "type": "object", + "properties": { + "authentication": { + "oneOf": [ + { + "$ref": "#/definitions/Authentication" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Authentication mechanism for IoT devices." + }, + "deviceId": { + "type": "string", + "description": "ID of the IoT device/edge device." + }, + "ioTHostHub": { + "type": "string", + "description": "Host name for the IoT hub associated to the device." + }, + "ioTHostHubId": { + "type": "string", + "description": "Id for the IoT hub associated to the device." + } + }, + "required": [ + "deviceId", + "ioTHostHub" + ], + "description": "Metadata of IoT device/IoT Edge device to be configured." + }, + "IoTEdgeAgentInfo": { + "type": "object", + "properties": { + "imageName": { + "type": "string", + "description": "Name of the IoT edge agent image." + }, + "imageRepository": { + "oneOf": [ + { + "$ref": "#/definitions/ImageRepositoryCredential" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Image repository credential." + }, + "tag": { + "type": "string", + "description": "Image Tag." + } + }, + "required": [ + "imageName", + "tag" + ], + "description": "IoT edge agent details is optional, this will be used for download system Agent module while bootstrapping IoT Role if specified." + }, + "IoTRole": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "IOT" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/IoTRoleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "IoT role properties." + } + }, + "required": [ + "kind" + ], + "description": "Compute role." + }, + "IoTRoleProperties": { + "type": "object", + "properties": { + "computeResource": { + "oneOf": [ + { + "$ref": "#/definitions/ComputeResource" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Compute infrastructure Resource" + }, + "hostPlatform": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Windows", + "Linux" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Host OS supported by the IoT role." + }, + "ioTDeviceDetails": { + "oneOf": [ + { + "$ref": "#/definitions/IoTDeviceInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata of IoT device/IoT Edge device to be configured." + }, + "ioTEdgeAgentInfo": { + "oneOf": [ + { + "$ref": "#/definitions/IoTEdgeAgentInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "IoT edge agent details is optional, this will be used for download system Agent module while bootstrapping IoT Role if specified." + }, + "ioTEdgeDeviceDetails": { + "oneOf": [ + { + "$ref": "#/definitions/IoTDeviceInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata of IoT device/IoT Edge device to be configured." + }, + "roleStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Role status." + }, + "shareMappings": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MountPointMap" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Mount points of shares in role(s)." + } + }, + "required": [ + "hostPlatform", + "ioTDeviceDetails", + "ioTEdgeDeviceDetails", + "roleStatus" + ], + "description": "IoT role properties." + }, + "KubernetesClusterInfo": { + "type": "object", + "properties": { + "version": { + "type": "string", + "description": "Kubernetes cluster version" + } + }, + "required": [ + "version" + ], + "description": "Kubernetes cluster configuration" + }, + "KubernetesRole": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "Kubernetes" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/KubernetesRoleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Kubernetes role properties." + } + }, + "required": [ + "kind" + ], + "description": "The limited preview of Kubernetes Cluster Management from the Azure supports:\r\n1. Using a simple turn-key option in Azure Portal, deploy a Kubernetes cluster on your Azure Stack Edge device. \r\n2. Configure Kubernetes cluster running on your device with Arc enabled Kubernetes with a click of a button in the Azure Portal. \r\n Azure Arc enables organizations to view, manage, and govern their on-premises Kubernetes clusters using the Azure Portal, command line tools, and APIs.\r\n3. Easily configure Persistent Volumes using SMB and NFS shares for storing container data. \r\n For more information, refer to the document here: https://databoxupdatepackages.blob.core.windows.net/documentation/Microsoft-Azure-Stack-Edge-K8-Cloud-Management-20210323.pdf \r\n Or Demo: https://databoxupdatepackages.blob.core.windows.net/documentation/Microsoft-Azure-Stack-Edge-K8S-Cloud-Management-20210323.mp4\r\n By using this feature, you agree to the preview legal terms. See the https://azure.microsoft.com/en-us/support/legal/preview-supplemental-terms/" + }, + "KubernetesRoleCompute": { + "type": "object", + "properties": { + "vmProfile": { + "type": "string", + "description": "VM profile" + } + }, + "required": [ + "vmProfile" + ], + "description": "Kubernetes role compute resource" + }, + "KubernetesRoleProperties": { + "type": "object", + "properties": { + "hostPlatform": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Windows", + "Linux" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Host OS supported by the Kubernetes role." + }, + "kubernetesClusterInfo": { + "oneOf": [ + { + "$ref": "#/definitions/KubernetesClusterInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Kubernetes cluster configuration" + }, + "kubernetesRoleResources": { + "oneOf": [ + { + "$ref": "#/definitions/KubernetesRoleResources" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Kubernetes role resources" + }, + "roleStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Role status." + } + }, + "required": [ + "hostPlatform", + "kubernetesClusterInfo", + "kubernetesRoleResources", + "roleStatus" + ], + "description": "Kubernetes role properties." + }, + "KubernetesRoleResources": { + "type": "object", + "properties": { + "compute": { + "oneOf": [ + { + "$ref": "#/definitions/KubernetesRoleCompute" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Kubernetes role compute resource" + }, + "storage": { + "oneOf": [ + { + "$ref": "#/definitions/KubernetesRoleStorage" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Kubernetes role storage resource" + } + }, + "required": [ + "compute" + ], + "description": "Kubernetes role resources" + }, + "KubernetesRoleStorage": { + "type": "object", + "properties": { + "endpoints": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MountPointMap" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Mount points of shares in role(s)." + } + }, + "description": "Kubernetes role storage resource" + }, + "MECRole": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "MEC" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MECRoleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "MEC role properties." + } + }, + "required": [ + "kind" + ], + "description": "MEC role." + }, + "MECRoleProperties": { + "type": "object", + "properties": { + "connectionString": { + "oneOf": [ + { + "$ref": "#/definitions/AsymmetricEncryptedSecret" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represent the secrets intended for encryption with asymmetric key pair." + }, + "controllerEndpoint": { + "type": "string", + "description": "Controller Endpoint." + }, + "resourceUniqueId": { + "type": "string", + "description": "Unique Id of the Resource." + }, + "roleStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Role status." + } + }, + "required": [ + "roleStatus" + ], + "description": "MEC role properties." + }, + "MetricConfiguration": { + "type": "object", + "properties": { + "counterSets": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MetricCounterSet" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Host name for the IoT hub associated to the device." + }, + "mdmAccount": { + "type": "string", + "description": "The MDM account to which the counters should be pushed." + }, + "metricNameSpace": { + "type": "string", + "description": "The MDM namespace to which the counters should be pushed. This is required if MDMAccount is specified" + }, + "resourceId": { + "type": "string", + "description": "The Resource ID on which the metrics should be pushed." + } + }, + "required": [ + "counterSets", + "resourceId" + ], + "description": "Metric configuration." + }, + "MetricCounter": { + "type": "object", + "properties": { + "additionalDimensions": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MetricDimension" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The additional dimensions to be added to metric." + }, + "dimensionFilter": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MetricDimension" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The dimension filter." + }, + "instance": { + "type": "string", + "description": "The instance from which counter should be collected." + }, + "name": { + "type": "string", + "description": "The counter name." + } + }, + "required": [ + "name" + ], + "description": "The metric counter" + }, + "MetricCounterSet": { + "type": "object", + "properties": { + "counters": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MetricCounter" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The counters that should be collected in this set." + } + }, + "required": [ + "counters" + ], + "description": "The metric counter set" + }, + "MetricDimension": { + "type": "object", + "properties": { + "sourceName": { + "type": "string", + "description": "The dimension value." + }, + "sourceType": { + "type": "string", + "description": "The dimension type." + } + }, + "required": [ + "sourceName", + "sourceType" + ], + "description": "The metric dimension" + }, + "MonitoringMetricConfigurationProperties": { + "type": "object", + "properties": { + "metricConfigurations": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MetricConfiguration" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The metrics configuration details" + } + }, + "required": [ + "metricConfigurations" + ], + "description": "Metrics properties" + }, + "MountPointMap": { + "type": "object", + "properties": { + "shareId": { + "type": "string", + "description": "ID of the share mounted to the role VM." + } + }, + "required": [ + "shareId" + ], + "description": "The share mount point." + }, + "OrderProperties": { + "type": "object", + "properties": { + "contactInformation": { + "oneOf": [ + { + "$ref": "#/definitions/ContactDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Contains all the contact details of the customer." + }, + "shipmentType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "NotApplicable", + "ShippedToCustomer", + "SelfPickup" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "ShipmentType of the order." + }, + "shippingAddress": { + "oneOf": [ + { + "$ref": "#/definitions/Address" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The shipping address of the customer." + } + }, + "required": [ + "contactInformation" + ], + "description": "Order properties." + }, + "PeriodicTimerEventTrigger": { + "type": "object", + "properties": { + "kind": { + "type": "string", + "enum": [ + "PeriodicTimerEvent" + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PeriodicTimerProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Periodic timer trigger properties." + } + }, + "required": [ + "kind", + "properties" + ], + "description": "Trigger details." + }, + "PeriodicTimerProperties": { + "type": "object", + "properties": { + "customContextTag": { + "type": "string", + "maxLength": 192, + "description": "A custom context tag typically used to correlate the trigger against its usage. For example, if a periodic timer trigger is intended for certain specific IoT modules in the device, the tag can be the name or the image URL of the module." + }, + "sinkInfo": { + "oneOf": [ + { + "$ref": "#/definitions/RoleSinkInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Compute role against which events will be raised." + }, + "sourceInfo": { + "oneOf": [ + { + "$ref": "#/definitions/PeriodicTimerSourceInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Periodic timer event source." + } + }, + "required": [ + "sinkInfo", + "sourceInfo" + ], + "description": "Periodic timer trigger properties." + }, + "PeriodicTimerSourceInfo": { + "type": "object", + "properties": { + "schedule": { + "type": "string", + "description": "Periodic frequency at which timer event needs to be raised. Supports daily, hourly, minutes, and seconds." + }, + "startTime": { + "type": "string", + "format": "date-time", + "description": "The time of the day that results in a valid trigger. Schedule is computed with reference to the time specified upto seconds. If timezone is not specified the time will considered to be in device timezone. The value will always be returned as UTC time." + }, + "topic": { + "type": "string", + "description": "Topic where periodic events are published to IoT device." + } + }, + "required": [ + "schedule", + "startTime" + ], + "description": "Periodic timer event source." + }, + "ProactiveLogCollectionSettingsProperties": { + "type": "object", + "properties": { + "userConsent": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Proactive diagnostic collection consent flag." + } + }, + "required": [ + "userConsent" + ], + "description": "The properties of proactive log collection settings." + }, + "RefreshDetails": { + "type": "object", + "properties": { + "errorManifestFile": { + "type": "string", + "description": "Indicates the relative path of the error xml for the last refresh job on this particular share or container, if any. This could be a failed job or a successful job." + }, + "inProgressRefreshJobId": { + "type": "string", + "description": "If a refresh job is currently in progress on this share or container, this field indicates the ARM resource ID of that job. The field is empty if no job is in progress." + }, + "lastCompletedRefreshJobTimeInUTC": { + "type": "string", + "format": "date-time", + "description": "Indicates the completed time for the last refresh job on this particular share or container, if any.This could be a failed job or a successful job." + }, + "lastJob": { + "type": "string", + "description": "Indicates the id of the last refresh job on this particular share or container,if any. This could be a failed job or a successful job." + } + }, + "description": "Fields for tracking refresh job on the share or container." + }, + "RemoteSupportSettings": { + "type": "object", + "properties": { + "accessLevel": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "ReadOnly", + "ReadWrite", + "FullAccess" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Access level allowed for this remote application type." + }, + "expirationTimeStampInUTC": { + "type": "string", + "format": "date-time", + "description": "Expiration time stamp" + }, + "remoteApplicationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Powershell", + "WAC", + "LocalUI", + "AllApplications" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Remote application type." + } + }, + "description": "RemoteApplicationType for which remote support settings is being modified" + }, + "ResourceIdentity": { + "type": "object", + "properties": { + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity type." + } + }, + "description": "Msi identity details of the resource" + }, + "RoleSinkInfo": { + "type": "object", + "properties": { + "roleId": { + "type": "string", + "description": "Compute role ID." + } + }, + "required": [ + "roleId" + ], + "description": "Compute role against which events will be raised." + }, + "ShareProperties": { + "type": "object", + "properties": { + "accessProtocol": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SMB", + "NFS" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Access protocol to be used by the share." + }, + "azureContainerInfo": { + "oneOf": [ + { + "$ref": "#/definitions/AzureContainerInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Azure container mapping of the endpoint." + }, + "clientAccessRights": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ClientAccessRight" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of IP addresses and corresponding access rights on the share(required for NFS protocol)." + }, + "dataPolicy": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Cloud", + "Local" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data policy of the share." + }, + "description": { + "type": "string", + "description": "Description for the share." + }, + "monitoringStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Current monitoring status of the share." + }, + "refreshDetails": { + "oneOf": [ + { + "$ref": "#/definitions/RefreshDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Fields for tracking refresh job on the share or container." + }, + "shareStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Offline", + "Unknown", + "OK", + "Updating", + "NeedsAttention" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Current status of the share." + }, + "userAccessRights": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/UserAccessRight" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Mapping of users and corresponding access rights on the share (required for SMB protocol)." + } + }, + "required": [ + "accessProtocol", + "monitoringStatus", + "shareStatus" + ], + "description": "The share properties." + }, + "Sku": { + "type": "object", + "properties": { + "name": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Gateway", + "Edge", + "TEA_1Node", + "TEA_1Node_UPS", + "TEA_1Node_Heater", + "TEA_1Node_UPS_Heater", + "TEA_4Node_Heater", + "TEA_4Node_UPS_Heater", + "TMA", + "TDC", + "TCA_Small", + "GPU", + "TCA_Large", + "EdgeP_Base", + "EdgeP_High", + "EdgePR_Base", + "EdgePR_Base_UPS", + "EP2_64_1VPU_W", + "EP2_128_1T4_Mx1_W", + "EP2_256_2T4_W", + "EdgeMR_Mini", + "RCA_Small", + "RCA_Large", + "RDC", + "Management", + "EP2_64_Mx1_W", + "EP2_128_GPU1_Mx1_W", + "EP2_256_GPU2_Mx1", + "EdgeMR_TCP" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "SKU name." + }, + "tier": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The SKU tier. This is based on the SKU name." + } + }, + "description": "The SKU type." + }, + "StorageAccountCredentialProperties": { + "type": "object", + "properties": { + "accountKey": { + "oneOf": [ + { + "$ref": "#/definitions/AsymmetricEncryptedSecret" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represent the secrets intended for encryption with asymmetric key pair." + }, + "accountType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "GeneralPurposeStorage", + "BlobStorage" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of storage accessed on the storage account." + }, + "alias": { + "type": "string", + "description": "Alias for the storage account." + }, + "blobDomainName": { + "type": "string", + "description": "Blob end point for private clouds." + }, + "connectionString": { + "type": "string", + "description": "Connection string for the storage account. Use this string if username and account key are not specified." + }, + "sslStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Signifies whether SSL needs to be enabled or not." + }, + "storageAccountId": { + "type": "string", + "description": "Id of the storage account." + }, + "userName": { + "type": "string", + "description": "Username for the storage account." + } + }, + "required": [ + "accountType", + "alias", + "sslStatus" + ], + "description": "The storage account credential properties." + }, + "StorageAccountProperties": { + "type": "object", + "properties": { + "dataPolicy": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Cloud", + "Local" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Data policy of the storage Account." + }, + "description": { + "type": "string", + "description": "Description for the storage Account." + }, + "storageAccountCredentialId": { + "type": "string", + "description": "Storage Account Credential Id" + }, + "storageAccountStatus": { + "oneOf": [ + { + "type": "string", + "enum": [ + "OK", + "Offline", + "Unknown", + "Updating", + "NeedsAttention" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Current status of the storage account." + } + }, + "required": [ + "dataPolicy" + ], + "description": "The storage account properties." + }, + "SymmetricKey": { + "type": "object", + "properties": { + "connectionString": { + "oneOf": [ + { + "$ref": "#/definitions/AsymmetricEncryptedSecret" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represent the secrets intended for encryption with asymmetric key pair." + } + }, + "description": "Symmetric key for authentication." + }, + "UserAccessRight": { + "type": "object", + "properties": { + "accessType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Change", + "Read", + "Custom" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of access to be allowed for the user." + }, + "userId": { + "type": "string", + "description": "User ID (already existing in the device)." + } + }, + "required": [ + "accessType", + "userId" + ], + "description": "The mapping between a particular user and the access type on the SMB share." + }, + "UserProperties": { + "type": "object", + "properties": { + "encryptedPassword": { + "oneOf": [ + { + "$ref": "#/definitions/AsymmetricEncryptedSecret" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represent the secrets intended for encryption with asymmetric key pair." + }, + "userType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Share", + "LocalManagement", + "ARM" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of the user." + } + }, + "required": [ + "userType" + ], + "description": "The user properties." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index d4926b4c34..76e0d9845a 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -8971,6 +8971,48 @@ { "$ref": "https://schema.management.azure.com/schemas/2023-01-01-preview/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices_users" }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices_bandwidthSchedules" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices_diagnosticProactiveLogCollectionSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices_diagnosticRemoteSupportSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices_orders" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices_roles" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices_roles_addons" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices_roles_monitoringConfig" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices_shares" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices_storageAccountCredentials" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices_storageAccounts" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices_storageAccounts_containers" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices_triggers" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-07-01/Microsoft.DataBoxEdge.json#/resourceDefinitions/dataBoxEdgeDevices_users" + }, { "$ref": "https://schema.management.azure.com/schemas/2018-04-01/Microsoft.Databricks.json#/resourceDefinitions/workspaces" },