152c172b55 | ||
---|---|---|
.. | ||
README.md | ||
main.tf | ||
outputs.tf | ||
variables.tf | ||
versions.tf |
README.md
Google Cloud DNS Module
This module allows simple management of Google Cloud DNS zones and records. It supports creating public, private, forwarding, and peering zones. For DNSSEC configuration, refer to the dns_managed_zone
documentation.
Example
module "private-dns" {
source = "./modules/dns"
project_id = "myproject"
type = "private"
name = "test-example"
domain = "test.example."
client_networks = [var.vpc_self_link]
recordsets = [
{ name = "localhost", type = "A", ttl = 300, records = ["127.0.0.1"] }
]
}
Variables
name | description | type | required | default |
---|---|---|---|---|
domain | Zone domain, must end with a period. | string |
✓ | |
name | Zone name, must be unique within the project. | string |
✓ | |
project_id | Project id for the zone. | string |
✓ | |
client_networks | List of VPC self links that can see this zone. | list(string) |
[] |
|
default_key_specs_key | DNSSEC default key signing specifications: algorithm, key_length, key_type, kind. | any |
{} |
|
default_key_specs_zone | DNSSEC default zone signing specifications: algorithm, key_length, key_type, kind. | any |
{} |
|
description | Domain description. | string |
Terraform managed. |
|
dnssec_config | DNSSEC configuration: kind, non_existence, state. | any |
{} |
|
forwarders | List of target name servers, only valid for 'forwarding' zone types. | list(string) |
[] |
|
peer_network | Peering network self link, only valid for 'peering' zone types. | string |
|
|
recordsets | List of DNS record objects to manage. | list(object({...})) |
[] |
|
type | Type of zone to create, valid values are 'public', 'private', 'forwarding', 'peering'. | string |
private |
Outputs
name | description | sensitive |
---|---|---|
domain | The DNS zone domain. | |
name | The DNS zone name. | |
name_servers | The DNS zone name servers. | |
type | The DNS zone type. | |
zone | DNS zone resource. |