Microsoft.DevTestLab labs

Bicep resource definition

The labs resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.DevTestLab/labs resource, add the following Bicep to your template.

resource symbolicname 'Microsoft.DevTestLab/labs@2018-09-15' = {
  name: 'string'
  location: 'string'
  tags: {
    tagName1: 'tagValue1'
    tagName2: 'tagValue2'
  }
  properties: {
    announcement: {
      enabled: 'string'
      expirationDate: 'string'
      expired: bool
      markdown: 'string'
      title: 'string'
    }
    environmentPermission: 'string'
    extendedProperties: {}
    labStorageType: 'string'
    mandatoryArtifactsResourceIdsLinux: [
      'string'
    ]
    mandatoryArtifactsResourceIdsWindows: [
      'string'
    ]
    premiumDataDisks: 'string'
    support: {
      enabled: 'string'
      markdown: 'string'
    }
  }
}

Property values

labs

Name Description Value
name The resource name string (required)

Character limit: 1-50

Valid characters:
Alphanumerics, underscores, and hyphens.
location The location of the resource. string
tags The tags of the resource. Dictionary of tag names and values. See Tags in templates
properties The properties of the resource. LabProperties

LabProperties

Name Description Value
announcement The properties of any lab announcement associated with this lab LabAnnouncementProperties
environmentPermission The access rights to be granted to the user when provisioning an environment 'Contributor'
'Reader'
extendedProperties Extended properties of the lab used for experimental features object
labStorageType Type of storage used by the lab. It can be either Premium or Standard. Default is Premium. 'Premium'
'Standard'
'StandardSSD'
mandatoryArtifactsResourceIdsLinux 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. string[]
mandatoryArtifactsResourceIdsWindows 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. string[]
premiumDataDisks The setting to enable usage of premium data disks.
When its value is 'Enabled', creation of standard or premium data disks is allowed.
When its value is 'Disabled', only creation of standard data disks is allowed.
'Disabled'
'Enabled'
support The properties of any lab support message associated with this lab LabSupportProperties

LabAnnouncementProperties

Name Description Value
enabled Is the lab announcement active/enabled at this time? 'Disabled'
'Enabled'
expirationDate The time at which the announcement expires (null for never) string
expired Has this announcement expired? bool
markdown The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown. string
title The plain text title for the lab announcement string

LabSupportProperties

Name Description Value
enabled Is the lab support banner active/enabled at this time? 'Disabled'
'Enabled'
markdown The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown. string

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Create a new lab in Azure DevTest Labs

Deploy to Azure
This template creates a new DevTest Lab / DTL instance. More Azure Resource Manager Quickstart Templates for Azure DevTestlab available at https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates
Creates a lab in Azure DevTest Labs with a Windows Server VM

Deploy to Azure
This template creates a new DevTest Lab / DTL instance with a Windows Server 2019 Datacenter VM in it. More Azure Resource Manager Quickstart Templates for Azure DevTest Labs available at https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates
Creates a lab in Azure DevTest Labs with a claimed VM

Deploy to Azure
This template creates a new DevTest Lab / DTL instance with a claimed Windows Server 2019 Datacenter VM in it. More Azure Resource Manager Quickstart Templates for Azure DevTest Labs available at https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates

ARM template resource definition

The labs resource type can be deployed with operations that target:

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.DevTestLab/labs resource, add the following JSON to your template.

{
  "type": "Microsoft.DevTestLab/labs",
  "apiVersion": "2018-09-15",
  "name": "string",
  "location": "string",
  "tags": {
    "tagName1": "tagValue1",
    "tagName2": "tagValue2"
  },
  "properties": {
    "announcement": {
      "enabled": "string",
      "expirationDate": "string",
      "expired": "bool",
      "markdown": "string",
      "title": "string"
    },
    "environmentPermission": "string",
    "extendedProperties": {},
    "labStorageType": "string",
    "mandatoryArtifactsResourceIdsLinux": [ "string" ],
    "mandatoryArtifactsResourceIdsWindows": [ "string" ],
    "premiumDataDisks": "string",
    "support": {
      "enabled": "string",
      "markdown": "string"
    }
  }
}

Property values

labs

Name Description Value
type The resource type 'Microsoft.DevTestLab/labs'
apiVersion The resource api version '2018-09-15'
name The resource name string (required)

Character limit: 1-50

Valid characters:
Alphanumerics, underscores, and hyphens.
location The location of the resource. string
tags The tags of the resource. Dictionary of tag names and values. See Tags in templates
properties The properties of the resource. LabProperties

LabProperties

