The Azure Quickstart templates are currently available in English

Marketplace Sample VM with Conditional Resources

Last updated: 5/10/2562

This template allows deploying a linux VM using new or existing resources for the Virtual Network, Storage and Public IP Address. It also allows for choosing between SSH and Password authenticate. The templates uses conditions and logic functions to remove the need for nested deployments.

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

Parameters

Parameter Name Description
location Location for the resources.
vmName Name for the Virtual Machine.
adminUsername User name for the Virtual Machine.
authenticationType Type of authentication to use on the Virtual Machine.
adminPasswordOrKey Password or ssh key for the Virtual Machine.
vmSize Size for the Virtual Machine.
storageNewOrExisting Determines whether or not a new storage account should be provisioned.
storageAccountName Name of the storage account
storageAccountType Storage account type
storageAccountResourceGroupName Name of the resource group for the existing storage account
virtualNetworkNewOrExisting Determines whether or not a new virtual network should be provisioned.
virtualNetworkName Name of the virtual network
addressPrefixes Address prefix of the virtual network
subnetName Name of the subnet
subnetPrefix Subnet prefix of the virtual network
virtualNetworkResourceGroupName Name of the resource group for the existing virtual network
publicIpNewOrExisting Determines whether or not a new public ip should be provisioned.
publicIpName Name of the public ip address
publicIpDns DNS of the public ip address for the VM
publicIpResourceGroupName Name of the resource group for the public ip address
publicIpAllocationMethod Allocation method for the public ip address
publicIpSku Name of the resource group for the public ip address
_artifactsLocation The base URI where artifacts required by this template are located. When the template is deployed using the accompanying scripts, a private location in the subscription will be used and this value will be automatically generated.
_artifactsLocationSasToken The sasToken required to access _artifactsLocation. When the template is deployed using the accompanying scripts, a sasToken will be automatically generated.

Use the template

PowerShell

New-AzResourceGroup -Name <resource-group-name> -Location <resource-group-location> #use this command when you need to create a new resource group for your deployment
New-AzResourceGroupDeployment -ResourceGroupName <resource-group-name> -TemplateUri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/100-marketplace-sample/azuredeploy.json
Install and configure Azure PowerShell

Command line

az group create --name <resource-group-name> --location <resource-group-location> #use this command when you need to create a new resource group for your deployment
az group deployment create --resource-group <my-resource-group> --template-uri https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/100-marketplace-sample/azuredeploy.json
Install and Configure the Azure Cross-Platform Command-Line Interface