Skip to content

altissimo-hq/terraform-google-dns-zone

Repository files navigation

terraform-google-dns-zone

This module creates a Google Cloud DNS Managed Zone and resources records, including A records, CNAMES, MX records and TXT records.

Requirements

No requirements.

Providers

Name Version
google n/a

Modules

No modules.

Resources

Name Type
google_dns_managed_zone.zone resource
google_dns_record_set.a_records resource
google_dns_record_set.aaaa_records resource
google_dns_record_set.cname_records resource
google_dns_record_set.mx_records resource
google_dns_record_set.ns_records resource
google_dns_record_set.txt_records resource
google_dns_keys.zone data source

Inputs

Name Description Type Default Required
a_records Google Cloud DNS A Records
map(object({
rrdatas = list(string)
ttl = optional(number)
}))
{} no
aaaa_records Google Cloud DNS AAAA Records
map(object({
rrdatas = list(string)
ttl = optional(number)
}))
{} no
cname_records Google Cloud DNS CNAME Records
map(object({
rrdatas = list(string)
ttl = optional(number)
}))
{} no
default_ttl Default TTL number 300 no
dns_name DNS Name (ex. 'example.com.') string n/a yes
dnssec_state DNSSEC config (off, on, or transfer) string "off" no
force_destroy Set this true to delete all records in the zone. string false no
mx_records Google Cloud DNS MX Records
map(object({
rrdatas = list(string)
ttl = optional(number)
}))
{} no
ns_records Google Cloud DNS NS Records
map(object({
rrdatas = list(string)
ttl = optional(number)
}))
{} no
project_id Google Cloud Project for Cloud DNS Managed Zone string n/a yes
txt_records Google Cloud DNS TXT Records
map(object({
rrdatas = list(string)
ttl = optional(number)
}))
{} no
zone_description Cloud DNS Zone Description string null no
zone_labels Cloud DNS Zone Labels Map map(string) null no
zone_name Cloud DNS Zone Name string null no
zone_visibility Cloud DNS Zone Visibility string "public" no

Outputs

Name Description
ds_records DS Record for the Cloud DNS Managed Zone (if DNSSEC enabled)
id Cloud DNS Managed Zone ID (projects/{project}/managedZones/{name})
managed_zone_id Cloud DNS Managed Zone ID
name_servers Cloud DNS Managed Zone Name Servers
zone Cloud DNS Managed Zone