Add cloudflare
This commit is contained in:
24
modules/cloudflare/main.tf
Normal file
24
modules/cloudflare/main.tf
Normal file
@@ -0,0 +1,24 @@
|
||||
terraform {
|
||||
required_providers {
|
||||
cloudflare = {
|
||||
source = "cloudflare/cloudflare"
|
||||
version = "~> 3.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
provider "cloudflare" {
|
||||
api_token = var.api_token
|
||||
}
|
||||
|
||||
resource "cloudflare_record" "exact" {
|
||||
zone_id = var.zone_id
|
||||
for_each = { for record in var.records : record.name => record }
|
||||
|
||||
name = each.value.name
|
||||
value = each.value.ip
|
||||
type = each.value.ip_type
|
||||
ttl = 3600
|
||||
}
|
||||
|
||||
|
22
modules/cloudflare/variables.tf
Normal file
22
modules/cloudflare/variables.tf
Normal file
@@ -0,0 +1,22 @@
|
||||
variable "api_token" {
|
||||
description = "cloudflare token"
|
||||
type = string
|
||||
nullable = false
|
||||
sensitive = true
|
||||
}
|
||||
|
||||
variable "zone_id" {
|
||||
description = "cloudflare zone id "
|
||||
type = string
|
||||
nullable = false
|
||||
}
|
||||
|
||||
variable "records" {
|
||||
description = "cloudflare records"
|
||||
type = list(object({
|
||||
name = string
|
||||
ip = string
|
||||
ip_type = string
|
||||
}))
|
||||
}
|
||||
|
Reference in New Issue
Block a user