An open API service indexing awesome lists of open source software.

https://github.com/libre-devops/terraform-digitalocean-dns-records

A module used to update DNS records on digitalocean 💧
https://github.com/libre-devops/terraform-digitalocean-dns-records

Last synced: 2 months ago
JSON representation

A module used to update DNS records on digitalocean 💧

Awesome Lists containing this project

README

        

```hcl
data "digitalocean_domain" "domain" {
for_each = { for k, v in var.records : k => v if v.create_domain == false }
name = each.value.domain_name
}

resource "digitalocean_domain" "domain" {
for_each = { for k, v in var.records : k => v if v.create_domain == true }
name = each.value.domain_name
ip_address = each.value.domain_ip_address
}

resource "digitalocean_record" "records" {
for_each = { for k, v in var.records : k => v }
domain = each.value.create_domain == true ? digitalocean_domain.domain[each.key].id : data.digitalocean_domain.domain[each.key].id
type = each.value.record_type
name = each.value.record_name
value = each.value.record_value
port = each.value.port
priority = each.value.priority
weight = each.value.weight
ttl = each.value.ttl
flags = each.value.flags
tag = each.value.tag
}
```
## Requirements

No requirements.

## Providers

| Name | Version |
|------|---------|
| [digitalocean](#provider\_digitalocean) | n/a |

## Modules

No modules.

## Resources

| Name | Type |
|------|------|
| [digitalocean_domain.domain](https://registry.terraform.io/providers/digitalocean/digitalocean/latest/docs/resources/domain) | resource |
| [digitalocean_record.records](https://registry.terraform.io/providers/digitalocean/digitalocean/latest/docs/resources/record) | resource |
| [digitalocean_domain.domain](https://registry.terraform.io/providers/digitalocean/digitalocean/latest/docs/data-sources/domain) | data source |

## Inputs

| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [records](#input\_records) | The records to be created for digital ocean |

list(object({
create_domain = optional(bool, false)
record_type = string
record_name = string
record_value = string
domain_name = string
domain_ip_address = optional(string)
port = optional(number)
priority = optional(number)
weight = optional(number)
ttl = optional(number)
flags = optional(number)
tag = optional(string)
}))
| n/a | yes |

## Outputs

| Name | Description |
|------|-------------|
| [domain\_id](#output\_domain\_id) | The domain id if created |
| [domain\_ttl](#output\_domain\_ttl) | The domain ttl if created |
| [domain\_urn](#output\_domain\_urn) | The domain urn if created |
| [record\_fqdn](#output\_record\_fqdn) | FQDN of each record |
| [record\_id](#output\_record\_id) | Id of each record |