caf-terraform-landingzones/caf_solution/add-ons/azure_devops_agent
Arnaud Lheureux 46d44d46ea
Merge pull request #338 from chengwang514/main
Added option for ADO agent to use full storage blob urls that are created outsiide of the same LZ
2022-03-29 08:08:44 +08:00
..
extensions Add to root folder 2021-03-27 06:56:00 +00:00
scenario/200-contoso_demo Update ADO agent VM example 2022-03-21 10:33:18 +11:00
scripts Add to root folder 2021-03-27 06:56:00 +00:00
backend.azurerm Add to root folder 2021-03-27 06:56:00 +00:00
dynamic_secrets.tf Update AzDO LZ 2021-04-21 06:56:29 +00:00
local.azuread.tf FMT 2022-03-28 05:23:08 +00:00
locals.current_tfstates.tf fmt 2021-04-16 11:23:04 +00:00
main.tf remove azurerm provider requirements 2021-12-07 10:17:57 +01:00
output.tf update output for devops agent addon 2021-04-27 00:29:30 +00:00
readme.md Update instructions path 2021-12-21 11:22:28 +00:00
solution.tf FMT 2022-03-28 05:23:08 +00:00
variables.tf Update variables.tf 2021-11-11 10:08:26 +08:00
vm_extention_devops_agent.tf Added option to specify full storage blob urls that are created outside of the same LZ 2022-03-21 10:32:46 +11:00

readme.md

Cloud Adoption Framework for Azure - Landing zones on Terraform - Azure Devops Agent add-on

The Azure Devops Agent add-ons is the continuation of Self Hosted Agent implementation for Azure Devops environment that deployed in Azure Devops add on LZ. This will set up the underlying resources required for Agent in Azure.

  • Azure Virtual Machine to host the Agent
  • Azure VM Extension to connect the VM to Azure Devops self hosted agent
  • Storage account to put the script for VM Extension
  • Key Vault to store the SSH key of the VM

Azure Devops (Self Hosted Agent) add-on landing zone operates base on agent level for example for agent level0 will operates at level 0 and agent level1 will operates at level 1

For a review of the hierarchy approach of Cloud Adoption Framework for Azure landing zones on Terraform, you can refer to the following documentation.

Dependencies

Landing zone:

  • CAF Launchpad
  • Azure DevOps add on (example: scenario 200-contoso_demo)

Deployment

Deploy the Azure Devops agent for level0

rover -lz /tf/caf/caf_launchpad/add-ons/azure_devops_agent \
  -tfstate level0_azure_devops_agents.tfstate \
  -var-folder /tf/caf/caf_launchpad/add-ons/azure_devops_agent/scenario/200-contoso_demo/level0 \
  -parallelism 30 \
  -level level0 \
  -env sandpit \
  -a apply

Deploy the Azure Devops agent for level1

rover -lz /tf/caf/caf_launchpad/add-ons/azure_devops_agent \
  -tfstate azdo-agent-level1.tfstate \
  -var-folder /tf/caf/caf_launchpad/add-ons/azure_devops_agent/scenario/200-contoso_demo/level1 \
  -parallelism 30 \
  -level level1 \
  -env sandpit \
  -a apply


# If the tfstates are stored in a different subscription you need to execute the following command

rover -lz /tf/caf/caf_launchpad/add-ons/azure_devops_agent \
  -tfstate_subscription_id <ID of the subscription> \
  -tfstate azdo-agent-level1.tfstate \
  -var-folder /tf/caf/caf_launchpad/add-ons/azure_devops_agent/scenario/200-contoso_demo/level1 \
  -parallelism 30 \
  -level level1 \
  -env sandpit \
  -a apply