Great guide - thanks :) The mock resouce group is not working for me though. Does it need an update? terragrunt run-all plan Module /home/xxxx/workspace/terragrunt-azure-example-main/vs-enterprise/staging/eastus/spoke-vnet depends on module /home/xxxx/workspace/terragrunt-azure-example-main/vs-enterprise/staging/global/resource_groups, which is an external dependency outside of the current working directory. Should Terragrunt run this external dependency? Warning, if you say 'yes', Terragrunt will make changes in /home/xxxx/workspace/terragrunt-azure-example-main/vs-enterprise/staging/global/resource_groups as well! (y/n) y INFO[0001] The stack at /home/xxxx/workspace/terragrunt-azure-example-main/vs-enterprise/staging/eastus will be processed in the following order for command plan: Group 1 - Module /home/xxxx/workspace/terragrunt-azure-example-main/vs-enterprise/staging/global/resource_groups Group 2 - Module /home/xxxx/workspace/terragrunt-azure-example-main/vs-enterprise/staging/eastus/spoke-vnet ^[[21~ Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # azurerm_resource_group.vnet_resource_group will be created + resource "azurerm_resource_group" "vnet_resource_group" { + id = (known after apply ) + location = "eastus" + name = "rg-example-vnet" } Plan: 1 to add , 0 to change , 0 to destroy. Changes to Outputs: + vnet_resource_group_name = "rg-example-vnet" ───────────────────────────────────────────────────────────────────────────── Note: You didn 't use the -out option to save this plan, so Terraform can' t guarantee to take exactly these actions if you run "terraform apply" now. data.azurerm_resource_group.vnet: Reading... ╷ │ Error : Error : Resource Group "rg-terragrunt-mock-001" was not found │ │ with data.azurerm_resource_group.vnet, │ on main.tf line 2 , in data "azurerm_resource_group" "vnet" : │ 2 : data "azurerm_resource_group" "vnet" { │ ╵ time = 2022 -10 -12 T20: 38 : 29 + 01 : 00 level = error msg=Terraform invocation failed in /home/xxxx/workspace/terragrunt-azure-example- main /vs- enterprise /staging/eastus/spoke-vnet/.terragrunt- cache /elSLctBsMYdjj1v7pFng8kbSZu4/UD_UZz400laOPGIaJ_MvMsygCC0 prefix=[/home/xxxx/workspace/terragrunt-azure-example- main /vs- enterprise /staging/eastus/spoke-vnet] ERRO[ 0029 ] Module /home/xxxx/workspace/terragrunt-azure-example- main /vs- enterprise /staging/eastus/spoke-vnet has finished with an error : 1 error occurred: * exit status 1 prefix=[/home/xxxx/workspace/terragrunt-azure-example- main /vs- enterprise /staging/eastus/spoke-vnet] INFO[ 0029 ] ╷ │ Error : Error : Resource Group "rg-terragrunt-mock-001" was not found │ │ with data.azurerm_resource_group.vnet, │ on main.tf line 2 , in data "azurerm_resource_group" "vnet" : │ 2 : data "azurerm_resource_group" "vnet" { │ ╵ time = 2022 -10 -12 T20: 38 : 29 + 01 : 00 level = error msg=Terraform invocation failed in /home/xxxx/workspace/terragrunt-azure-example- main /vs- enterprise /staging/eastus/spoke-vnet/.terragrunt- cache /elSLctBsMYdjj1v7pFng8kbSZu4/UD_UZz400laOPGIaJ_MvMsygCC0 prefix=[/home/xxxx/workspace/terragrunt-azure-example- main /vs- enterprise /staging/eastus/spoke-vnet] ERRO[ 0029 ] 1 error occurred: * exit status 1