terraform/solution_template/vm-linux-terraform
Joey Lorich 415e3caa97 reorganize, add scaffold folder
update readmes

clean up tf provider

add readme and initial templates

add initial pass at readmes

more readme updates

update various quickstarts

finish cleaning up 101s

more updates

lots fo template updates

add remaining

more updates
2019-11-06 16:39:59 -05:00
..
scripts Fix issue with Azure CLI signing key 2018-06-06 13:51:16 -07:00
README.md Added links to README 2018-03-02 17:26:52 -08:00
createUiDefinition.json reorganize, add scaffold folder 2019-11-06 16:39:59 -05:00
mainTemplate.json reorganize, add scaffold folder 2019-11-06 16:39:59 -05:00

README.md

Azure Marketplace Terraform Solution Template

This template provisions a Linux Virtual Machine(VM) to Azure pre-configured with the latest Terraform version and the Azure CLI v2.0.

Template Deployment Steps:

  • Creates a VM with system assigned identity based on the Ubuntu 16.04 LTS image
  • Installs the MSI extension on the VM to allow OAuth tokens to be issued for Azure resources
  • Assign RBAC permissions to the Managed Identity, granting owner rights for the resource group
  • Creates a Terraform template folder (tfTemplate)
  • Pre-configures Terraform remote state with the Azure backend

Once all required resources have been provisioned to Azure the template will then execute a shell script on the VM via the custom script extension. The shell script will install the latest Terraform version, Azure CLI v2.0, Unzip, JQ and create the remote storage container via the installed Azure CLI. Finally, it will then create a Terraform template folder that is pre-configured for use with Terraform Remote State and the Azure backend.

Post Deployment Configuration Steps

Steps to Enable Remote State

Copy ~/tfTemplate/remoteState.tf from home directory to the root of the Terraform scripts to enable remote state management.

Steps to Enable MSI

Once the template has finished deployment, log into the VM via SSH and run the following command to enable MSI with Terraform. You only need to perform this step once, the first time you connect to the VM, once the script has been ran the changes are persisted to Azure.

. ~/tfEnv.sh