DevTest lab generic questions

Masih Shekarak 20 Reputation points


I'm trying to understand a few basic DevTest Lab (DTL) concepts. I have built a lab for users who are outside my subscription, but we are under the same Active Directory.

  1. When I create labs, a new resource group is created where virtual machines, network interface, availability set, and the public IP are placed. I assume this resource is designed for management reasons, right? Does it serve any other purpose? Do I also assign the DevTest Lab User Role to the users in this resource group?
  2. Is only Web App supported in DTL? Or can I also create Function App or Spring Boot App with the DTL?
  3. How web apps and other services can be placed in one resource group when created with DTL? Is the ARM template the only way? At the moment, each service is created in a different resource group.
  4. If I create my desired web app resource (outside the lab ) and then export it as an ARM template to my GitHub, can I use that same template for creating the lab? Or is the ARM template for creating PaaS inside Azure different from the one used for creating the DevTest Lab environment?

Thank you for any advice.



Azure DevTest Labs
Azure DevTest Labs
An Azure service that is used for provisioning development and test environments.
255 questions
{count} votes

Accepted answer
  1. deherman-MSFT 33,296 Reputation points Microsoft Employee

    @Masih Shekarak

    Thanks for your questions and apologies for the delayed response. Just wanted to send a caveat that DevTest Labs is not intended for production environments, but rather for scenarios such as development VMs, test environments, and classroom or training labs.

    1. By default, Azure DevTest Labs creates a new resource group whenever a new virtual machine is created. As a lab owner, you can configure your lab virtual machines to be created in a specific resource group. You can update the behavior for your lab in the Lab settings via the Portal. You can also move labs to a different resource group after creation. You can add the DevTest Lab User Role at the resource level.
    2. You can use Azure Functions to extend DevTest Labs to support more scenarios beyond the ones that DevTest Labs already supports. This should allow you to extend support to additional services such as Spring Boot.
    3. Yes, current support for services other than VMs is via ARM template.
    4. Yes, this is possible. Create Azure DevTest Labs environments from ARM templates should walk you through this scenario.

    Hope this answers your questions. Let me know if you need anything else or have any follow up questions.

    Please don’t forget to "Accept the answer" and “up-vote” wherever the information provided helps you, this can be beneficial to other community members.

    1 person found this answer helpful.
    0 comments No comments

0 additional answers

Sort by: Most helpful