This module omits the priority
key for rulesets and auto-calculates those by the order they appear in the page_rules
list.
terraform.tfvars
:
domain = "<domain.tld>"
page_rules = [
{
target = "<target>"
status = "disabled"
actions = {
forwarding_url = [{
status_code = "<status_code>"
url = "<url>"
}]
}
},
{
target = "<target>"
actions = {
always_use_https = "true"
}
}
]
Name | Version |
---|---|
cloudflare | 4.52.0 |
Name | Version |
---|---|
terraform | >= 1.5 |
cloudflare | 4.52.0 |
The following input variables are required:
Description: The Cloudflare API token.
Type: string
Description: Cloudflare domain to apply rules for.
Type: string
The following input variables are optional (have default values):
Description: List of Cloudflare page rule objects.
Type:
list(object({
target = string
status = optional(string, "active")
actions = object({
always_use_https = optional(bool, false)
disable_apps = optional(bool, false)
disable_performance = optional(bool, false)
disable_railgun = optional(bool, false)
disable_security = optional(bool, false)
disable_zaraz = optional(bool, false)
edge_cache_ttl = optional(number)
automatic_https_rewrites = optional(string)
browser_cache_ttl = optional(number)
browser_check = optional(string)
bypass_cache_on_cookie = optional(string)
cache_on_cookie = optional(string)
cache_by_device_type = optional(string)
cache_deception_armor = optional(string)
cache_key_fields = optional(list(object({
query_string = object({
exclude = optional(list(string), [])
include = optional(list(string), [])
ignore = optional(bool, false)
})
header = object({
exclude = optional(list(string), [])
include = optional(list(string), [])
check_presence = optional(list(string), [])
})
cookie = object({
include = optional(list(string), [])
check_presence = optional(list(string), [])
})
host = object({
resolved = optional(bool, false)
})
user = object({
lang = optional(bool, false)
device_type = optional(bool, false)
geo = optional(bool, false)
})
})), [])
cache_level = optional(string)
cache_ttl_by_status = optional(list(object({
codes = string
ttl = number
})), [])
email_obfuscation = optional(string)
explicit_cache_control = optional(string)
forwarding_url = optional(list(object({
status_code = string
url = string
})), [])
host_header_override = optional(string)
ip_geolocation = optional(string)
minify = optional(list(object({
html = string
css = string
js = string
})), [])
mirage = optional(string)
opportunistic_encryption = optional(string)
origin_error_page_pass_thru = optional(string)
polish = optional(string)
resolve_override = optional(string)
respect_strong_etag = optional(string)
response_buffering = optional(string)
rocket_loader = optional(string)
security_level = optional(string)
server_side_exclude = optional(string)
sort_query_string_for_cache = optional(string)
ssl = optional(string)
true_client_ip_header = optional(string)
waf = optional(string)
})
}))
Default: []
Name | Description |
---|---|
domain | Current zone information. |
page_rules | Created Cloudflare page rules for the current zone. |
Copyright (c) 2022 Flaconi GmbH