Visual Studio Development VM with Chocolatey packages

by Jamie D
Last updated: 02-06-2016

This template creates a Visual Studio 2013 or 2015 VM from the base gallery VM images available. It creates the VM in a new vnet, storage account, nic, and public ip with the new compute stack.

This Azure Resource Manager (ARM) template was created by a member of the community and not by Microsoft. Each ARM template is licensed to you under a licence agreement by its owner, not Microsoft. Microsoft is not responsible for ARM templates provided and licensed by community members and does not screen for security, compatibility or performance. Community ARM templates are not supported under any Microsoft support programme or service and are made available AS IS without warranty of any kind.


Parameter Name Description
storageType Which type of storage you want to use
vmName Local name for the VM can be whatever you want
vmAdminUserName VM admin user name
vmAdminPassword VM admin password. The supplied password must be between 8-123 characters long and must satisfy at least 3 of password complexity requirements from the following: 1) Contains an uppercase character 2) Contains a lowercase character 3) Contains a numeric digit 4) Contains a special character.
vmSize Desired Size of the VM. Any valid option accepted but if you choose premium storage type you must choose a DS class VM size.
vmVisualStudioVersion Which version of Visual Studio you would like to deploy
dnsLabelPrefix DNS Label for the Public IP. Must be lowercase. It should match with the following regular expression: ^[a-z][a-z0-9-]{1,61}[a-z0-9]$ or it will raise an error.
chocoPackages List of Chocolatey packages to install separated by a semi-colon eg. linqpad;sysinternals
setupChocolateyScriptFileName PowerShell script name to execute
setupChocolatelyScriptLocation Public uri location of PowerShell Chocolately setup script

Use the template


New-AzureRmResourceGroupDeployment -Name <deployment-name> -ResourceGroupName <resource-group-name> -TemplateUri
Install and configure Azure PowerShell

Command line

azure config mode arm
azure group deployment create <my-resource-group> <my-deployment-name> --template-uri
Install and Configure the Azure Cross-Platform Command-Line Interface