A Terraform module to create a domain zone in Cloudflare and add DNS the simpleway. It creates:
- Zone;
- Zone settings;
- Naked A record, if provided;
- Naked AAAA record, if provided;
- WWW CNAME to naked;
- all additional records provided.
provider "cloudflare" {
email = ""
api_key = ""
version = ">= 3.32"
}
module "domain_com" {
source = "tcarrondo/zone/cloudflare"
version = "4.1.0"
domain = "domain.com"
ipv4 = ["1.2.3.4"]
ipv6 = ["2607:f0d0:1002:51::4"]
records = {
mail = {
name = "mail"
value = "1.2.3.4"
},
mx_10 = {
name = "${module.domain_com.domain}"
value = "mail.${module.domain_com.domain}"
type = "MX"
priority = "10"
proxied = false
},
}
}
provider "cloudflare" {
email = ""
api_key = ""
version = "~> 2.2"
}
module "domain_com" {
source = "tcarrondo/zone/cloudflare"
version = "3.0.0"
domain = "domain.com"
ipv4 = ["1.2.3.4"]
ipv6 = ["2607:f0d0:1002:51::4"]
records = [
{
name = "mail"
value = "1.2.3.4"
type = "A"
},
{
name = "${module.domain_com.domain}"
value = "mail.${module.domain_com.domain}"
type = "MX"
priority = "10"
proxied = false
},
]
}
Name | Version |
---|---|
terraform | >= 1.0 |
cloudflare | >= 3.32 |
Name | Version |
---|---|
cloudflare | >= 3.32 |
No modules.
Name | Type |
---|---|
cloudflare_record.domain_ipv4 | resource |
cloudflare_record.domain_ipv6 | resource |
cloudflare_record.domain_www | resource |
cloudflare_record.records | resource |
cloudflare_zone.domain | resource |
cloudflare_zone_settings_override.domain | resource |
cloudflare_accounts.main | data source |
Name | Description | Type | Default | Required |
---|---|---|---|---|
account_name | Cloudflare account name | string |
n/a | yes |
domain | Zone domain name | string |
n/a | yes |
ipv4 | Naked ipv4 (A) record value | list(string) |
[] |
no |
ipv6 | Naked ipv6 (AAAA) record value | list(string) |
[] |
no |
plan | Plan associated with the zone | string |
"free" |
no |
records | Other (A, CNAME, MX, TXT) records | list(map(any)) |
[] |
no |
zone_on | Zone creation | bool |
true |
no |
Name | Description |
---|---|
domain | Zone domain name |
ns | Zone nameservers |
zone_id | Zone ID |