Bring Your Own Template
Share this post
The last couple of videos demonstrated the automation capabilities within DevTest Labs. We looked at deploying a VM that automatically generates an ARM template that you can reuse in your deployment pipeline.
The automation that you perform within your DevTest lab is not just locked down to the DevTest lab. In this step, we’ll explore the Bring Your Own Template (BYOT) feature within DevTest Labs and the capabilities it brings.
DevTest Labs in the CI/CD Toolchain
If you are using VSTS, there is an Azure DevTest Labs Tasks extension that allows you to automate your release pipeline in Azure DevTest Labs. Some of the uses of this extension include:
- Creating and deploying a VM automatically and configuring it with the latest build by using Azure File Copy or PowerShell VSTS tasks.
- Automatically capturing the state of a VM after testing to reproduce a bug on the same VM for further investigation.
- Deleting the VM at the end of the release pipeline when it’s no longer needed.
For other CI/CD toolchains, all the previously mentioned scenarios that can be achieved through the extension of the VSTS tasks can be similarly achieved through deploying Azure Resource Manager templates using Azure PowerShell cmdlets and .NET SDKs. You can also use REST APIs for DevTest Labs to integrate with your toolchain.
Complex Environments
If an environment contains multiple VMs that need to be created in a single step (for example, a multitier Web app or a SharePoint farm), you can use Azure Resource Manager templates to define the infrastructure and configuration of your Azure solution. The templates also allow you to repeatedly deploy multiple VMs in a consistent state.
Benefits of this feature include the ability to load templates from your source code repository, the ability for users to create an environment by choosing an Azure Resource Manager template from the portal after configured, and the ability to provision Azure PaaS resources from a template, as well as IaaS VMs.
Other benefits include cost tracking of environments and individual VMs, and VM policy control across environments the same way that you have for single-lab VMs. For more information on how to configure Azure Resource Manager template repositories and create environments from a template, see Create multi-VM environments with Azure Resource Manager templates.
For best practices and tips and tricks for getting the most out of DevTest Labs, see the Azure DevTest Labs Team Blog.
Join the discussion
Explore the Azure DevTest Labs Team Blog. Share a key learning with the group and explain how you’d apply this learning in your DevTest Lab.Use the Discussion section below and let us know your thoughts. Try to respond to at least one other post and once you’re happy with your contribution, click the Mark as complete button to move on to the next step.
Share this post
Microsoft Future Ready: DevOps Development, Implementation and Azure Automation

Microsoft Future Ready: DevOps Development, Implementation and Azure Automation

Our purpose is to transform access to education.
We offer a diverse selection of courses from leading universities and cultural institutions from around the world. These are delivered one step at a time, and are accessible on mobile, tablet and desktop, so you can fit learning around your life.
We believe learning should be an enjoyable, social experience, so our courses offer the opportunity to discuss what you’re learning with others as you go, helping you make fresh discoveries and form new ideas.
You can unlock new opportunities with unlimited access to hundreds of online short courses for a year by subscribing to our Unlimited package. Build your knowledge with top universities and organisations.
Learn more about how FutureLearn is transforming access to education
Register to receive updates
-
Create an account to receive our newsletter, course recommendations and promotions.
Register for free