Terraform module to easily define consistent cluster domains on Route53 (e.g. `prod.ourcompany.com`)
Change all references to git.io/build-harness
into cloudposse.tools/build-harness
, since git.io
redirects will stop working on April 29th, 2022.
var.parent_zone_name
is not required by the module as of #33, let the module work if it's not provided. parent_zone_record_enabled = false
zone_name = "$${stage}.example.com
INSTEAD OF...
parent_zone_name = "example.com"
parent_zone_record_enabled = false
zone_name = "$${stage}.$${parent_zone_name}"
"$${parent_zone_name}", coalesce(join("", data.aws_route53_zone.parent_zone.*.name), var.parent_zone_name, "no_parent_zone_name")),
var.parent_zone_id
or var.parent_zone_name
because offering both can lead to conflict or confusion. If var.parent_zone_id
is removed, then we can always rely on var.parent_zone_name
instead of coalescing with the output of the data.aws_route53_zone.parent_zone
Original PR: These values were hardcoded and with too small default values. DNS is supposed to be a cache, and having a low TTL of records like NS or SOA contradicts that idea.
The previously-hardcoded low TTLs are values preferred by Cloud Posse as low TTLs lead to better availability in the event of a negative DNS response, such that the negative DNS answer will not be cached for an extended period of time (see @osterman's comments in this thread).
AWS defaults for TTL:
NS - 172800s SOA - 900s
Clousposse's defaults:
NS - 60s SOA - 30s
Closes #46
Previous PR has some weird permission issues which I couldn't solve, so I forked it again into a new repo and applied the same changes.
var.parent_zone_record_enabled
flag for the ability to disable creating the record on the parent zone.