Terraform module for AWS route53.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Julien Cabillot 7f75bd0eb7 Merge pull request 'Fix: pre-commit issues' (#14) from hotfix/precommit into master 3 months ago
examples Fix: pre-commit issues 3 months ago
.gitignore tech: adds gitignore,pre-commit & Jenkinsfile 1 year ago
.pre-commit-config.yaml Fix: pre-commit issues 3 months ago
CHANGELOG.md Fix: pre-commit issues 3 months ago
Jenkinsfile tech/ add Changelog 10 months ago
README.md Fix: pre-commit issues 3 months ago
data.tf tech/ pre-commit 10 months ago
main.tf fix/ issue with dynamic block 10 months ago
outputs.tf tech/ pre-commit 10 months ago
security_groups.tf tech/ pre-commit 10 months ago
variables.tf feat: allows to configure egress for resolvers SGs 1 year ago
versions.tf feat/ auto-upgrade 10 months ago

README.md

Terraform Route53 module

This module is not to be deployed directly.

Limitations:

Requirements

Name Version
terraform >= 0.12

Providers

Name Version
aws n/a

Inputs

Name Description Type Default Required
enable Whether or not to enable this entire module or not. bool true no
record_alias_dns_names DNS domain names for a CloudFront distribution, S3 bucket, ELB, or another resource record for the alias records to create. See var.record_alias_zone_indexes as it is requited to bind records with specific zones. list [] no
record_alias_domain_names Domain names of the alias records to create. See var.record_alias_zone_indexes as it is requited to bind records with specific zones. list [] no
record_alias_evaluate_healths Whether or not to evaluate the health of each alias records to create. See var.record_alias_zone_indexes as it is requited to bind records with specific zones. list [] no
record_alias_types Types (valid values are A, AAAA, CAA, CNAME, MX, NAPTR, NS, PTR, SOA, SPF, SRV and TXT) of the alias records to create. See var.record_alias_zone_indexes as it is requited to bind records with specific zones. list [] no
record_alias_zone_id Hosted zone ID for a CloudFront distribution, S3 bucket, ELB, or Route 53 hosted zones for the alias records to create. See var.record_alias_zone_indexes as it is requited to bind records with specific zones. list [] no
record_alias_zone_indexes Indexes of the zone ids (merge of the private & public zones created by this module - in this order) to bind with specific alias records. Must have the same number of element than: var.record_alias_domain_names, var.record_alias_types, etc. list [] no
record_domain_names Domain names of the records to create. See var.record_zone_indexes as it is requited to bind records with specific zones. list [] no
record_records Object of string lists of recordsDomain names for the records to create. See var.record_zone_indexes as it is requited to bind records with specific zones. See example for proper usage. map {} no
record_ttls Domain names of the records to create. See var.record_zone_indexes as it is requited to bind records with specific zones. list [] no
record_types Types (valid values are A, AAAA, CAA, CNAME, MX, NAPTR, NS, PTR, SOA, SPF, SRV and TXT) of the records to create. See var.record_zone_indexes as it is requited to bind records with specific zones. list [] no
record_zone_indexes Indexes of the zone ids (merge of the private & public zones created by this module - in this order) to bind with specific records. Must have the same number of element than: var.record_domain_names, var.record_types, etc. list [] no
resolver_inbound_count How many INBOUND resolvers to be created in the module. This value cannot be computed automatically in Terraform 0.11. number 0 no
resolver_inbound_ip_addresses Object of lists containing the IP addresses corresponding to the subnet IDs for the INBOUND resolvers to be created in the module. Look at examples for correct usage. map {} no
resolver_inbound_names Names of the INBOUND resolvers to be created in the module. list [] no
resolver_inbound_security_group_egress_allowed_cidrs CIDRs allowed to perform DNS request to the INBOUND resolvers, egress rules. list
[
“10.0.0.0/8"
]
no
resolver_inbound_security_group_ingress_allowed_cidrs CIDRs allowed to perform DNS request to the INBOUND resolvers, ingress rules. list
[
“10.0.0.0/8"
]
no
resolver_inbound_security_group_name Name of the security groups shared for INBOUND resolvers. string "inbound-resolver" no
resolver_inbound_subnet_ids Object of lists containing the subnet IDs corresponding to the IP addresses for the INBOUND resolvers to be created in the module. Look at examples for correct usage. map {} no
resolver_outbound_count How many OUTBOUND resolvers to be created in the module. This value cannot be computed automatically in Terraform 0.11. number 0 no
resolver_outbound_ip_addresses Object of lists containing the IP addresses corresponding to the subnet IDs for the OUTBOUND resolvers to be created in the module. Look at examples for correct usage. map {} no
resolver_outbound_names Names of the OUTBOUND resolvers to be created in the module. list [] no
resolver_outbound_security_group_egress_allowed_cidrs CIDRs allowed to perform DNS request to the OUTBOUND resolvers, egress rules. list
[
“10.0.0.0/8"
]
no
resolver_outbound_security_group_ingress_allowed_cidrs CIDRs allowed to perform DNS request to the OUTBOUND resolvers, ingress rules. list
[
“10.0.0.0/8"
]
no
resolver_outbound_security_group_name Name of the security groups shared for OUTBOUND resolvers. string "outbound-resolver" no
resolver_outbound_subnet_ids Object of lists containing the subnet IDs corresponding to the IP addresses for the OUTBOUND resolvers to be created in the module. Look at examples for correct usage. map {} no
resolver_tags Tags specific to the resolvers to be created in the module. Will be merged with tags. map {} no
rule_forward_attachement_ids IDs of the forward resolver rules that should be attached to the rule_forward_vpc_attachement_ids. If not specify, the forward rules created by this module will be used for all the attachments. list [] no
rule_forward_attachement_ids_count How many var.rule_forward_attachement_ids. This value cannot be computed automatically in Terraform 0.11. number 0 no
rule_forward_count How many resolvers forward rules to be created in the module. This value cannot be computed automatically in Terraform 0.11. number 0 no
rule_forward_domain_names Domain names of the resolvers forward rules to be created in the module. DNS queries for these domain names are forwarded to the IP addresses that are specified using target_ip. list [] no
rule_forward_names Names of the resolvers forward rules to be created in the module. Friendly names that lets you easily find a rule in the Resolver dashboard in the Route 53 console. list [] no
rule_forward_resolver_endpoint_ids IDs of the resolver endpoints to be used for the resolver forward rules. If not specify, the first OUBOUND resolver created by this module will be used for all the rules. list [] no
rule_forward_resolver_target_ips Object of lists of objects containing target IPs for the resolver forward rules. IPs that you want resolvers to forward DNS queries to. Look at examples for correct usage. map {} no
rule_forward_share_indexes Indexes of the forward rules to be shared with other principals (rule_forward_share_principals). See examples for correct usage. list [] no
rule_forward_share_names Names of the resource shares resolvers for forward rules to be created in the module. list [] no
rule_forward_share_principal_count How many accounts must receive the resource shares for forward rules to be created in the module. This value cannot be computed automatically in Terraform 0.11. number 0 no
rule_forward_share_principals IDs of the accounts that must receive the resource shares for forward rules to be created in the module. list [] no
rule_forward_share_tags Tags specific to the resource shares for the forward rules to be created in the module. Will be merged with tags. map {} no
rule_forward_tags Tags specific to the resolvers forward rules to be created in the module. Will be merged with tags. map {} no
rule_forward_vpc_attachement_count How many resolver forward rule attachments should be created in the module. This value cannot be computed automatically in Terraform 0.11. number 0 no
rule_forward_vpc_attachement_ids IDs of the VPC to be attached to the resolver forward rules of this module. list [] no
tags Tags to be shared among all resources of this module. map {} no
vpc_id ID of the VPC where to create resources for this module. string "" no
zone_private_comments Comments of private hosted zones to be created in the module. list [] no
zone_private_count How many private hosted zones should be created in the module. This value cannot be computed automatically in Terraform 0.11. number 0 no
zone_private_ids IDs of existing private hosted zones to be used. If not specified, the module will create a new hosted zones according to other variables. list [] no
zone_private_ids_count How many existing private IDs of private hosted zones are passed. This value cannot be computed automatically in Terraform 0.11. number 0 no
zone_private_names Names of private hosted zones to be created in the module. list [] no
zone_private_vpc_attachement_count How many private hosted zones attachments should be created in the module. This should not contain the current VPC. This value cannot be computed automatically in Terraform 0.11. number 0 no
zone_private_vpc_attachement_ids IDs of the VPC to be attached to the private hosted zones of this module. This should not contain the current VPC as it will be attached automatically. list [] no
zone_public_comments Comments of public hosted zones to be created in the module. list [] no
zone_public_count How many public hosted zones should be created in the module. This value cannot be computed automatically in Terraform 0.11. number 0 no
zone_public_names Names of public hosted zones to be created in the module. list [] no
zone_tags Tags specific to the hosted zones to be created in the module. Will be merged with tags. map {} no

Outputs

Name Description
principal_association_forward_id The Amazon Resource Name (ARN) of the Resource Share and the principal, separated by a comma.
record_fqdns FQDNs built using the zone domains and names of the records.
record_names Names of the records.
resolver_inbound_arns ID of the security group shared with the INBOUND resolvers.
resolver_inbound_host_vpc_ids IDs of the host VPC of the the INBOUND resolvers.
resolver_inbound_ids ID of the security group shared with the INBOUND resolvers.
resolver_inbound_security_group_ids IDs of the security group for the INBOUND resolvers.
resolver_outbound_arns ID of the security group shared with the OUTBOUND resolvers.
resolver_outbound_host_vpc_ids IDs of the host VPC of the the OUTBOUND resolvers.
resolver_outbound_ids ID of the security group shared with the OUTBOUND resolvers.
resolver_outbound_security_group_id ID of the security group shared with the OUTBOUND resolvers.
resource_association_forward_id The Amazon Resource Name (ARN) of the resource share.
rule_association_forward_id The ID of the resolver rule association.
rule_forward_arns ARNs of the resolver rules.
rule_forward_ids IDs of the resolver rules.
rule_forward_owner_ids When the rules are shared with other AWS accounts, the account IDs of the accounts that the rules are shared with.
rule_forward_share_arns ARNs of the resource shares for the resolver forward rules.
rule_forward_share_ids IDs of the resource shares for the resolver forward rules.
rule_forward_share_statuses Whether the rules are shared and, if so, whether the current account is sharing the rules with other accounts, or another account is sharing the rules with the current account. Values are NOT_SHARED, SHARED_BY_ME or SHARED_WITH_ME.
zone_association_private_id The calculated unique identifier for the association.
zone_association_private_vpc_id The ID of the VPC for the association.
zone_association_private_vpc_region The region in which the VPC identified by vpc_id was created.
zone_association_private_zone_id The ID of the hosted zone for the association.
zone_private_ids IDs of the private hosted zones.
zone_private_name_servers A list of name servers in associated (or default) delegation set.
zone_public_ids IDs of the public hosted zones.
zone_public_name_servers A list of name servers in associated (or default) delegation set.