provisioning-catalog/components/stalwart/nickel/defaults.ncl

82 lines
2.5 KiB
Text
Raw Normal View History

let _presets = (import "schemas/lib/concerns_presets.ncl").presets in
{
stalwart | default = {
name | default = "stalwart",
version | default = "0.16.0",
image | default = "ghcr.io/stalwartlabs/stalwart:v0.16.0",
namespace | default = "mail",
hostname | default = "mail.example.com",
domain | default = "example.com",
data_dir | default = "/var/lib/stalwart",
node | default = "",
lb_ipam_ip | default = "",
tls_secret | default = "stalwart-tls",
cluster_issuer | default = "letsencrypt-prod",
storage_class | default = "hcloud-volumes",
mode | default = 'cluster,
smtp_port | default = 25,
smtps_port | default = 465,
submission_port | default = 587,
imaps_port | default = 993,
http_port | default = 8080,
relay = {
host | default = "",
port | default = 587,
tls | default = true,
name | default = "ses",
},
requires | default = {
storage = { size = "20Gi", persistent = true },
ports = [
{ port = 25, exposure = 'public },
{ port = 465, exposure = 'public },
{ port = 587, exposure = 'public },
{ port = 993, exposure = 'public },
{ port = 8080, exposure = 'internal },
],
credentials = ["RELAY_USERNAME", "RELAY_PASSWORD", "ADMIN_PASSWORD"],
},
provides | default = {
service = "stalwart",
ports = [25, 465, 587, 993],
endpoints = [],
},
operations | default = {
install = true,
update = true,
delete = true,
backup = true,
restore = true,
health = true,
config = true,
restart = true,
},
# ServiceConcerns default — Stalwart mail server; tls_endpoint_with_acme preset.
concerns | default = (_presets.tls_endpoint_with_acme {
tls_secret = "stalwart-tls",
cluster_issuer = "letsencrypt-prod",
hostnames = [],
dns_internal = [],
dns_zone = "",
acme_server = "https://acme-v02.api.letsencrypt.org/directory",
acme_email = "",
cert_secret_ref = "",
cert_provider = 'cloudflare,
backup_backlog_ref = "BACKUP-STALWART-001",
}) & {
backup | force = {
kind = 'pending,
reason = "BackupPolicy declared at workspace level (mail data + DB; per-domain or per-mailbox scopes)",
backlog_ref = "BACKUP-STALWART-001",
},
},
},
}