From 825ecf72ddd079a50c25fbf5c6db36ff986010c3 Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Mon, 11 Sep 2023 17:39:58 +0000 Subject: [PATCH] CodeGen from PR 25747 in Azure/azure-rest-api-specs Merge c6a8187b53614e3b633684b4fb2ede2f657ba8aa into c78b5d8bd3aff2d82a5f034d9164b1a9ac030e09 --- .../Microsoft.DesktopVirtualization.json | 2941 +++++++++++++++++ schemas/common/autogeneratedResources.json | 30 + 2 files changed, 2971 insertions(+) create mode 100644 schemas/2023-09-05/Microsoft.DesktopVirtualization.json diff --git a/schemas/2023-09-05/Microsoft.DesktopVirtualization.json b/schemas/2023-09-05/Microsoft.DesktopVirtualization.json new file mode 100644 index 0000000000..672fc9d9b7 --- /dev/null +++ b/schemas/2023-09-05/Microsoft.DesktopVirtualization.json @@ -0,0 +1,2941 @@ +{ + "id": "https://schema.management.azure.com/schemas/2023-09-05/Microsoft.DesktopVirtualization.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.DesktopVirtualization", + "description": "Microsoft DesktopVirtualization Resource Types", + "resourceDefinitions": { + "applicationGroups": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceModelWithAllowedPropertySetIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "kind": { + "oneOf": [ + { + "type": "string", + "pattern": "^[-\\w\\._,\\(\\)]+$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value." + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "managedBy": { + "type": "string", + "description": "The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource." + }, + "name": { + "type": "string", + "minLength": 3, + "maxLength": 64, + "description": "The name of the application group" + }, + "plan": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceModelWithAllowedPropertySetPlan" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ApplicationGroupProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Schema for ApplicationGroup properties." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/applicationGroups_applications_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceModelWithAllowedPropertySetSku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "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." + }, + "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.DesktopVirtualization/applicationGroups" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/applicationGroups" + }, + "applicationGroups_applications": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "name": { + "type": "string", + "minLength": 3, + "maxLength": 24, + "description": "The name of the application within the specified application group" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ApplicationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Schema for Application properties." + }, + "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.DesktopVirtualization/applicationGroups/applications" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/applicationGroups/applications" + }, + "hostPools": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceModelWithAllowedPropertySetIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "kind": { + "oneOf": [ + { + "type": "string", + "pattern": "^[-\\w\\._,\\(\\)]+$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value." + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "managedBy": { + "type": "string", + "description": "The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource." + }, + "name": { + "type": "string", + "minLength": 3, + "maxLength": 64, + "description": "The name of the host pool within the specified resource group" + }, + "plan": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceModelWithAllowedPropertySetPlan" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/HostPoolProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of HostPool." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/hostPools_privateEndpointConnections_childResource" + }, + { + "$ref": "#/definitions/hostPools_msixPackages_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceModelWithAllowedPropertySetSku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "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." + }, + "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.DesktopVirtualization/hostPools" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/hostPools" + }, + "hostPools_msixPackages": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "name": { + "type": "string", + "minLength": 3, + "maxLength": 100, + "description": "The version specific package full name of the MSIX package within specified hostpool" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MSIXPackageProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Schema for MSIX Package properties." + }, + "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.DesktopVirtualization/hostPools/msixPackages" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/hostPools/msixPackages" + }, + "hostPools_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection associated with the Azure resource" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DesktopVirtualization/hostPools/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/hostPools/privateEndpointConnections" + }, + "scalingPlans": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceModelWithAllowedPropertySetIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "kind": { + "oneOf": [ + { + "type": "string", + "pattern": "^[-\\w\\._,\\(\\)]+$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value." + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "managedBy": { + "type": "string", + "description": "The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource." + }, + "name": { + "type": "string", + "minLength": 3, + "maxLength": 64, + "description": "The name of the scaling plan." + }, + "plan": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceModelWithAllowedPropertySetPlan" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScalingPlanProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Scaling plan properties." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/scalingPlans_pooledSchedules_childResource" + }, + { + "$ref": "#/definitions/scalingPlans_personalSchedules_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceModelWithAllowedPropertySetSku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "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." + }, + "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.DesktopVirtualization/scalingPlans" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/scalingPlans" + }, + "scalingPlans_personalSchedules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 64, + "description": "The name of the ScalingPlanSchedule" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScalingPlanPersonalScheduleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A ScalingPlanPersonalSchedule." + }, + "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.DesktopVirtualization/scalingPlans/personalSchedules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/scalingPlans/personalSchedules" + }, + "scalingPlans_pooledSchedules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 64, + "description": "The name of the ScalingPlanSchedule" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScalingPlanPooledScheduleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A ScalingPlanPooledSchedule." + }, + "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.DesktopVirtualization/scalingPlans/pooledSchedules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/scalingPlans/pooledSchedules" + }, + "workspaces": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceModelWithAllowedPropertySetIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "kind": { + "oneOf": [ + { + "type": "string", + "pattern": "^[-\\w\\._,\\(\\)]+$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Metadata used by portal/tooling/etc to render different UX experiences for resources of the same type; e.g. ApiApps are a kind of Microsoft.Web/sites type. If supported, the resource provider must validate and persist this value." + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "managedBy": { + "type": "string", + "description": "The fully qualified resource ID of the resource that manages this resource. Indicates if this resource is managed by another Azure resource. If this is present, complete mode deployment will not delete the resource if it is removed from the template since it is managed by another resource." + }, + "name": { + "type": "string", + "minLength": 3, + "maxLength": 64, + "description": "The name of the workspace" + }, + "plan": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceModelWithAllowedPropertySetPlan" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/WorkspaceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Schema for Workspace properties." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/workspaces_privateEndpointConnections_childResource" + } + ] + } + }, + "sku": { + "oneOf": [ + { + "$ref": "#/definitions/ResourceModelWithAllowedPropertySetSku" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ] + }, + "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." + }, + "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.DesktopVirtualization/workspaces" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/workspaces" + }, + "workspaces_privateEndpointConnections": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection associated with the Azure resource" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DesktopVirtualization/workspaces/privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/workspaces/privateEndpointConnections" + } + }, + "definitions": { + "AgentUpdateProperties": { + "type": "object", + "properties": { + "maintenanceWindows": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MaintenanceWindowProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of maintenance windows. Maintenance windows are 2 hours long." + }, + "maintenanceWindowTimeZone": { + "type": "string", + "description": "Time zone for maintenance as defined in https://docs.microsoft.com/en-us/dotnet/api/system.timezoneinfo.findsystemtimezonebyid?view=net-5.0. Must be set if useLocalTime is true." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Default", + "Scheduled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of maintenance for session host components." + }, + "useSessionHostLocalTime": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether to use localTime of the virtual machine." + } + }, + "description": "The session host configuration for updating agent, monitoring agent, and stack component." + }, + "ApplicationGroupProperties": { + "type": "object", + "properties": { + "applicationGroupType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "RemoteApp", + "Desktop" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource Type of ApplicationGroup." + }, + "description": { + "type": "string", + "description": "Description of ApplicationGroup." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of ApplicationGroup." + }, + "hostPoolArmPath": { + "type": "string", + "description": "HostPool arm path of ApplicationGroup." + }, + "showInFeed": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Boolean representing whether the applicationGroup is show in the feed." + } + }, + "required": [ + "applicationGroupType", + "hostPoolArmPath" + ], + "description": "Schema for ApplicationGroup properties." + }, + "applicationGroups_applications_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "name": { + "type": "string", + "minLength": 3, + "maxLength": 24, + "description": "The name of the application within the specified application group" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ApplicationProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Schema for Application properties." + }, + "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": [ + "applications" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/applicationGroups/applications" + }, + "ApplicationProperties": { + "type": "object", + "properties": { + "applicationType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "InBuilt", + "MsixApplication" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource Type of Application." + }, + "commandLineArguments": { + "type": "string", + "description": "Command Line Arguments for Application." + }, + "commandLineSetting": { + "oneOf": [ + { + "type": "string", + "enum": [ + "DoNotAllow", + "Allow", + "Require" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether this published application can be launched with command line arguments provided by the client, command line arguments specified at publish time, or no command line arguments at all." + }, + "description": { + "type": "string", + "description": "Description of Application." + }, + "filePath": { + "type": "string", + "description": "Specifies a path for the executable file for the application." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Application." + }, + "iconIndex": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Index of the icon." + }, + "iconPath": { + "type": "string", + "description": "Path to icon." + }, + "msixPackageApplicationId": { + "type": "string", + "description": "Specifies the package application Id for MSIX applications" + }, + "msixPackageFamilyName": { + "type": "string", + "description": "Specifies the package family name for MSIX applications" + }, + "showInPortal": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies whether to show the RemoteApp program in the RD Web Access server." + } + }, + "required": [ + "commandLineSetting" + ], + "description": "Schema for Application properties." + }, + "HostPoolProperties": { + "type": "object", + "properties": { + "agentUpdate": { + "oneOf": [ + { + "$ref": "#/definitions/AgentUpdateProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The session host configuration for updating agent, monitoring agent, and stack component." + }, + "customRdpProperty": { + "type": "string", + "description": "Custom rdp property of HostPool." + }, + "description": { + "type": "string", + "description": "Description of HostPool." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of HostPool." + }, + "hostPoolType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Personal", + "Pooled", + "BYODesktop" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "HostPool type for desktop." + }, + "loadBalancerType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "BreadthFirst", + "DepthFirst", + "Persistent" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of the load balancer." + }, + "maxSessionLimit": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The max session limit of HostPool." + }, + "personalDesktopAssignmentType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Automatic", + "Direct" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "PersonalDesktopAssignment type for HostPool." + }, + "preferredAppGroupType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "Desktop", + "RailApplications" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of preferred application group type, default to Desktop Application Group." + }, + "publicNetworkAccess": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled", + "EnabledForSessionHostsOnly", + "EnabledForClientsOnly" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enabled allows this resource to be accessed from both public and private networks, Disabled allows this resource to only be accessed via private endpoints." + }, + "registrationInfo": { + "oneOf": [ + { + "$ref": "#/definitions/RegistrationInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Represents a RegistrationInfo definition." + }, + "ring": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The ring number of HostPool." + }, + "ssoadfsAuthority": { + "type": "string", + "description": "URL to customer ADFS server for signing WVD SSO certificates." + }, + "ssoClientId": { + "type": "string", + "description": "ClientId for the registered Relying Party used to issue WVD SSO certificates." + }, + "ssoClientSecretKeyVaultPath": { + "type": "string", + "description": "Path to Azure KeyVault storing the secret used for communication to ADFS." + }, + "ssoSecretType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "SharedKey", + "Certificate", + "SharedKeyInKeyVault", + "CertificateInKeyVault" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of single sign on Secret Type." + }, + "startVMOnConnect": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The flag to turn on/off StartVMOnConnect feature." + }, + "validationEnvironment": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Is validation environment." + }, + "vmTemplate": { + "type": "string", + "description": "VM template for sessionhosts configuration within hostpool." + } + }, + "required": [ + "hostPoolType", + "loadBalancerType", + "preferredAppGroupType" + ], + "description": "Properties of HostPool." + }, + "hostPools_msixPackages_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "name": { + "type": "string", + "minLength": 3, + "maxLength": 100, + "description": "The version specific package full name of the MSIX package within specified hostpool" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/MSIXPackageProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Schema for MSIX Package properties." + }, + "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": [ + "msixPackages" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/hostPools/msixPackages" + }, + "hostPools_privateEndpointConnections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection associated with the Azure resource" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "type": { + "type": "string", + "enum": [ + "privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/hostPools/privateEndpointConnections" + }, + "MaintenanceWindowProperties": { + "type": "object", + "properties": { + "dayOfWeek": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Day of the week." + }, + "hour": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The update start hour of the day. (0 - 23)" + } + }, + "description": "Maintenance window starting hour and day of week." + }, + "MsixPackageApplications": { + "type": "object", + "properties": { + "appId": { + "type": "string", + "description": "Package Application Id, found in appxmanifest.xml." + }, + "appUserModelID": { + "type": "string", + "description": "Used to activate Package Application. Consists of Package Name and ApplicationID. Found in appxmanifest.xml." + }, + "description": { + "type": "string", + "description": "Description of Package Application." + }, + "friendlyName": { + "type": "string", + "description": "User friendly name." + }, + "iconImageName": { + "type": "string", + "description": "User friendly name." + }, + "rawIcon": { + "oneOf": [ + { + "type": "string", + "pattern": "^(?:[A-Za-z0-9+\\/]{4})*(?:[A-Za-z0-9+\\/]{2}==|[A-Za-z0-9+\\/]{3}=)?$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "the icon a 64 bit string as a byte array." + }, + "rawPng": { + "oneOf": [ + { + "type": "string", + "pattern": "^(?:[A-Za-z0-9+\\/]{4})*(?:[A-Za-z0-9+\\/]{2}==|[A-Za-z0-9+\\/]{3}=)?$" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "the icon a 64 bit string as a byte array." + } + }, + "description": "Schema for MSIX Package Application properties." + }, + "MsixPackageDependencies": { + "type": "object", + "properties": { + "dependencyName": { + "type": "string", + "description": "Name of package dependency." + }, + "minVersion": { + "type": "string", + "description": "Dependency version required." + }, + "publisher": { + "type": "string", + "description": "Name of dependency publisher." + } + }, + "description": "Schema for MSIX Package Dependencies properties." + }, + "MSIXPackageProperties": { + "type": "object", + "properties": { + "displayName": { + "type": "string", + "description": "User friendly Name to be displayed in the portal. " + }, + "imagePath": { + "type": "string", + "description": "VHD/CIM image path on Network Share." + }, + "isActive": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Make this version of the package the active one across the hostpool. " + }, + "isRegularRegistration": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies how to register Package in feed." + }, + "lastUpdated": { + "type": "string", + "format": "date-time", + "description": "Date Package was last updated, found in the appxmanifest.xml. " + }, + "packageApplications": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MsixPackageApplications" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of package applications. " + }, + "packageDependencies": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/MsixPackageDependencies" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of package dependencies. " + }, + "packageFamilyName": { + "type": "string", + "description": "Package Family Name from appxmanifest.xml. Contains Package Name and Publisher name. " + }, + "packageName": { + "type": "string", + "description": "Package Name from appxmanifest.xml. " + }, + "packageRelativePath": { + "type": "string", + "description": "Relative Path to the package inside the image. " + }, + "version": { + "type": "string", + "description": "Package Version found in the appxmanifest.xml. " + } + }, + "description": "Schema for MSIX Package properties." + }, + "PrivateEndpoint": { + "type": "object", + "properties": {}, + "description": "The Private Endpoint resource." + }, + "PrivateEndpointConnectionProperties": { + "type": "object", + "properties": { + "privateEndpoint": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpoint" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The Private Endpoint resource." + }, + "privateLinkServiceConnectionState": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateLinkServiceConnectionState" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "provisioningState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Succeeded", + "Creating", + "Deleting", + "Failed" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The provisioning state of the private endpoint connection resource." + } + }, + "required": [ + "privateLinkServiceConnectionState" + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "PrivateLinkServiceConnectionState": { + "type": "object", + "properties": { + "actionsRequired": { + "type": "string", + "description": "A message indicating if changes on the service provider require any updates on the consumer." + }, + "description": { + "type": "string", + "description": "The reason for approval/rejection of the connection." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Pending", + "Approved", + "Rejected" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service." + } + }, + "description": "A collection of information about the state of the connection between service consumer and provider." + }, + "RegistrationInfo": { + "type": "object", + "properties": { + "expirationTime": { + "type": "string", + "format": "date-time", + "description": "Expiration time of registration token." + }, + "registrationTokenOperation": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Delete", + "None", + "Update" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of resetting the token." + }, + "token": { + "type": "string", + "description": "The registration token base64 encoded string." + } + }, + "description": "Represents a RegistrationInfo definition." + }, + "ResourceModelWithAllowedPropertySetIdentity": { + "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." + } + } + }, + "ResourceModelWithAllowedPropertySetPlan": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "A user defined name of the 3rd Party Artifact that is being procured." + }, + "product": { + "type": "string", + "description": "The 3rd Party artifact that is being procured. E.g. NewRelic. Product maps to the OfferID specified for the artifact at the time of Data Market onboarding. " + }, + "promotionCode": { + "type": "string", + "description": "A publisher provided promotion code as provisioned in Data Market for the said product/artifact." + }, + "publisher": { + "type": "string", + "description": "The publisher of the 3rd Party Artifact that is being bought. E.g. NewRelic" + }, + "version": { + "type": "string", + "description": "The version of the desired product/artifact." + } + }, + "required": [ + "name", + "product", + "publisher" + ] + }, + "ResourceModelWithAllowedPropertySetSku": { + "type": "object", + "properties": { + "capacity": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If the SKU supports scale out/in then the capacity integer should be included. If scale out/in is not possible for the resource this may be omitted." + }, + "family": { + "type": "string", + "description": "If the service has different generations of hardware, for the same SKU, then that can be captured here." + }, + "name": { + "type": "string", + "description": "The name of the SKU. Ex - P3. It is typically a letter+number code" + }, + "size": { + "type": "string", + "description": "The SKU size. When the name field is the combination of tier and some other value, this would be the standalone code. " + }, + "tier": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Free", + "Basic", + "Standard", + "Premium" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "This field is required to be implemented by the Resource Provider if the service has more than one tier, but is not required on a PUT." + } + }, + "required": [ + "name" + ] + }, + "ScalingHostPoolReference": { + "type": "object", + "properties": { + "hostPoolArmPath": { + "type": "string", + "description": "Arm path of referenced hostpool." + }, + "scalingPlanEnabled": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Is the scaling plan enabled for this hostpool." + } + }, + "description": "Scaling plan reference to hostpool." + }, + "ScalingPlanPersonalScheduleProperties": { + "type": "object", + "properties": { + "daysOfWeek": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Set of days of the week on which this schedule is active." + }, + "offPeakActionOnDisconnect": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "Deallocate", + "Hibernate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Action to be taken after a user disconnect during the off-peak period." + }, + "offPeakActionOnLogoff": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "Deallocate", + "Hibernate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Action to be taken after a logoff during the off-peak period." + }, + "offPeakMinutesToWaitOnDisconnect": { + "oneOf": [ + { + "type": "integer", + "minimum": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time in minutes to wait before performing the desired session handling action when a user disconnects during the off-peak period." + }, + "offPeakMinutesToWaitOnLogoff": { + "oneOf": [ + { + "type": "integer", + "minimum": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time in minutes to wait before performing the desired session handling action when a user logs off during the off-peak period." + }, + "offPeakStartTime": { + "oneOf": [ + { + "$ref": "#/definitions/Time" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time for a scaling action to occur." + }, + "offPeakStartVMOnConnect": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enable", + "Disable" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The desired configuration of Start VM On Connect for the hostpool during the off-peak phase." + }, + "peakActionOnDisconnect": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "Deallocate", + "Hibernate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Action to be taken after a user disconnect during the peak period." + }, + "peakActionOnLogoff": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "Deallocate", + "Hibernate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Action to be taken after a logoff during the peak period." + }, + "peakMinutesToWaitOnDisconnect": { + "oneOf": [ + { + "type": "integer", + "minimum": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time in minutes to wait before performing the desired session handling action when a user disconnects during the peak period." + }, + "peakMinutesToWaitOnLogoff": { + "oneOf": [ + { + "type": "integer", + "minimum": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time in minutes to wait before performing the desired session handling action when a user logs off during the peak period." + }, + "peakStartTime": { + "oneOf": [ + { + "$ref": "#/definitions/Time" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time for a scaling action to occur." + }, + "peakStartVMOnConnect": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enable", + "Disable" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The desired configuration of Start VM On Connect for the hostpool during the peak phase." + }, + "rampDownActionOnDisconnect": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "Deallocate", + "Hibernate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Action to be taken after a user disconnect during the ramp down period." + }, + "rampDownActionOnLogoff": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "Deallocate", + "Hibernate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Action to be taken after a logoff during the ramp down period." + }, + "rampDownMinutesToWaitOnDisconnect": { + "oneOf": [ + { + "type": "integer", + "minimum": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time in minutes to wait before performing the desired session handling action when a user disconnects during the ramp down period." + }, + "rampDownMinutesToWaitOnLogoff": { + "oneOf": [ + { + "type": "integer", + "minimum": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time in minutes to wait before performing the desired session handling action when a user logs off during the ramp down period." + }, + "rampDownStartTime": { + "oneOf": [ + { + "$ref": "#/definitions/Time" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time for a scaling action to occur." + }, + "rampDownStartVMOnConnect": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enable", + "Disable" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The desired configuration of Start VM On Connect for the hostpool during the ramp down phase." + }, + "rampUpActionOnDisconnect": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "Deallocate", + "Hibernate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Action to be taken after a user disconnect during the ramp up period." + }, + "rampUpActionOnLogoff": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "Deallocate", + "Hibernate" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Action to be taken after a logoff during the ramp up period." + }, + "rampUpAutoStartHosts": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "WithAssignedUser", + "All" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The desired startup behavior during the ramp up period for personal vms in the hostpool." + }, + "rampUpMinutesToWaitOnDisconnect": { + "oneOf": [ + { + "type": "integer", + "minimum": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time in minutes to wait before performing the desired session handling action when a user disconnects during the ramp up period." + }, + "rampUpMinutesToWaitOnLogoff": { + "oneOf": [ + { + "type": "integer", + "minimum": 0 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time in minutes to wait before performing the desired session handling action when a user logs off during the ramp up period." + }, + "rampUpStartTime": { + "oneOf": [ + { + "$ref": "#/definitions/Time" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time for a scaling action to occur." + }, + "rampUpStartVMOnConnect": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enable", + "Disable" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The desired configuration of Start VM On Connect for the hostpool during the ramp up phase. If this is disabled, session hosts must be turned on using rampUpAutoStartHosts or by turning them on manually." + } + }, + "description": "A ScalingPlanPersonalSchedule." + }, + "ScalingPlanPooledScheduleProperties": { + "type": "object", + "properties": { + "daysOfWeek": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string", + "enum": [ + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + "Sunday" + ] + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Set of days of the week on which this schedule is active." + }, + "offPeakLoadBalancingAlgorithm": { + "oneOf": [ + { + "type": "string", + "enum": [ + "BreadthFirst", + "DepthFirst" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Load balancing algorithm for off-peak period." + }, + "offPeakStartTime": { + "oneOf": [ + { + "$ref": "#/definitions/Time" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time for a scaling action to occur." + }, + "peakLoadBalancingAlgorithm": { + "oneOf": [ + { + "type": "string", + "enum": [ + "BreadthFirst", + "DepthFirst" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Load balancing algorithm for peak period." + }, + "peakStartTime": { + "oneOf": [ + { + "$ref": "#/definitions/Time" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time for a scaling action to occur." + }, + "rampDownCapacityThresholdPct": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Capacity threshold for ramp down period." + }, + "rampDownForceLogoffUsers": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Should users be logged off forcefully from hosts." + }, + "rampDownLoadBalancingAlgorithm": { + "oneOf": [ + { + "type": "string", + "enum": [ + "BreadthFirst", + "DepthFirst" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Load balancing algorithm for ramp down period." + }, + "rampDownMinimumHostsPct": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Minimum host percentage for ramp down period." + }, + "rampDownNotificationMessage": { + "type": "string", + "description": "Notification message for users during ramp down period." + }, + "rampDownStartTime": { + "oneOf": [ + { + "$ref": "#/definitions/Time" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time for a scaling action to occur." + }, + "rampDownStopHostsWhen": { + "oneOf": [ + { + "type": "string", + "enum": [ + "ZeroSessions", + "ZeroActiveSessions" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies when to stop hosts during ramp down period." + }, + "rampDownWaitTimeMinutes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of minutes to wait to stop hosts during ramp down period." + }, + "rampUpCapacityThresholdPct": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Capacity threshold for ramp up period." + }, + "rampUpLoadBalancingAlgorithm": { + "oneOf": [ + { + "type": "string", + "enum": [ + "BreadthFirst", + "DepthFirst" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Load balancing algorithm for ramp up period." + }, + "rampUpMinimumHostsPct": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Minimum host percentage for ramp up period." + }, + "rampUpStartTime": { + "oneOf": [ + { + "$ref": "#/definitions/Time" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time for a scaling action to occur." + } + }, + "description": "A ScalingPlanPooledSchedule." + }, + "ScalingPlanProperties": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of scaling plan." + }, + "exclusionTag": { + "type": "string", + "description": "Exclusion tag for scaling plan." + }, + "friendlyName": { + "type": "string", + "description": "User friendly name of scaling plan." + }, + "hostPoolReferences": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ScalingHostPoolReference" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of ScalingHostPoolReference definitions." + }, + "hostPoolType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Pooled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "HostPool type for desktop." + }, + "schedules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ScalingSchedule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of ScalingPlanPooledSchedule definitions." + }, + "timeZone": { + "type": "string", + "description": "Timezone of the scaling plan." + } + }, + "required": [ + "timeZone" + ], + "description": "Scaling plan properties." + }, + "scalingPlans_personalSchedules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 64, + "description": "The name of the ScalingPlanSchedule" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScalingPlanPersonalScheduleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A ScalingPlanPersonalSchedule." + }, + "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": [ + "personalSchedules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/scalingPlans/personalSchedules" + }, + "scalingPlans_pooledSchedules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "maxLength": 64, + "description": "The name of the ScalingPlanSchedule" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScalingPlanPooledScheduleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "A ScalingPlanPooledSchedule." + }, + "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": [ + "pooledSchedules" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/scalingPlans/pooledSchedules" + }, + "ScalingSchedule": { + "type": "object", + "properties": { + "daysOfWeek": { + "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": "Set of days of the week on which this schedule is active." + }, + "name": { + "type": "string", + "description": "Name of the ScalingPlanPooledSchedule." + }, + "offPeakLoadBalancingAlgorithm": { + "oneOf": [ + { + "type": "string", + "enum": [ + "BreadthFirst", + "DepthFirst" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Load balancing algorithm for off-peak period." + }, + "offPeakStartTime": { + "oneOf": [ + { + "$ref": "#/definitions/Time" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time for a scaling action to occur." + }, + "peakLoadBalancingAlgorithm": { + "oneOf": [ + { + "type": "string", + "enum": [ + "BreadthFirst", + "DepthFirst" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Load balancing algorithm for peak period." + }, + "peakStartTime": { + "oneOf": [ + { + "$ref": "#/definitions/Time" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time for a scaling action to occur." + }, + "rampDownCapacityThresholdPct": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Capacity threshold for ramp down period." + }, + "rampDownForceLogoffUsers": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Should users be logged off forcefully from hosts." + }, + "rampDownLoadBalancingAlgorithm": { + "oneOf": [ + { + "type": "string", + "enum": [ + "BreadthFirst", + "DepthFirst" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Load balancing algorithm for ramp down period." + }, + "rampDownMinimumHostsPct": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Minimum host percentage for ramp down period." + }, + "rampDownNotificationMessage": { + "type": "string", + "description": "Notification message for users during ramp down period." + }, + "rampDownStartTime": { + "oneOf": [ + { + "$ref": "#/definitions/Time" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time for a scaling action to occur." + }, + "rampDownStopHostsWhen": { + "oneOf": [ + { + "type": "string", + "enum": [ + "ZeroSessions", + "ZeroActiveSessions" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies when to stop hosts during ramp down period." + }, + "rampDownWaitTimeMinutes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Number of minutes to wait to stop hosts during ramp down period." + }, + "rampUpCapacityThresholdPct": { + "oneOf": [ + { + "type": "integer", + "minimum": 1, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Capacity threshold for ramp up period." + }, + "rampUpLoadBalancingAlgorithm": { + "oneOf": [ + { + "type": "string", + "enum": [ + "BreadthFirst", + "DepthFirst" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Load balancing algorithm for ramp up period." + }, + "rampUpMinimumHostsPct": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 100 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Minimum host percentage for ramp up period." + }, + "rampUpStartTime": { + "oneOf": [ + { + "$ref": "#/definitions/Time" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The time for a scaling action to occur." + } + }, + "description": "A ScalingPlanPooledSchedule." + }, + "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." + }, + "Time": { + "type": "object", + "properties": { + "hour": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 23 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The hour." + }, + "minute": { + "oneOf": [ + { + "type": "integer", + "minimum": 0, + "maximum": 59 + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The minute." + } + }, + "required": [ + "hour", + "minute" + ], + "description": "The time for a scaling action to occur." + }, + "WorkspaceProperties": { + "type": "object", + "properties": { + "applicationGroupReferences": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of applicationGroup resource Ids." + }, + "description": { + "type": "string", + "description": "Description of Workspace." + }, + "friendlyName": { + "type": "string", + "description": "Friendly name of Workspace." + }, + "publicNetworkAccess": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enabled allows this resource to be accessed from both public and private networks, Disabled allows this resource to only be accessed via private endpoints." + } + }, + "description": "Schema for Workspace properties." + }, + "workspaces_privateEndpointConnections_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2023-09-05" + ] + }, + "name": { + "type": "string", + "description": "The name of the private endpoint connection associated with the Azure resource" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PrivateEndpointConnectionProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of the PrivateEndpointConnectProperties." + }, + "type": { + "type": "string", + "enum": [ + "privateEndpointConnections" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DesktopVirtualization/workspaces/privateEndpointConnections" + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 954252740c..20f60804fe 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -10825,6 +10825,36 @@ { "$ref": "https://schema.management.azure.com/schemas/2023-07-07-preview/Microsoft.DesktopVirtualization.json#/resourceDefinitions/workspaces_privateEndpointConnections" }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-09-05/Microsoft.DesktopVirtualization.json#/resourceDefinitions/applicationGroups" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-09-05/Microsoft.DesktopVirtualization.json#/resourceDefinitions/applicationGroups_applications" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-09-05/Microsoft.DesktopVirtualization.json#/resourceDefinitions/hostPools" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-09-05/Microsoft.DesktopVirtualization.json#/resourceDefinitions/hostPools_msixPackages" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-09-05/Microsoft.DesktopVirtualization.json#/resourceDefinitions/hostPools_privateEndpointConnections" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-09-05/Microsoft.DesktopVirtualization.json#/resourceDefinitions/scalingPlans" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-09-05/Microsoft.DesktopVirtualization.json#/resourceDefinitions/scalingPlans_personalSchedules" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-09-05/Microsoft.DesktopVirtualization.json#/resourceDefinitions/scalingPlans_pooledSchedules" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-09-05/Microsoft.DesktopVirtualization.json#/resourceDefinitions/workspaces" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2023-09-05/Microsoft.DesktopVirtualization.json#/resourceDefinitions/workspaces_privateEndpointConnections" + }, { "$ref": "https://schema.management.azure.com/schemas/2022-08-01-preview/Microsoft.DevCenter.json#/resourceDefinitions/devcenters" },