az lab vm

Manage VMs in an Azure DevTest Lab.

Commands

az lab vm apply-artifacts Apply artifacts to a virtual machine in Azure DevTest Lab.
az lab vm claim Claim a virtual machine from the Lab.
az lab vm create Create a VM in a lab.
az lab vm delete Delete virtual machine.
az lab vm list List the VMs in an Azure DevTest Lab.
az lab vm show Get virtual machine.
az lab vm start Start a virtual machine.
az lab vm stop Stop a virtual machine This operation can take a while to complete.

az lab vm apply-artifacts

Apply artifacts to a virtual machine in Azure DevTest Lab.

az lab vm apply-artifacts --lab-name
--name
--resource-group
[--artifacts]

Required Parameters

--lab-name
Name of the Lab.
--name -n
Name of the virtual machine.
--resource-group -g
Name of lab's resource group.

Optional Parameters

--artifacts
JSON encoded array of artifacts to be applied. Use @{file} to load from a file.

az lab vm claim

Claim a virtual machine from the Lab.

az lab vm claim [--lab-name]
[--name]
[--resource-group]

Examples

Claim any available virtual machine in the lab.

az lab vm claim -g MyRG --lab-name MyLab

Claim a specific virtual machine in the lab.

az lab vm claim -g MyRG --lab-name MyLab --name MyVM

Claim multiple virtual machines in the lab using `--ids`.

az lab vm claim --ids     /subscriptions/{SubID}/resourcegroups/{MyRG}/providers/microsoft.devtestlab/labs/{MyLab}/virtualmachines/{MyVM1}     /subscriptions/{SubID}/resourcegroups/{MyRG}/providers/microsoft.devtestlab/labs/{MyLab}/virtualmachines/{MyVM2}

Optional Parameters

--lab-name
Name of the lab.
--name -n
Name of the virtual machine to claim.
--resource-group -g
Name of lab's resource group.

az lab vm create

Create a VM in a lab.

az lab vm create --lab-name
--name
--resource-group
[--admin-password]
[--admin-username]
[--allow-claim]
[--artifacts]
[--authentication-type]
[--disk-type]
[--expiration-date]
[--formula]
[--generate-ssh-keys]
[--image]
[--image-type]
[--ip-configuration]
[--notes]
[--saved-secret]
[--size]
[--ssh-key]
[--subnet]
[--tags]
[--vnet-name]

Examples

Create a VM in the lab from a gallery image.

az lab vm create --lab-name MyLab -g MyRG --name MyVM --image "Ubuntu Server 16.04 LTS" --image-type gallery --size Standard_DS1_v2

Create a VM in the lab from a gallery image with SSH authentication.

az lab vm create --lab-name MyLab -g MyRG --name MyVM --image "Ubuntu Server 16.04 LTS" --image-type gallery --size Standard_DS1_v2 --authentication-type ssh

Create a claimable VM in the lab from a gallery image with password authentication.

az lab vm create --lab-name MyLab -g MyRG --name MyVM --image "Ubuntu Server 16.04 LTS" --image-type gallery --size Standard_DS1_v2 --allow-claim

Create a windows VM in the lab from a gallery image with password authentication.

az lab vm create --lab-name MyLab -g MyRG --name MyVM --image "Windows Server 2008 R2 SP1" --image-type gallery --size Standard_DS1_v2

Create a VM in the lab from a custom image.

az lab vm create --lab-name MyLab -g MyRG --name MyVM --image "jenkins_custom" --image-type custom --size Standard_DS1_v2

Create a VM in the lab with a public IP.

az lab vm create --lab-name MyLab -g MyRG --name MyVM --image "Ubuntu Server 16.04 LTS" --image-type gallery --size Standard_DS1_v2 --ip-configuration public

Create a VM from a formula.

az lab vm create --lab-name MyLab -g MyRG --name MyVM --formula MyFormula --artifacts @/artifacts.json

Required Parameters

--lab-name
Name of the lab.
--name -n
Name of the virtual machine.
--resource-group -g
Name of lab's resource group. You can configure the default group using 'az configure --defaults group='.

Optional Parameters

--admin-password
Password for the VM admin.
--admin-username
Username for the VM admin.
default value: appveyor
--allow-claim
Flag indicating if the VM should be created as claimable.
--artifacts
JSON encoded array of artifacts to be applied. Use @{file} to load from a file.
--authentication-type
Type of authentication allowed for the VM. Allowed values are: password, ssh.
default value: password
--disk-type
Storage type to use for virtual machine.
--expiration-date
The expiration date in UTC(YYYY-mm-dd) for the VM.
--formula
Name of the formula. Use `az lab formula list` for available formulas.
--generate-ssh-keys
Generate SSH public and private key files if missing.
--image
The name of the operating system image (gallery image name or custom image name/ID).
--image-type
Type of the image. Allowed values are: gallery, custom.
--ip-configuration
Type of IP configuration to use for the VM. Allowed values are: shared, public, private.
--notes
Notes for the virtual machine.
--saved-secret
Name of the saved secret to be used for authentication.
--size
The size of the VM to be created. See https://azure.microsoft.com/en-us/pricing/details/virtual-machines/ for size info.
--ssh-key
The SSH public key or public key file path. Use `--generate-ssh-keys` to generate SSH keys.
--subnet
Name of the subnet to add the VM to.
--tags
Space separated tags in `key[=value]` format.
--vnet-name
Name of the virtual network to add the VM to.

az lab vm delete

Delete virtual machine.

az lab vm delete --lab-name
--name
--resource-group

Required Parameters

--lab-name
The name of the lab.
--name
The name of the virtual machine.
--resource-group -g
Name of resource group. You can configure the default group using `az configure --defaults group=<name>`.

az lab vm list

List the VMs in an Azure DevTest Lab.

az lab vm list --lab-name
--resource-group
[--all]
[--claimable]
[--environment]
[--expand]
[--filters]
[--object-id]
[--order-by]
[--top]

Required Parameters

--lab-name
Name of the lab.
--resource-group -g
Name of lab's resource group. You can configure the default group using 'az configure --defaults group='.

Optional Parameters

--all
List all virtual machines in the lab. Cannot be used with `--filters`.
--claimable
List only claimable virtual machines in the lab. Cannot be used with `--filters`.
--environment
Name or ID of the environment to list virtual machines in. Cannot be used with `--filters`.
--expand
The expand query.
--filters
The filter to apply.
--object-id
Object ID of the owner to list VMs for.
--order-by
The ordering expression for the results using OData notation.
--top
The maximum number of resources to return.

az lab vm show

Get virtual machine.

az lab vm show --lab-name
--name
--resource-group
[--expand]

Required Parameters

--lab-name
The name of the lab.
--name
The name of the virtual machine.
--resource-group -g
Name of resource group. You can configure the default group using `az configure --defaults group=<name>`.

Optional Parameters

--expand
Specify the $expand query. Example: 'properties($expand=artifacts,computeVm,networkInterface,applicableSchedule)'.

az lab vm start

Start a virtual machine.

az lab vm start --lab-name
--name
--resource-group

Required Parameters

--lab-name
The name of the lab.
--name
The name of the virtual machine.
--resource-group -g
Name of resource group. You can configure the default group using `az configure --defaults group=<name>`.

az lab vm stop

Stop a virtual machine This operation can take a while to complete.

az lab vm stop --lab-name
--name
--resource-group

Required Parameters

--lab-name
The name of the lab.
--name
The name of the virtual machine.
--resource-group -g
Name of resource group. You can configure the default group using `az configure --defaults group=<name>`.