https://github.com/brainsik/terraform-cloudflare-dns-https
Create Cloudflare DNS HTTPS records
https://github.com/brainsik/terraform-cloudflare-dns-https
cloudflare dns https opentofu opentofu-modules terraform terraform-modules
Last synced: 9 months ago
JSON representation
Create Cloudflare DNS HTTPS records
- Host: GitHub
- URL: https://github.com/brainsik/terraform-cloudflare-dns-https
- Owner: brainsik
- License: mit
- Created: 2024-08-29T18:26:02.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-02-09T03:40:13.000Z (11 months ago)
- Last Synced: 2025-03-26T14:12:20.347Z (9 months ago)
- Topics: cloudflare, dns, https, opentofu, opentofu-modules, terraform, terraform-modules
- Language: Shell
- Homepage: https://search.opentofu.org/module/brainsik/dns-https/cloudflare/latest
- Size: 12.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# terraform-cloudflare-dns-https
Create ServiceMode [DNS HTTPS records](https://kalfeher.com/https-records-simple/) in Cloudflare.
The Zone ID can be found on the Cloudflare overview page for the domain you
want to add records to.
## Usage
To create an HTTPS record saying `example.com` is available via http/2 over TLS:
```hcl
module "example_com_https" {
source = "brainsik/dns-https/cloudflare"
zone_id = "313372600deadcodebea5751993defc0"
name = "example.com"
alpn = "h2"
}
```
To create an HTTPS record saying `example.com` is available via http/3 or http/2 over TLS with IPs to use for initially establishing a connection:
```hcl
module "example_com_https" {
source = "brainsik/dns-https/cloudflare"
zone_id = "313372600deadcodebea5751993defc0"
name = "example.com"
alpn = "h3,h2"
ipv4hint = "192.0.2.1"
ipv6hint = "2001:db8::1,2001:db8::2"
}
```
## Requirements
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >= 1.6 |
| [cloudflare](#requirement\_cloudflare) | ~> 4 |
## Providers
| Name | Version |
|------|---------|
| [cloudflare](#provider\_cloudflare) | ~> 4 |
## Modules
No modules.
## Resources
| Name | Type |
|------|------|
| [cloudflare_record.https](https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/record) | resource |
## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [alpn](#input\_alpn) | A comma separated list of short form ALPN identifiers (e.g., "h2" or "h3,h2") | `string` | n/a | yes |
| [ipv4hint](#input\_ipv4hint) | A comma separated list of IPs | `string` | `""` | no |
| [ipv6hint](#input\_ipv6hint) | A comma separated list of IPs | `string` | `""` | no |
| [name](#input\_name) | The name of the record | `string` | n/a | yes |
| [priority](#input\_priority) | Resource record priority | `number` | `1` | no |
| [zone\_id](#input\_zone\_id) | The Cloudflare DNS zone ID to add the record to | `string` | n/a | yes |
## Outputs
No outputs.