Просмотр исходного кода

Creates second resolver instance in govcloud environments

Will follow up with removal of the commercial instance after saltstacks
and instances are updated.
Fred Damstra 4 лет назад
Родитель
Сommit
99bb6c0574

+ 1 - 0
prod/aws-us-gov/mdr-prod-c2/023-dns-resolver-instance-2/.tfswitch.toml

@@ -0,0 +1 @@
+../../../../.tfswitch.toml

+ 7 - 0
prod/aws-us-gov/mdr-prod-c2/023-dns-resolver-instance-2/README.md

@@ -0,0 +1,7 @@
+Build Note: For a fresh install, you may need to first build the instance:
+```
+terragrunt-local init
+terragrunt-local apply --target aws_instance.instance
+```
+
+Alternatively, you can disable reverse dns in terragrunt.hcl, but the above method should reduce errors where we forget to create the reverse record.

+ 43 - 0
prod/aws-us-gov/mdr-prod-c2/023-dns-resolver-instance-2/terragrunt.hcl

@@ -0,0 +1,43 @@
+locals {
+  # If you want to use any of the variables in _this_ file, you have to load them here.
+  # However, they will all be available as inputs to the module loaded in terraform.source
+  # below.
+
+  # e.g. inherited variables:
+  environment_vars = read_terragrunt_config(find_in_parent_folders("env.hcl"))
+  partition_vars = read_terragrunt_config(find_in_parent_folders("partition.hcl"))
+  region_vars = read_terragrunt_config(find_in_parent_folders("region.hcl"))
+  account_vars = read_terragrunt_config(find_in_parent_folders("account.hcl"))
+  global_vars = read_terragrunt_config(find_in_parent_folders("globals.hcl"))
+}
+
+dependency "vpc_system_services" {
+  config_path = "../010-vpc-system-services"
+}
+
+# Terragrunt will copy the Terraform configurations specified by the source parameter, along with any files in the
+# working directory, into a temporary folder, and execute your Terraform commands in that folder.
+terraform {
+  # Double slash is intentional and required to show root of modules
+  source = "git@github.mdr.defpoint.com:mdr-engineering/xdr-terraform-modules.git//base/dns/resolver_instance?ref=v1.10.9"
+}
+
+# Include all settings from the root terragrunt.hcl file
+include {
+  path = find_in_parent_folders()
+}
+
+# These are the variables we have to pass in to use the module specified in the terragrunt source above
+inputs = {
+  # All of the inputs from the inherited hcl files are available automatically
+  # (via the `inputs` section of the root `terragrunt.hcl`). However, modules
+  # will be more flexible if you specify particular input values.
+  tags = {
+    Purpose = "DNS Resolver 2"
+    Terraform = "aws/${basename(get_parent_terragrunt_dir())}/${path_relative_to_include()}/"
+  }
+  subnet_id = dependency.vpc_system_services.outputs.public_subnets[1]
+  vpc_id = dependency.vpc_system_services.outputs.vpc_id
+  reverse_enabled = true # Set to 'true' on second run
+  instance_number = 2
+}

+ 1 - 0
test/aws-us-gov/mdr-test-c2/023-dns-resolver-instance-2/.tfswitch.toml

@@ -0,0 +1 @@
+../../../../.tfswitch.toml

+ 7 - 0
test/aws-us-gov/mdr-test-c2/023-dns-resolver-instance-2/README.md

@@ -0,0 +1,7 @@
+Build Note: For a fresh install, you may need to first build the instance:
+```
+terragrunt-local init
+terragrunt-local apply --target aws_instance.instance
+```
+
+Alternatively, you can disable reverse dns in terragrunt.hcl, but the above method should reduce errors where we forget to create the reverse record.

+ 43 - 0
test/aws-us-gov/mdr-test-c2/023-dns-resolver-instance-2/terragrunt.hcl

@@ -0,0 +1,43 @@
+locals {
+  # If you want to use any of the variables in _this_ file, you have to load them here.
+  # However, they will all be available as inputs to the module loaded in terraform.source
+  # below.
+
+  # e.g. inherited variables:
+  environment_vars = read_terragrunt_config(find_in_parent_folders("env.hcl"))
+  partition_vars = read_terragrunt_config(find_in_parent_folders("partition.hcl"))
+  region_vars = read_terragrunt_config(find_in_parent_folders("region.hcl"))
+  account_vars = read_terragrunt_config(find_in_parent_folders("account.hcl"))
+  global_vars = read_terragrunt_config(find_in_parent_folders("globals.hcl"))
+}
+
+dependency "vpc_system_services" {
+  config_path = "../010-vpc-system-services"
+}
+
+# Terragrunt will copy the Terraform configurations specified by the source parameter, along with any files in the
+# working directory, into a temporary folder, and execute your Terraform commands in that folder.
+terraform {
+  # Double slash is intentional and required to show root of modules
+  source = "git@github.mdr.defpoint.com:mdr-engineering/xdr-terraform-modules.git//base/dns/resolver_instance?ref=v1.10.9"
+}
+
+# Include all settings from the root terragrunt.hcl file
+include {
+  path = find_in_parent_folders()
+}
+
+# These are the variables we have to pass in to use the module specified in the terragrunt source above
+inputs = {
+  # All of the inputs from the inherited hcl files are available automatically
+  # (via the `inputs` section of the root `terragrunt.hcl`). However, modules
+  # will be more flexible if you specify particular input values.
+  tags = {
+    Purpose = "DNS Resolver 2"
+    Terraform = "aws/${basename(get_parent_terragrunt_dir())}/${path_relative_to_include()}/"
+  }
+  subnet_id = dependency.vpc_system_services.outputs.public_subnets[1]
+  vpc_id = dependency.vpc_system_services.outputs.vpc_id
+  reverse_enabled = true # Set to 'true' on second run
+  instance_number = 2
+}