Files
a13labs.infra/terraform/modules/apps/mail/variables.tf
T
alexandre.pires e6a3f3affd Add custom error pages and Nginx configuration for proxy module
- Introduced custom HTML error pages for various HTTP status codes (400, 401, 403, 404, 408, 429, 500, 502, 503, 504) in the proxy module.
- Created a .gitignore file to exclude non-HTML files in the error resources directory.
- Updated Nginx configuration to serve custom error pages for upstream errors.
- Added new Nginx configuration templates for handling HTTP and stream protocols.
- Implemented Wireguard configuration templates and associated variables for secure connections.
- Established Kubernetes resources for Stunnel and Wireguard, including deployment, service accounts, and config maps.
- Defined variables for the Stunnel and Wireguard modules to facilitate configuration.
- Created a new Wol Proxy module with Kubernetes resources for deployment and service management.
2025-10-02 00:19:01 +02:00

107 lines
2.3 KiB
Terraform

variable "persistent_folder" {
description = "The path to the persistent folder"
type = string
}
variable "primary_domain" {
description = "The primary domain for the websites"
type = string
}
variable "email_accounts" {
description = "List of email accounts to be created"
type = list(object({
recipient = string
domain = string
username = string
password = string
delete_after = optional(number)
mailboxes = list(string)
receive = object({
server = string
port = number
})
}))
}
variable "relay_smtp_host" {
description = "The SMTP relay host"
type = string
}
variable "relay_smtp_port" {
description = "The SMTP relay port"
type = number
}
variable "relay_smtp_username" {
description = "The SMTP relay username"
type = string
sensitive = true
}
variable "relay_smtp_password" {
description = "The SMTP relay password"
type = string
sensitive = true
}
variable "fetch_emails_schedule" {
description = "The cron schedule for fetching emails"
type = string
}
variable "getmail_tag" {
description = "The version of getmail to install"
type = string
default = "v0.0.1-6.19.07"
}
variable "postfix_tag" {
description = "The version of postfix to install"
type = string
default = "alpine-316"
}
variable "dovecot_tag" {
description = "The version of dovecot to install"
type = string
default = "latest"
}
variable "mail_crypt_private_key" {
description = "The private key for mail encryption"
type = string
sensitive = true
}
variable "mail_crypt_public_key" {
description = "The public key for mail encryption"
type = string
sensitive = true
}
variable "issuer" {
description = "The issuer for the internal certificate"
type = string
default = "internal-ca"
}
variable "ca_pem" {
description = "The CA PEM certificate"
type = string
sensitive = true
}
variable "postfix_use_host_networking" {
description = "Whether to use host networking for the Postfix container"
type = bool
default = false
}
variable "dovecot_use_host_networking" {
description = "Whether to use host networking for the Dovecot container"
type = bool
default = false
}