terragrunt.hcl 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. locals {
  2. # If you want to use any of the variables in _this_ file, you have to load them here.
  3. # However, they will all be available as inputs to the module loaded in terraform.source
  4. # below.
  5. # e.g. inherited variables:
  6. environment_vars = read_terragrunt_config(find_in_parent_folders("env.hcl"))
  7. partition_vars = read_terragrunt_config(find_in_parent_folders("partition.hcl"))
  8. region_vars = read_terragrunt_config(find_in_parent_folders("region.hcl"))
  9. account_vars = read_terragrunt_config(find_in_parent_folders("account.hcl"))
  10. global_vars = read_terragrunt_config(find_in_parent_folders("globals.hcl"))
  11. }
  12. # override the root required_providers so we can call the submodule directly
  13. generate "required_providers" {
  14. path = "required_provider.tf"
  15. if_exists = "overwrite_terragrunt"
  16. contents = <<EOF
  17. EOF
  18. }
  19. dependency "resolver-1" {
  20. config_path = "../023-dns-resolver-instance"
  21. }
  22. dependency "resolver-2" {
  23. config_path = "../023-dns-resolver-instance-2"
  24. }
  25. # Terragrunt will copy the Terraform configurations specified by the source parameter, along with any files in the
  26. # working directory, into a temporary folder, and execute your Terraform commands in that folder.
  27. terraform {
  28. # Double slash is intentional and required to show root of modules
  29. source = "git@github.xdr.accenturefederalcyber.com:mdr-engineering/xdr-terraform-modules.git//submodules/dns/private_A_record?ref=v3.0.0"
  30. }
  31. # Include all settings from the root terragrunt.hcl file
  32. include {
  33. path = find_in_parent_folders()
  34. }
  35. # These are the variables we have to pass in to use the module specified in the terragrunt source above
  36. inputs = {
  37. # All of the inputs from the inherited hcl files are available automatically
  38. # (via the `inputs` section of the root `terragrunt.hcl`). However, modules
  39. # will be more flexible if you specify particular input values.
  40. tags = {
  41. Purpose = "DNS Resolver"
  42. Terraform = "aws/${basename(get_parent_terragrunt_dir())}/${path_relative_to_include()}/"
  43. }
  44. name = "resolver"
  45. ip_addresses = [ dependency.resolver-1.outputs.instance_private_ip, dependency.resolver-2.outputs.instance_private_ip ]
  46. reverse_enabled = false
  47. }
  48. terraform_version_constraint = "= 1.0.7"
  49. terragrunt_version_constraint = "= 0.32.3"