common/code-upgrade-samples/azurerm/compute-create-windowsvm-quick-splatted-params-2.ps1 (22 lines of code) (raw):

# Original source code: https://github.com/Azure/azure-docs-powershell-samples/blob/a513b6fceae51aaea1daaa8edd4d6fc66590d172/virtual-machine/create-vm-detailed/create-windows-vm-quick.ps1 # Variables for common values $resourceGroup = "myResourceGroup" $location = "westeurope" $vmName = "myVM" # Create user object $cred = Get-Credential -Message "Enter a username and password for the virtual machine." # Create a resource group New-AzureRmResourceGroup -Name $resourceGroup -Location $location # Create a virtual machine # use splatted params (keys are wrapped with quotes) $virtualMachineParams = @{ "Location" = $location "ImageName" = "Win2016Datacenter" "VirtualNetworkName" = "myVnet" "SubnetName" = "mySubnet" "SecurityGroupName" = "myNetworkSecurityGroup" "PublicIpAddressName" = "myPublicIp" "Credential" = $cred "OpenPorts" = 3389 } New-AzureRmVM @virtualMachineParams -ResourceGroupName $resourceGroup -Name $vmName