mirror of
https://github.com/wahyd4/heygo.git
synced 2026-08-09 05:15:52 +10:00
junv.cc is reserved for k3s home services, not Cloudflare apps. Both dev and prod private hosts now live under heygo.cc, sharing the .heygo.cc cookie domain — no cross-domain auth issues.
68 lines
2.1 KiB
Terraform
68 lines
2.1 KiB
Terraform
variable "cloudflare_api_token" {
|
|
type = string
|
|
sensitive = true
|
|
description = "Cloudflare API token with D1, Workers KV, and Workers Custom Domains permissions. Export via the CLOUDFLARE_API_TOKEN env var instead of committing it."
|
|
}
|
|
|
|
variable "account_id" {
|
|
type = string
|
|
description = "Cloudflare account ID that owns the D1 databases, KV namespaces, and Workers."
|
|
}
|
|
|
|
variable "environment" {
|
|
type = string
|
|
description = "Deployment environment. Must be \"dev\" or \"prod\"."
|
|
validation {
|
|
condition = var.environment == "dev" || var.environment == "prod"
|
|
error_message = "environment must be either \"dev\" or \"prod\"."
|
|
}
|
|
}
|
|
|
|
variable "heygo_cc_zone_id" {
|
|
type = string
|
|
description = "Cloudflare zone ID for heygo.cc. The public shortlinks hostname always lives under this zone."
|
|
}
|
|
|
|
variable "private_domain_zone_id" {
|
|
type = string
|
|
description = "Zone ID where the private shortlinks hostname lives. Both prod (my.heygo.cc) and dev (my.dev.heygo.cc) are under heygo.cc, so this is the same as heygo_cc_zone_id."
|
|
}
|
|
|
|
variable "public_domain" {
|
|
type = string
|
|
description = "Public shortlinks hostname (e.g. heygo.cc or dev.heygo.cc)."
|
|
}
|
|
|
|
variable "private_domain" {
|
|
type = string
|
|
description = "Private shortlinks hostname (e.g. my.heygo.cc or my.dev.heygo.cc)."
|
|
}
|
|
|
|
variable "d1_database_name" {
|
|
type = string
|
|
description = "Name of the D1 database that stores short links and sessions."
|
|
}
|
|
|
|
variable "kv_namespace_title" {
|
|
type = string
|
|
description = "Title of the Workers KV namespace used for public link caching."
|
|
}
|
|
|
|
variable "worker_name" {
|
|
type = string
|
|
description = "Name of the Cloudflare Worker service that the custom domains route to."
|
|
}
|
|
|
|
variable "primary_location_hint" {
|
|
type = string
|
|
default = "wnam"
|
|
description = "Region hint for the D1 primary. One of wnam, enam, weur, eeur, apac, oc."
|
|
validation {
|
|
condition = contains(
|
|
["wnam", "enam", "weur", "eeur", "apac", "oc"],
|
|
var.primary_location_hint,
|
|
)
|
|
error_message = "primary_location_hint must be one of wnam, enam, weur, eeur, apac, oc."
|
|
}
|
|
}
|