Name Description Value
announcement The properties of any lab announcement associated with this lab LabAnnouncementProperties
environmentPermission The access rights to be granted to the user when provisioning an environment 'Contributor'
'Reader'
extendedProperties Extended properties of the lab used for experimental features object
labStorageType Type of storage used by the lab. It can be either Premium or Standard. Default is Premium. 'Premium'
'Standard'
'StandardSSD'
mandatoryArtifactsResourceIdsLinux 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. string[]
mandatoryArtifactsResourceIdsWindows 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. string[]
premiumDataDisks The setting to enable usage of premium data disks.
When its value is 'Enabled', creation of standard or premium data disks is allowed.
When its value is 'Disabled', only creation of standard data disks is allowed.
'Disabled'
'Enabled'
support The properties of any lab support message associated with this lab LabSupportProperties

LabAnnouncementProperties

Name Description Value
enabled Is the lab announcement active/enabled at this time? 'Disabled'
'Enabled'
expirationDate The time at which the announcement expires (null for never) string
expired Has this announcement expired? bool
markdown The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown. string
title The plain text title for the lab announcement string

LabSupportProperties

Name Description Value
enabled Is the lab support banner active/enabled at this time? 'Disabled'
'Enabled'
markdown The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown. string

Quickstart templates

The following quickstart templates deploy this resource type.

Template Description
Create a new lab in Azure DevTest Labs

Deploy to Azure
This template creates a new DevTest Lab / DTL instance. More Azure Resource Manager Quickstart Templates for Azure DevTestlab available at https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates
Creates a lab in Azure DevTest Labs with a Windows Server VM

Deploy to Azure
This template creates a new DevTest Lab / DTL instance with a Windows Server 2019 Datacenter VM in it. More Azure Resource Manager Quickstart Templates for Azure DevTest Labs available at https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates
Creates a lab in Azure DevTest Labs with a claimed VM

Deploy to Azure
This template creates a new DevTest Lab / DTL instance with a claimed Windows Server 2019 Datacenter VM in it. More Azure Resource Manager Quickstart Templates for Azure DevTest Labs available at https://github.com/Azure/azure-devtestlab/tree/master/ARMTemplates

Terraform (AzAPI provider) resource definition

The labs resource type can be deployed with operations that target:

  • Resource groups

For a list of changed properties in each API version, see change log.

Resource format

To create a Microsoft.DevTestLab/labs resource, add the following Terraform to your template.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.DevTestLab/labs@2018-09-15"
  name = "string"
  location = "string"
  parent_id = "string"
  tags = {
    tagName1 = "tagValue1"
    tagName2 = "tagValue2"
  }
  body = jsonencode({
    properties = {
      announcement = {
        enabled = "string"
        expirationDate = "string"
        expired = bool
        markdown = "string"
        title = "string"
      }
      environmentPermission = "string"
      extendedProperties = {}
      labStorageType = "string"
      mandatoryArtifactsResourceIdsLinux = [
        "string"
      ]
      mandatoryArtifactsResourceIdsWindows = [
        "string"
      ]
      premiumDataDisks = "string"
      support = {
        enabled = "string"
        markdown = "string"
      }
    }
  })
}

Property values

labs

Name Description Value
type The resource type "Microsoft.DevTestLab/labs@2018-09-15"
name The resource name string (required)

Character limit: 1-50

Valid characters:
Alphanumerics, underscores, and hyphens.
location The location of the resource. string
parent_id To deploy to a resource group, use the ID of that resource group. string (required)
tags The tags of the resource. Dictionary of tag names and values.
properties The properties of the resource. LabProperties

LabProperties

Name Description Value
announcement The properties of any lab announcement associated with this lab LabAnnouncementProperties
environmentPermission The access rights to be granted to the user when provisioning an environment "Contributor"
"Reader"
extendedProperties Extended properties of the lab used for experimental features object
labStorageType Type of storage used by the lab. It can be either Premium or Standard. Default is Premium. "Premium"
"Standard"
"StandardSSD"
mandatoryArtifactsResourceIdsLinux 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. string[]
mandatoryArtifactsResourceIdsWindows 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. string[]
premiumDataDisks The setting to enable usage of premium data disks.
When its value is 'Enabled', creation of standard or premium data disks is allowed.
When its value is 'Disabled', only creation of standard data disks is allowed.
"Disabled"
"Enabled"
support The properties of any lab support message associated with this lab LabSupportProperties

LabAnnouncementProperties

Name Description Value
enabled Is the lab announcement active/enabled at this time? "Disabled"
"Enabled"
expirationDate The time at which the announcement expires (null for never) string
expired Has this announcement expired? bool
markdown The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown. string
title The plain text title for the lab announcement string

LabSupportProperties

Name Description Value
enabled Is the lab support banner active/enabled at this time? "Disabled"
"Enabled"
markdown The markdown text (if any) that this lab displays in the UI. If left empty/null, nothing will be shown. string