From ae202985bcb07c57ec5c69b5911e63f3fc7e1284 Mon Sep 17 00:00:00 2001 From: SDKAuto Date: Tue, 22 Feb 2022 07:51:28 +0000 Subject: [PATCH] CodeGen from PR 17666 in Azure/azure-rest-api-specs Merge dce1f832113d29e5ef6cc73de98393cf6e75afc5 into 12573bd124f45f2fe8f7cd95af6374ff812e8cce --- schemas/2021-09-01/Microsoft.DevTestLab.json | 5281 ++++++++++++++++++ schemas/common/autogeneratedResources.json | 69 + 2 files changed, 5350 insertions(+) create mode 100644 schemas/2021-09-01/Microsoft.DevTestLab.json diff --git a/schemas/2021-09-01/Microsoft.DevTestLab.json b/schemas/2021-09-01/Microsoft.DevTestLab.json new file mode 100644 index 0000000000..0a62238ecb --- /dev/null +++ b/schemas/2021-09-01/Microsoft.DevTestLab.json @@ -0,0 +1,5281 @@ +{ + "id": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#", + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Microsoft.DevTestLab", + "description": "Microsoft DevTestLab Resource Types", + "resourceDefinitions": { + "labs": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/IdentityProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a managed identity" + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the lab." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/LabProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a lab." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/labs_artifactsources_childResource" + }, + { + "$ref": "#/definitions/labs_costs_childResource" + }, + { + "$ref": "#/definitions/labs_customimages_childResource" + }, + { + "$ref": "#/definitions/labs_formulas_childResource" + }, + { + "$ref": "#/definitions/labs_notificationchannels_childResource" + }, + { + "$ref": "#/definitions/labs_schedules_childResource" + }, + { + "$ref": "#/definitions/labs_secrets_childResource" + }, + { + "$ref": "#/definitions/labs_servicerunners_childResource" + }, + { + "$ref": "#/definitions/labs_sharedgalleries_childResource" + }, + { + "$ref": "#/definitions/labs_users_childResource" + }, + { + "$ref": "#/definitions/labs_virtualmachines_childResource" + }, + { + "$ref": "#/definitions/labs_virtualnetworks_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DevTestLab/labs" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs" + }, + "labs_artifactsources": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the artifact source." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ArtifactSourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of an artifact source." + }, + "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.DevTestLab/labs/artifactsources" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/artifactsources" + }, + "labs_costs": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the cost." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/LabCostProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a cost item." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DevTestLab/labs/costs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/costs" + }, + "labs_customimages": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the custom image." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CustomImageProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a custom image." + }, + "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.DevTestLab/labs/customimages" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/customimages" + }, + "labs_formulas": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the formula." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FormulaProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a formula." + }, + "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.DevTestLab/labs/formulas" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/formulas" + }, + "labs_notificationchannels": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the notification channel." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/NotificationChannelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a schedule." + }, + "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.DevTestLab/labs/notificationchannels" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/notificationchannels" + }, + "labs_policysets_policies": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the policy." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/PolicyProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a Policy." + }, + "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.DevTestLab/labs/policysets/policies" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/policysets/policies" + }, + "labs_schedules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the schedule." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScheduleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a schedule." + }, + "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.DevTestLab/labs/schedules" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/schedules" + }, + "labs_secrets": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the lab secret." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/LabSecretProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of labs secrets" + }, + "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.DevTestLab/labs/secrets" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/secrets" + }, + "labs_servicerunners": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/IdentityProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a managed identity" + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the service runner." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ServiceRunnerProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a virtual machine." + }, + "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.DevTestLab/labs/servicerunners" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/servicerunners" + }, + "labs_sharedgalleries": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the shared gallery." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SharedGalleryProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a shared gallery" + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/labs_sharedgalleries_sharedimages_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DevTestLab/labs/sharedgalleries" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/sharedgalleries" + }, + "labs_sharedgalleries_sharedimages": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the shared image." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SharedImageProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a shared image" + }, + "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.DevTestLab/labs/sharedgalleries/sharedimages" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/sharedgalleries/sharedimages" + }, + "labs_users": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the user profile." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/UserProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a lab user profile." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/labs_users_disks_childResource" + }, + { + "$ref": "#/definitions/labs_users_environments_childResource" + }, + { + "$ref": "#/definitions/labs_users_secrets_childResource" + }, + { + "$ref": "#/definitions/labs_users_servicefabrics_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DevTestLab/labs/users" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/users" + }, + "labs_users_disks": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the disk." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DiskProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a disk." + }, + "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.DevTestLab/labs/users/disks" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/users/disks" + }, + "labs_users_environments": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the environment." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/EnvironmentProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of an environment." + }, + "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.DevTestLab/labs/users/environments" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/users/environments" + }, + "labs_users_secrets": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the secret." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SecretProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a secret." + }, + "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.DevTestLab/labs/users/secrets" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/users/secrets" + }, + "labs_users_servicefabrics": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the service fabric." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ServiceFabricProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a service fabric." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/labs_users_servicefabrics_schedules_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DevTestLab/labs/users/servicefabrics" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/users/servicefabrics" + }, + "labs_users_servicefabrics_schedules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the schedule." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScheduleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a schedule." + }, + "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.DevTestLab/labs/users/servicefabrics/schedules" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/users/servicefabrics/schedules" + }, + "labs_virtualmachines": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the virtual machine." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/LabVirtualMachineProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a virtual machine." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/labs_virtualmachines_schedules_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DevTestLab/labs/virtualmachines" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/virtualmachines" + }, + "labs_virtualmachines_schedules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the schedule." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScheduleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a schedule." + }, + "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.DevTestLab/labs/virtualmachines/schedules" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/virtualmachines/schedules" + }, + "labs_virtualnetworks": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the virtual network." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VirtualNetworkProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a virtual network." + }, + "resources": { + "type": "array", + "items": { + "oneOf": [ + { + "$ref": "#/definitions/labs_virtualnetworks_bastionhosts_childResource" + } + ] + } + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Resource tags." + }, + "type": { + "type": "string", + "enum": [ + "Microsoft.DevTestLab/labs/virtualnetworks" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/virtualnetworks" + }, + "labs_virtualnetworks_bastionhosts": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the bastionhost." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BastionHostProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a BastionHost profile." + }, + "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.DevTestLab/labs/virtualnetworks/bastionhosts" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/virtualnetworks/bastionhosts" + }, + "schedules": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the schedule." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScheduleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a schedule." + }, + "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.DevTestLab/schedules" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/schedules" + } + }, + "definitions": { + "ArmTemplateParameterProperties": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the template parameter." + }, + "value": { + "type": "string", + "description": "The value of the template parameter." + } + }, + "description": "Properties of an Azure Resource Manager template parameter." + }, + "ArtifactInstallProperties": { + "type": "object", + "properties": { + "artifactId": { + "type": "string", + "description": "The artifact's identifier." + }, + "artifactTitle": { + "type": "string", + "description": "The artifact's title." + }, + "deploymentStatusMessage": { + "type": "string", + "description": "The status message from the deployment." + }, + "installTime": { + "type": "string", + "format": "date-time", + "description": "The time that the artifact starts to install on the virtual machine." + }, + "parameters": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ArtifactParameterProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The parameters of the artifact." + }, + "status": { + "type": "string", + "description": "The status of the artifact." + }, + "vmExtensionStatusMessage": { + "type": "string", + "description": "The status message from the virtual machine extension." + } + }, + "description": "Properties of an artifact." + }, + "ArtifactParameterProperties": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "The name of the artifact parameter." + }, + "value": { + "type": "string", + "description": "The value of the artifact parameter." + } + }, + "description": "Properties of an artifact parameter." + }, + "ArtifactSourceProperties": { + "type": "object", + "properties": { + "armTemplateFolderPath": { + "type": "string", + "description": "The folder containing Azure Resource Manager templates." + }, + "branchRef": { + "type": "string", + "description": "The artifact source's branch reference." + }, + "displayName": { + "type": "string", + "description": "The artifact source's display name." + }, + "folderPath": { + "type": "string", + "description": "The folder containing artifacts." + }, + "securityToken": { + "type": "string", + "description": "The security token to authenticate to the artifact source." + }, + "sourceType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "VsoGit", + "GitHub", + "StorageAccount" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The artifact source's type." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates if the artifact source is enabled (values: Enabled, Disabled)." + }, + "uri": { + "type": "string", + "description": "The artifact source's URI." + } + }, + "description": "Properties of an artifact source." + }, + "AttachNewDataDiskOptions": { + "type": "object", + "properties": { + "diskName": { + "type": "string", + "description": "The name of the disk to be attached." + }, + "diskSizeGiB": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Size of the disk to be attached in Gibibytes." + }, + "diskType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard", + "Premium", + "StandardSSD" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The storage type for the disk (i.e. Standard, Premium)." + } + }, + "description": "Properties to attach new disk to the Virtual Machine." + }, + "BastionHostProperties": { + "type": "object", + "properties": {}, + "description": "Properties of a BastionHost profile." + }, + "BulkCreationParameters": { + "type": "object", + "properties": { + "instanceCount": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The number of virtual machine instances to create." + } + }, + "description": "Parameters for creating multiple virtual machines as a single action." + }, + "CostThresholdProperties": { + "type": "object", + "properties": { + "displayOnChart": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether this threshold will be displayed on cost charts." + }, + "notificationSent": { + "type": "string", + "description": "Indicates the datetime when notifications were last sent for this threshold." + }, + "percentageThreshold": { + "oneOf": [ + { + "$ref": "#/definitions/PercentageCostThresholdProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a percentage cost threshold." + }, + "sendNotificationWhenExceeded": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether notifications will be sent when this threshold is exceeded." + }, + "thresholdId": { + "type": "string", + "description": "The ID of the cost threshold item." + } + }, + "description": "Properties of a cost threshold item." + }, + "CustomImageProperties": { + "type": "object", + "properties": { + "author": { + "type": "string", + "description": "The author of the custom image." + }, + "customImagePlan": { + "oneOf": [ + { + "$ref": "#/definitions/CustomImagePropertiesFromPlan" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties for plan on a custom image." + }, + "dataDiskStorageInfo": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/DataDiskStorageTypeInfo" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Storage information about the data disks present in the custom image" + }, + "description": { + "type": "string", + "description": "The description of the custom image." + }, + "isPlanAuthorized": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether or not the custom images underlying offer/plan has been enabled for programmatic deployment" + }, + "managedImageId": { + "type": "string", + "description": "The Managed Image Id backing the custom image." + }, + "managedSnapshotId": { + "type": "string", + "description": "The Managed Snapshot Id backing the custom image." + }, + "vhd": { + "oneOf": [ + { + "$ref": "#/definitions/CustomImagePropertiesCustom" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties for creating a custom image from a VHD." + }, + "vm": { + "oneOf": [ + { + "$ref": "#/definitions/CustomImagePropertiesFromVm" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties for creating a custom image from a virtual machine." + } + }, + "description": "Properties of a custom image." + }, + "CustomImagePropertiesCustom": { + "type": "object", + "properties": { + "imageName": { + "type": "string", + "description": "The image name." + }, + "osType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Windows", + "Linux", + "None" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The OS type of the custom image (i.e. Windows, Linux)." + }, + "sysPrep": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether sysprep has been run on the VHD." + } + }, + "required": [ + "osType" + ], + "description": "Properties for creating a custom image from a VHD." + }, + "CustomImagePropertiesFromPlan": { + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "The id of the plan, equivalent to name of the plan" + }, + "offer": { + "type": "string", + "description": "The offer for the plan from the marketplace image the custom image is derived from" + }, + "publisher": { + "type": "string", + "description": "The publisher for the plan from the marketplace image the custom image is derived from" + } + }, + "description": "Properties for plan on a custom image." + }, + "CustomImagePropertiesFromVm": { + "type": "object", + "properties": { + "linuxOsInfo": { + "oneOf": [ + { + "$ref": "#/definitions/LinuxOsInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Information about a Linux OS." + }, + "sourceVmId": { + "type": "string", + "description": "The source vm identifier." + }, + "windowsOsInfo": { + "oneOf": [ + { + "$ref": "#/definitions/WindowsOsInfo" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Information about a Windows OS." + } + }, + "description": "Properties for creating a custom image from a virtual machine." + }, + "DataDiskProperties": { + "type": "object", + "properties": { + "attachNewDataDiskOptions": { + "oneOf": [ + { + "$ref": "#/definitions/AttachNewDataDiskOptions" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties to attach new disk to the Virtual Machine." + }, + "existingLabDiskId": { + "type": "string", + "description": "Specifies the existing lab disk id to attach to virtual machine." + }, + "hostCaching": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "ReadOnly", + "ReadWrite" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Caching option for a data disk (i.e. None, ReadOnly, ReadWrite)." + } + }, + "description": "Request body for adding a new or existing data disk to a virtual machine." + }, + "DataDiskStorageTypeInfo": { + "type": "object", + "properties": { + "lun": { + "type": "string", + "description": "Disk Lun" + }, + "storageType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard", + "Premium", + "StandardSSD" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Disk Storage Type." + } + }, + "description": "Storage information about the data disks present in the custom image" + }, + "DayDetails": { + "type": "object", + "properties": { + "time": { + "type": "string", + "description": "The time of day the schedule will occur." + } + }, + "description": "Properties of a daily schedule." + }, + "DiskProperties": { + "type": "object", + "properties": { + "diskBlobName": { + "type": "string", + "description": "When backed by a blob, the name of the VHD blob without extension." + }, + "diskSizeGiB": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The size of the disk in Gibibytes." + }, + "diskType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard", + "Premium", + "StandardSSD" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The storage type for the disk (i.e. Standard, Premium)." + }, + "diskUri": { + "type": "string", + "description": "When backed by a blob, the URI of underlying blob." + }, + "hostCaching": { + "type": "string", + "description": "The host caching policy of the disk (i.e. None, ReadOnly, ReadWrite)." + }, + "leasedByLabVmId": { + "type": "string", + "description": "The resource ID of the VM to which this disk is leased." + }, + "managedDiskId": { + "type": "string", + "description": "When backed by managed disk, this is the ID of the compute disk resource." + }, + "storageAccountId": { + "type": "string", + "description": "When backed by a blob, the storage account where the blob is." + } + }, + "description": "Properties of a disk." + }, + "Encryption": { + "type": "object", + "properties": { + "diskEncryptionSetId": { + "type": "string", + "description": "Gets or sets resourceId of the disk encryption set to use for enabling encryption at rest." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "EncryptionAtRestWithPlatformKey", + "EncryptionAtRestWithCustomerKey" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Gets or sets the type of key used to encrypt the data of the disk." + } + }, + "description": "Encryption settings" + }, + "EnvironmentDeploymentProperties": { + "type": "object", + "properties": { + "armTemplateId": { + "type": "string", + "description": "The Azure Resource Manager template's identifier." + }, + "parameters": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ArmTemplateParameterProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The parameters of the Azure Resource Manager template." + } + }, + "description": "Properties of an environment deployment." + }, + "EnvironmentProperties": { + "type": "object", + "properties": { + "armTemplateDisplayName": { + "type": "string", + "description": "The display name of the Azure Resource Manager template that produced the environment." + }, + "deploymentProperties": { + "oneOf": [ + { + "$ref": "#/definitions/EnvironmentDeploymentProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of an environment deployment." + } + }, + "description": "Properties of an environment." + }, + "Event": { + "type": "object", + "properties": { + "eventName": { + "oneOf": [ + { + "type": "string", + "enum": [ + "AutoShutdown", + "Cost" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The event type for which this notification is enabled (i.e. AutoShutdown, Cost)." + } + }, + "description": "An event to be notified for." + }, + "FormulaProperties": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "The description of the formula." + }, + "formulaContent": { + "oneOf": [ + { + "$ref": "#/definitions/LabVirtualMachineCreationParameter" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties for creating a virtual machine." + }, + "osType": { + "type": "string", + "description": "The OS type of the formula." + }, + "vm": { + "oneOf": [ + { + "$ref": "#/definitions/FormulaPropertiesFromVm" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Information about a VM from which a formula is to be created." + } + }, + "description": "Properties of a formula." + }, + "FormulaPropertiesFromVm": { + "type": "object", + "properties": { + "labVmId": { + "type": "string", + "description": "The identifier of the VM from which a formula is to be created." + } + }, + "description": "Information about a VM from which a formula is to be created." + }, + "GalleryImageReference": { + "type": "object", + "properties": { + "offer": { + "type": "string", + "description": "The offer of the gallery image." + }, + "osType": { + "type": "string", + "description": "The OS type of the gallery image." + }, + "publisher": { + "type": "string", + "description": "The publisher of the gallery image." + }, + "sku": { + "type": "string", + "description": "The SKU of the gallery image." + }, + "version": { + "type": "string", + "description": "The version of the gallery image." + } + }, + "description": "The reference information for an Azure Marketplace image." + }, + "HourDetails": { + "type": "object", + "properties": { + "minute": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Minutes of the hour the schedule will run." + } + }, + "description": "Properties of an hourly schedule." + }, + "IdentityProperties": { + "type": "object", + "properties": { + "clientSecretUrl": { + "type": "string", + "description": "The client secret URL of the identity." + }, + "principalId": { + "type": "string", + "description": "The principal id of resource identity." + }, + "tenantId": { + "type": "string", + "description": "The tenant identifier of resource." + }, + "type": { + "oneOf": [ + { + "type": "string", + "enum": [ + "None", + "SystemAssigned", + "UserAssigned", + "SystemAssigned,UserAssigned" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of identity (SystemAssigned, UserAssigned, None)." + }, + "userAssignedIdentities": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": {} + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If Type is 'UserAssigned': List of user assigned identities." + } + }, + "description": "Properties of a managed identity" + }, + "ImageVersionProperties": { + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "Image version name" + } + }, + "description": "Properties for a shared image version." + }, + "InboundNatRule": { + "type": "object", + "properties": { + "backendPort": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The port to which the external traffic will be redirected." + }, + "frontendPort": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The external endpoint port of the inbound connection. Possible values range between 1 and 65535, inclusive. If unspecified, a value will be allocated automatically." + }, + "transportProtocol": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Tcp", + "Udp" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The transport protocol for the endpoint." + } + }, + "description": "A rule for NAT - exposing a VM's port (backendPort) on the public IP address using a load balancer." + }, + "LabAnnouncementProperties": { + "type": "object", + "properties": { + "enabled": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Is the lab announcement active/enabled at this time?." + }, + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "The time at which the announcement expires (null for never)" + }, + "expired": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Has this announcement expired?" + }, + "markdown": { + "type": "string", + "description": "The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown." + }, + "title": { + "type": "string", + "description": "The plain text title for the lab announcement" + } + }, + "description": "Properties of a lab's announcement banner" + }, + "LabCostProperties": { + "type": "object", + "properties": { + "createdDate": { + "type": "string", + "format": "date-time", + "description": "The creation date of the cost." + }, + "currencyCode": { + "type": "string", + "description": "The currency code of the cost." + }, + "endDateTime": { + "type": "string", + "format": "date-time", + "description": "The end time of the cost data." + }, + "startDateTime": { + "type": "string", + "format": "date-time", + "description": "The start time of the cost data." + }, + "targetCost": { + "oneOf": [ + { + "$ref": "#/definitions/TargetCostProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a cost target." + } + }, + "description": "Properties of a cost item." + }, + "LabProperties": { + "type": "object", + "properties": { + "announcement": { + "oneOf": [ + { + "$ref": "#/definitions/LabAnnouncementProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a lab's announcement banner" + }, + "artifactsStorageAccount": { + "type": "string", + "description": "The lab's artifact storage account." + }, + "browserConnect": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Is browser connect enabled for the lab." + }, + "defaultSecretName": { + "type": "string", + "description": "Default secret for creating virtual machines." + }, + "disableAutoUpgradeCseMinorVersion": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Is auto upgrade of CSE disabled for the lab?" + }, + "encryption": { + "oneOf": [ + { + "$ref": "#/definitions/Encryption" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Encryption settings" + }, + "environmentPermission": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Reader", + "Contributor" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The access rights to be granted to the user when provisioning an environment." + }, + "extendedProperties": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Extended properties of the lab used for experimental features" + }, + "isolateLabResources": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether to create Lab resources (e.g. Storage accounts and Key Vaults) in network isolation." + }, + "labStorageType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard", + "Premium", + "StandardSSD" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Type of storage used by the lab. It can be either Premium or Standard. Default is Premium." + }, + "managementIdentities": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "object", + "properties": {} + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of identities which can be used for management of resources." + }, + "mandatoryArtifactsResourceIdsLinux": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The ordered list of artifact resource IDs that should be applied on all Linux VM creations by default, prior to the artifacts specified by the user." + }, + "mandatoryArtifactsResourceIdsWindows": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The ordered list of artifact resource IDs that should be applied on all Windows VM creations by default, prior to the artifacts specified by the user." + }, + "premiumDataDisks": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The setting to enable usage of premium data disks.\r\nWhen its value is 'Enabled', creation of standard or premium data disks is allowed.\r\nWhen its value is 'Disabled', only creation of standard data disks is allowed." + }, + "support": { + "oneOf": [ + { + "$ref": "#/definitions/LabSupportProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a lab's support banner" + }, + "vmCreationResourceGroup": { + "type": "string", + "description": "The resource group ID in which all new lab virtual machines will be created. Ex: /subscriptions/subId/resourceGroups/rgName To let DevTest Labs manage resource group creation, set this value to null." + } + }, + "description": "Properties of a lab." + }, + "LabSecretProperties": { + "type": "object", + "properties": { + "enabledForArmEnvironments": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Is the secret enabled for use with ARM environments?" + }, + "enabledForArtifacts": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Is the secret enabled for use with artifacts?" + }, + "enabledForVmCreation": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Is the secret enabled for use with creation of VMs?" + }, + "value": { + "type": "string", + "description": "The value of the secret for secret creation." + } + }, + "description": "The properties of labs secrets" + }, + "LabSupportProperties": { + "type": "object", + "properties": { + "enabled": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Is the lab support banner active/enabled at this time?." + }, + "markdown": { + "type": "string", + "description": "The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown." + } + }, + "description": "Properties of a lab's support banner" + }, + "labs_artifactsources_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the artifact source." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ArtifactSourceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of an artifact source." + }, + "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": [ + "artifactsources" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/artifactsources" + }, + "labs_costs_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the cost." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/LabCostProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a cost item." + }, + "type": { + "type": "string", + "enum": [ + "costs" + ] + } + }, + "required": [ + "apiVersion", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/costs" + }, + "labs_customimages_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the custom image." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/CustomImageProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a custom image." + }, + "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": [ + "customimages" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/customimages" + }, + "labs_formulas_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the formula." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/FormulaProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a formula." + }, + "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": [ + "formulas" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/formulas" + }, + "labs_notificationchannels_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the notification channel." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/NotificationChannelProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a schedule." + }, + "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": [ + "notificationchannels" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/notificationchannels" + }, + "labs_schedules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the schedule." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScheduleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a schedule." + }, + "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": [ + "schedules" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/schedules" + }, + "labs_secrets_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the lab secret." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/LabSecretProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The properties of labs secrets" + }, + "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": [ + "secrets" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/secrets" + }, + "labs_servicerunners_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/IdentityProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a managed identity" + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the service runner." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ServiceRunnerProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a virtual machine." + }, + "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": [ + "servicerunners" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/servicerunners" + }, + "labs_sharedgalleries_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the shared gallery." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SharedGalleryProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a shared gallery" + }, + "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": [ + "sharedgalleries" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/sharedgalleries" + }, + "labs_sharedgalleries_sharedimages_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the shared image." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SharedImageProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a shared image" + }, + "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": [ + "sharedimages" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/sharedgalleries/sharedimages" + }, + "labs_users_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the user profile." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/UserProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a lab user profile." + }, + "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": [ + "users" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/users" + }, + "labs_users_disks_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the disk." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/DiskProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a disk." + }, + "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": [ + "disks" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/users/disks" + }, + "labs_users_environments_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the environment." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/EnvironmentProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of an environment." + }, + "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": [ + "environments" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/users/environments" + }, + "labs_users_secrets_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the secret." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/SecretProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a secret." + }, + "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": [ + "secrets" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/users/secrets" + }, + "labs_users_servicefabrics_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the service fabric." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ServiceFabricProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a service fabric." + }, + "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": [ + "servicefabrics" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/users/servicefabrics" + }, + "labs_users_servicefabrics_schedules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the schedule." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScheduleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a schedule." + }, + "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": [ + "schedules" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/users/servicefabrics/schedules" + }, + "labs_virtualmachines_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the virtual machine." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/LabVirtualMachineProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a virtual machine." + }, + "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": [ + "virtualmachines" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/virtualmachines" + }, + "labs_virtualmachines_schedules_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the schedule." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScheduleProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a schedule." + }, + "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": [ + "schedules" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/virtualmachines/schedules" + }, + "labs_virtualnetworks_bastionhosts_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the bastionhost." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/BastionHostProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a BastionHost profile." + }, + "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": [ + "bastionhosts" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/virtualnetworks/bastionhosts" + }, + "labs_virtualnetworks_childResource": { + "type": "object", + "properties": { + "apiVersion": { + "type": "string", + "enum": [ + "2021-09-01" + ] + }, + "location": { + "type": "string", + "description": "The geo-location where the resource lives" + }, + "name": { + "type": "string", + "minLength": 1, + "description": "The name of the virtual network." + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/VirtualNetworkProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a virtual network." + }, + "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": [ + "virtualnetworks" + ] + } + }, + "required": [ + "apiVersion", + "location", + "name", + "properties", + "type" + ], + "description": "Microsoft.DevTestLab/labs/virtualnetworks" + }, + "LabVirtualMachineCreationParameter": { + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The location of the new virtual machine or environment" + }, + "name": { + "type": "string", + "description": "The name of the virtual machine or environment" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/LabVirtualMachineCreationParameterProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties for virtual machine creation." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The tags of the resource." + } + }, + "required": [ + "properties" + ], + "description": "Properties for creating a virtual machine." + }, + "LabVirtualMachineCreationParameterProperties": { + "type": "object", + "properties": { + "allowClaim": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether another user can take ownership of the virtual machine" + }, + "artifacts": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ArtifactInstallProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The artifacts to be installed on the virtual machine." + }, + "bulkCreationParameters": { + "oneOf": [ + { + "$ref": "#/definitions/BulkCreationParameters" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Parameters for creating multiple virtual machines as a single action." + }, + "createdDate": { + "type": "string", + "format": "date-time", + "description": "The creation date of the virtual machine." + }, + "customImageId": { + "type": "string", + "description": "The custom image identifier of the virtual machine." + }, + "dataDiskParameters": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/DataDiskProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "New or existing data disks to attach to the virtual machine after creation" + }, + "disallowPublicIpAddress": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether the virtual machine is to be created without a public IP address." + }, + "environmentId": { + "type": "string", + "description": "The resource ID of the environment that contains this virtual machine, if any." + }, + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "The expiration date for VM." + }, + "galleryImageReference": { + "oneOf": [ + { + "$ref": "#/definitions/GalleryImageReference" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The reference information for an Azure Marketplace image." + }, + "galleryImageVersionId": { + "type": "string", + "description": "The shared gallery image version resource identifier of the virtual machine." + }, + "isAuthenticationWithSshKey": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether this virtual machine uses an SSH key for authentication." + }, + "labSubnetName": { + "type": "string", + "description": "The lab subnet name of the virtual machine." + }, + "labVirtualNetworkId": { + "type": "string", + "description": "The lab virtual network identifier of the virtual machine." + }, + "networkInterface": { + "oneOf": [ + { + "$ref": "#/definitions/NetworkInterfaceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a network interface." + }, + "notes": { + "type": "string", + "description": "The notes of the virtual machine." + }, + "osDiskSizeGb": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image." + }, + "ownerObjectId": { + "type": "string", + "default": "dynamicValue", + "description": "The object identifier of the owner of the virtual machine." + }, + "ownerUserPrincipalName": { + "type": "string", + "description": "The user principal name of the virtual machine owner." + }, + "password": { + "type": "string", + "description": "The password of the virtual machine administrator." + }, + "planId": { + "type": "string", + "description": "The id of the plan associated with the virtual machine image" + }, + "scheduleParameters": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ScheduleCreationParameter" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Virtual Machine schedules to be created" + }, + "sharedImageId": { + "type": "string", + "description": "The shared image resource identifier of the virtual machine." + }, + "sharedImageVersion": { + "type": "string", + "description": "The shared image version for the specified shared image Id. Will use latest if not specified." + }, + "size": { + "type": "string", + "description": "The size of the virtual machine." + }, + "sshKey": { + "type": "string", + "description": "The SSH key of the virtual machine administrator." + }, + "storageType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard", + "Premium", + "StandardSSD" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Storage type to use for virtual machine (i.e. Standard, Premium, StandardSSD)." + }, + "userName": { + "type": "string", + "description": "The user name of the virtual machine." + } + }, + "description": "Properties for virtual machine creation." + }, + "LabVirtualMachineProperties": { + "type": "object", + "properties": { + "allowClaim": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether another user can take ownership of the virtual machine" + }, + "artifacts": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ArtifactInstallProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The artifacts to be installed on the virtual machine." + }, + "createdDate": { + "type": "string", + "format": "date-time", + "description": "The creation date of the virtual machine." + }, + "customImageId": { + "type": "string", + "description": "The custom image identifier of the virtual machine." + }, + "dataDiskParameters": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/DataDiskProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "New or existing data disks to attach to the virtual machine after creation" + }, + "disallowPublicIpAddress": { + "oneOf": [ + { + "type": "boolean", + "default": false + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether the virtual machine is to be created without a public IP address." + }, + "environmentId": { + "type": "string", + "description": "The resource ID of the environment that contains this virtual machine, if any." + }, + "expirationDate": { + "type": "string", + "format": "date-time", + "description": "The expiration date for VM." + }, + "galleryImageReference": { + "oneOf": [ + { + "$ref": "#/definitions/GalleryImageReference" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The reference information for an Azure Marketplace image." + }, + "galleryImageVersionId": { + "type": "string", + "description": "The shared gallery image version resource identifier of the virtual machine." + }, + "isAuthenticationWithSshKey": { + "oneOf": [ + { + "type": "boolean" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether this virtual machine uses an SSH key for authentication." + }, + "labSubnetName": { + "type": "string", + "description": "The lab subnet name of the virtual machine." + }, + "labVirtualNetworkId": { + "type": "string", + "description": "The lab virtual network identifier of the virtual machine." + }, + "networkInterface": { + "oneOf": [ + { + "$ref": "#/definitions/NetworkInterfaceProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a network interface." + }, + "notes": { + "type": "string", + "description": "The notes of the virtual machine." + }, + "osDiskSizeGb": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Specifies the size of an empty data disk in gigabytes. This element can be used to overwrite the size of the disk in a virtual machine image." + }, + "ownerObjectId": { + "type": "string", + "default": "dynamicValue", + "description": "The object identifier of the owner of the virtual machine." + }, + "ownerUserPrincipalName": { + "type": "string", + "description": "The user principal name of the virtual machine owner." + }, + "password": { + "type": "string", + "description": "The password of the virtual machine administrator." + }, + "planId": { + "type": "string", + "description": "The id of the plan associated with the virtual machine image" + }, + "scheduleParameters": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ScheduleCreationParameter" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Virtual Machine schedules to be created" + }, + "sharedImageId": { + "type": "string", + "description": "The shared image resource identifier of the virtual machine." + }, + "sharedImageVersion": { + "type": "string", + "description": "The shared image version for the specified shared image Id. Will use latest if not specified." + }, + "size": { + "type": "string", + "description": "The size of the virtual machine." + }, + "sshKey": { + "type": "string", + "description": "The SSH key of the virtual machine administrator." + }, + "storageType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Standard", + "Premium", + "StandardSSD" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Storage type to use for virtual machine (i.e. Standard, Premium, StandardSSD)." + }, + "userName": { + "type": "string", + "description": "The user name of the virtual machine." + } + }, + "description": "Properties of a virtual machine." + }, + "LinuxOsInfo": { + "type": "object", + "properties": { + "linuxOsState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "NonDeprovisioned", + "DeprovisionRequested", + "DeprovisionApplied" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The state of the Linux OS (i.e. NonDeprovisioned, DeprovisionRequested, DeprovisionApplied)." + } + }, + "description": "Information about a Linux OS." + }, + "NetworkInterfaceProperties": { + "type": "object", + "properties": { + "dnsName": { + "type": "string", + "description": "The DNS name." + }, + "privateIpAddress": { + "type": "string", + "description": "The private IP address." + }, + "publicIpAddress": { + "type": "string", + "description": "The public IP address." + }, + "publicIpAddressId": { + "type": "string", + "description": "The resource ID of the public IP address." + }, + "rdpAuthority": { + "type": "string", + "description": "The RdpAuthority property is a server DNS host name or IP address followed by the service port number for RDP (Remote Desktop Protocol)." + }, + "sharedPublicIpAddressConfiguration": { + "oneOf": [ + { + "$ref": "#/definitions/SharedPublicIpAddressConfiguration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a virtual machine that determine how it is connected to a load balancer." + }, + "sshAuthority": { + "type": "string", + "description": "The SshAuthority property is a server DNS host name or IP address followed by the service port number for SSH." + }, + "subnetId": { + "type": "string", + "description": "The resource ID of the sub net." + }, + "virtualNetworkId": { + "type": "string", + "description": "The resource ID of the virtual network." + } + }, + "description": "Properties of a network interface." + }, + "NotificationChannelProperties": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Description of notification." + }, + "emailRecipient": { + "type": "string", + "description": "The email recipient to send notifications to (can be a list of semi-colon separated email addresses)." + }, + "events": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Event" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The list of event for which this notification is enabled." + }, + "notificationLocale": { + "type": "string", + "description": "The locale to use when sending a notification (fallback for unsupported languages is EN)." + }, + "webHookUrl": { + "type": "string", + "description": "The webhook URL to send notifications to." + } + }, + "description": "Properties of a schedule." + }, + "NotificationSettings": { + "type": "object", + "properties": { + "emailRecipient": { + "type": "string", + "description": "The email recipient to send notifications to (can be a list of semi-colon separated email addresses)." + }, + "notificationLocale": { + "type": "string", + "description": "The locale to use when sending a notification (fallback for unsupported languages is EN)." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "If notifications are enabled for this schedule (i.e. Enabled, Disabled)." + }, + "timeInMinutes": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Time in minutes before event at which notification will be sent." + }, + "webhookUrl": { + "type": "string", + "description": "The webhook URL to which the notification will be sent." + } + }, + "description": "Notification settings for a schedule." + }, + "PercentageCostThresholdProperties": { + "type": "object", + "properties": { + "thresholdValue": { + "oneOf": [ + { + "type": "number" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The cost threshold value." + } + }, + "description": "Properties of a percentage cost threshold." + }, + "PolicyProperties": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "The description of the policy." + }, + "evaluatorType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "AllowedValuesPolicy", + "MaxValuePolicy" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The evaluator type of the policy (i.e. AllowedValuesPolicy, MaxValuePolicy)." + }, + "factData": { + "type": "string", + "description": "The fact data of the policy." + }, + "factName": { + "oneOf": [ + { + "type": "string", + "enum": [ + "UserOwnedLabVmCount", + "UserOwnedLabPremiumVmCount", + "LabVmCount", + "LabPremiumVmCount", + "LabVmSize", + "GalleryImage", + "UserOwnedLabVmCountInSubnet", + "LabTargetCost", + "EnvironmentTemplate", + "ScheduleEditPermission" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The fact name of the policy (e.g. LabVmCount, LabVmSize, MaxVmsAllowedPerLab, etc." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The status of the policy." + }, + "threshold": { + "type": "string", + "description": "The threshold of the policy (i.e. a number for MaxValuePolicy, and a JSON array of values for AllowedValuesPolicy)." + } + }, + "description": "Properties of a Policy." + }, + "Port": { + "type": "object", + "properties": { + "backendPort": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backend port of the target virtual machine." + }, + "transportProtocol": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Tcp", + "Udp" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Protocol type of the port." + } + }, + "description": "Properties of a network port." + }, + "ScheduleCreationParameter": { + "type": "object", + "properties": { + "location": { + "type": "string", + "description": "The location of the new virtual machine or environment" + }, + "name": { + "type": "string", + "description": "The name of the virtual machine or environment" + }, + "properties": { + "oneOf": [ + { + "$ref": "#/definitions/ScheduleCreationParameterProperties" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties for schedule creation." + }, + "tags": { + "oneOf": [ + { + "type": "object", + "additionalProperties": { + "type": "string" + }, + "properties": {} + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The tags of the resource." + } + }, + "required": [ + "properties" + ], + "description": "Properties for creating a schedule." + }, + "ScheduleCreationParameterProperties": { + "type": "object", + "properties": { + "dailyRecurrence": { + "oneOf": [ + { + "$ref": "#/definitions/DayDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a daily schedule." + }, + "hourlyRecurrence": { + "oneOf": [ + { + "$ref": "#/definitions/HourDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of an hourly schedule." + }, + "notificationSettings": { + "oneOf": [ + { + "$ref": "#/definitions/NotificationSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Notification settings for a schedule." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The status of the schedule (i.e. Enabled, Disabled)." + }, + "targetResourceId": { + "type": "string", + "description": "The resource ID to which the schedule belongs" + }, + "taskType": { + "type": "string", + "description": "The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart)." + }, + "timeZoneId": { + "type": "string", + "description": "The time zone ID (e.g. Pacific Standard time)." + }, + "weeklyRecurrence": { + "oneOf": [ + { + "$ref": "#/definitions/WeekDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a weekly schedule." + } + }, + "description": "Properties for schedule creation." + }, + "ScheduleProperties": { + "type": "object", + "properties": { + "dailyRecurrence": { + "oneOf": [ + { + "$ref": "#/definitions/DayDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a daily schedule." + }, + "hourlyRecurrence": { + "oneOf": [ + { + "$ref": "#/definitions/HourDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of an hourly schedule." + }, + "notificationSettings": { + "oneOf": [ + { + "$ref": "#/definitions/NotificationSettings" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Notification settings for a schedule." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The status of the schedule (i.e. Enabled, Disabled)." + }, + "targetResourceId": { + "type": "string", + "description": "The resource ID to which the schedule belongs" + }, + "taskType": { + "type": "string", + "description": "The task type of the schedule (e.g. LabVmsShutdownTask, LabVmAutoStart)." + }, + "timeZoneId": { + "type": "string", + "description": "The time zone ID (e.g. Pacific Standard time)." + }, + "weeklyRecurrence": { + "oneOf": [ + { + "$ref": "#/definitions/WeekDetails" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a weekly schedule." + } + }, + "description": "Properties of a schedule." + }, + "SecretProperties": { + "type": "object", + "properties": { + "value": { + "type": "string", + "description": "The value of the secret for secret creation." + } + }, + "description": "Properties of a secret." + }, + "ServiceFabricProperties": { + "type": "object", + "properties": { + "environmentId": { + "type": "string", + "description": "The resource id of the environment under which the service fabric resource is present" + }, + "externalServiceFabricId": { + "type": "string", + "description": "The backing service fabric resource's id" + } + }, + "description": "Properties of a service fabric." + }, + "ServiceRunnerProperties": { + "type": "object", + "properties": { + "identityUsageType": { + "type": "string", + "description": "The purpose of bringing the identity to the lab. Ex: To use during Environment creation or to deploy on the VMs." + } + }, + "description": "Properties of a virtual machine." + }, + "SharedGalleryProperties": { + "type": "object", + "properties": { + "allowAllImages": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Enables all images in the gallery to be available in the lab for VM creation. This will override the EnableState on shared images." + }, + "galleryId": { + "type": "string", + "description": "The shared image gallery resource Id" + } + }, + "description": "Properties of a shared gallery" + }, + "SharedImageProperties": { + "type": "object", + "properties": { + "definitionName": { + "type": "string", + "description": "Shared Image definition name in shared image gallery" + }, + "displayName": { + "type": "string", + "description": "Display name of the image" + }, + "enableState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Disabled", + "Enabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Whether or not the image is enabled." + }, + "imageType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Generalized", + "Specialized" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The type of image in the gallery (generalized or specialized)." + }, + "osType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Windows", + "Linux" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The operating system of the image." + }, + "versions": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/ImageVersionProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "List of image versions in definition" + } + }, + "description": "Properties of a shared image" + }, + "SharedPublicIpAddressConfiguration": { + "type": "object", + "properties": { + "inboundNatRules": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/InboundNatRule" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The incoming NAT rules" + } + }, + "description": "Properties of a virtual machine that determine how it is connected to a load balancer." + }, + "Subnet": { + "type": "object", + "properties": { + "allowPublicIp": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Default", + "Deny", + "Allow" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The permission policy of the subnet for allowing public IP addresses (i.e. Allow, Deny))." + }, + "labSubnetName": { + "type": "string", + "description": "The name of the subnet as seen in the lab." + }, + "resourceId": { + "type": "string", + "description": "The resource ID of the subnet." + } + }, + "description": "Subnet information." + }, + "SubnetOverride": { + "type": "object", + "properties": { + "labSubnetName": { + "type": "string", + "description": "The name given to the subnet within the lab." + }, + "resourceId": { + "type": "string", + "description": "The resource ID of the subnet." + }, + "sharedPublicIpAddressConfiguration": { + "oneOf": [ + { + "$ref": "#/definitions/SubnetSharedPublicIpAddressConfiguration" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Configuration for public IP address sharing." + }, + "useInVmCreationPermission": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Default", + "Deny", + "Allow" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether this subnet can be used during virtual machine creation (i.e. Allow, Deny)." + }, + "usePublicIpAddressPermission": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Default", + "Deny", + "Allow" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Indicates whether public IP addresses can be assigned to virtual machines on this subnet (i.e. Allow, Deny)." + }, + "virtualNetworkPoolName": { + "type": "string", + "description": "The virtual network pool associated with this subnet." + } + }, + "description": "Property overrides on a subnet of a virtual network." + }, + "SubnetSharedPublicIpAddressConfiguration": { + "type": "object", + "properties": { + "allowedPorts": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Port" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Backend ports that virtual machines on this subnet are allowed to expose" + } + }, + "description": "Configuration for public IP address sharing." + }, + "TargetCostProperties": { + "type": "object", + "properties": { + "costThresholds": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/CostThresholdProperties" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Cost thresholds." + }, + "cycleEndDateTime": { + "type": "string", + "format": "date-time", + "description": "Reporting cycle end date." + }, + "cycleStartDateTime": { + "type": "string", + "format": "date-time", + "description": "Reporting cycle start date." + }, + "cycleType": { + "oneOf": [ + { + "type": "string", + "enum": [ + "CalendarMonth", + "Custom" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Reporting cycle type." + }, + "status": { + "oneOf": [ + { + "type": "string", + "enum": [ + "Enabled", + "Disabled" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Target cost status." + }, + "target": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Lab target cost" + } + }, + "description": "Properties of a cost target." + }, + "UserIdentity": { + "type": "object", + "properties": { + "appId": { + "type": "string", + "description": "Set to the app Id of the client JWT making the request." + }, + "objectId": { + "type": "string", + "description": "Set to the object Id of the client JWT making the request. Not all users have object Id. For CSP (reseller) scenarios for example, object Id is not available." + }, + "principalId": { + "type": "string", + "description": "Set to the principal Id of the client JWT making the request. Service principal will not have the principal Id." + }, + "principalName": { + "type": "string", + "description": "Set to the principal name / UPN of the client JWT making the request." + }, + "tenantId": { + "type": "string", + "description": "Set to the tenant ID of the client JWT making the request." + } + }, + "description": "Identity attributes of a lab user." + }, + "UserProperties": { + "type": "object", + "properties": { + "identity": { + "oneOf": [ + { + "$ref": "#/definitions/UserIdentity" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Identity attributes of a lab user." + }, + "secretStore": { + "oneOf": [ + { + "$ref": "#/definitions/UserSecretStore" + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "Properties of a user's secret store." + } + }, + "description": "Properties of a lab user profile." + }, + "UserSecretStore": { + "type": "object", + "properties": { + "keyVaultId": { + "type": "string", + "description": "The ID of the user's Key vault." + }, + "keyVaultUri": { + "type": "string", + "description": "The URI of the user's Key vault." + } + }, + "description": "Properties of a user's secret store." + }, + "VirtualNetworkProperties": { + "type": "object", + "properties": { + "allowedSubnets": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/Subnet" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The allowed subnets of the virtual network." + }, + "description": { + "type": "string", + "description": "The description of the virtual network." + }, + "externalProviderResourceId": { + "type": "string", + "description": "The Microsoft.Network resource identifier of the virtual network." + }, + "subnetOverrides": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/definitions/SubnetOverride" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The subnet overrides of the virtual network." + } + }, + "description": "Properties of a virtual network." + }, + "WeekDetails": { + "type": "object", + "properties": { + "time": { + "type": "string", + "description": "The time of the day the schedule will occur." + }, + "weekdays": { + "oneOf": [ + { + "type": "array", + "items": { + "type": "string" + } + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The days of the week for which the schedule is set (e.g. Sunday, Monday, Tuesday, etc.)." + } + }, + "description": "Properties of a weekly schedule." + }, + "WindowsOsInfo": { + "type": "object", + "properties": { + "windowsOsState": { + "oneOf": [ + { + "type": "string", + "enum": [ + "NonSysprepped", + "SysprepRequested", + "SysprepApplied" + ] + }, + { + "$ref": "https://schema.management.azure.com/schemas/common/definitions.json#/definitions/expression" + } + ], + "description": "The state of the Windows OS (i.e. NonSysprepped, SysprepRequested, SysprepApplied)." + } + }, + "description": "Information about a Windows OS." + } + } +} \ No newline at end of file diff --git a/schemas/common/autogeneratedResources.json b/schemas/common/autogeneratedResources.json index 7f41790e66..ccda91c05c 100644 --- a/schemas/common/autogeneratedResources.json +++ b/schemas/common/autogeneratedResources.json @@ -6475,6 +6475,75 @@ { "$ref": "https://schema.management.azure.com/schemas/2018-09-15/Microsoft.DevTestLab.json#/resourceDefinitions/schedules" }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_artifactsources" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_costs" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_customimages" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_formulas" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_notificationchannels" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_policysets_policies" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_schedules" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_secrets" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_servicerunners" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_sharedgalleries" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_sharedgalleries_sharedimages" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_users" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_users_disks" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_users_environments" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_users_secrets" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_users_servicefabrics" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_users_servicefabrics_schedules" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_virtualmachines" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_virtualmachines_schedules" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_virtualnetworks" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/labs_virtualnetworks_bastionhosts" + }, + { + "$ref": "https://schema.management.azure.com/schemas/2021-09-01/Microsoft.DevTestLab.json#/resourceDefinitions/schedules" + }, { "$ref": "https://schema.management.azure.com/schemas/2020-03-01-preview/Microsoft.DigitalTwins.json#/resourceDefinitions/digitalTwinsInstances" },