Files
homelab/k8s/applications/temporal/temporal-values.yaml
T

97 lines
2.7 KiB
YAML
Raw Normal View History

# k8s/temporal/temporal-values.yaml
# Temporal — workflow engine
# Uses external CNPG PostgreSQL for persistence (ddb-cluster)
# Visibility via same PostgreSQL database
# ── Disable embedded databases ────
postgresql:
enabled: false
cassandra:
enabled: true
persistence:
enabled: false
image:
repo: cassandra
tag: 3.11.3
config:
cluster_size: 1
ports:
cql: 9042
service:
type: ClusterIP
elasticsearch:
enabled: false
# ── Disable schema auto-setup ─────
jobs:
autoSetup:
enabled: false
# ── Temporal server config (PostgreSQL persistence) ──────────────────────────────
server:
replicaCount: 1
jobService:
enabled: false
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 100
podAffinityTerm:
labelSelector:
matchLabels:
app.kubernetes.io/instance: temporal
topologyKey: kubernetes.io/hostname
config:
logLevel: "info"
persistence:
defaultStore: default
visibilityStore: visibility
numHistoryShards: 512
datastores:
default:
# PostgreSQL for workflow history and events
driver: sql
sql:
driver: postgres12
host: ddb-cluster-rw.ddb.svc.cluster.local
port: 5432
database: temporal
user: temporal
password: ""
maxConns: 20
maxIdleConns: 10
maxConnLifetime: "1h"
connectAttributes:
tx_isolation: "READ-COMMITTED"
visibility:
# PostgreSQL for visibility store (workflow queries)
driver: sql
sql:
driver: postgres12
host: ddb-cluster-rw.ddb.svc.cluster.local
port: 5432
database: temporal_visibility
user: temporal
password: ""
maxConns: 20
maxIdleConns: 10
maxConnLifetime: "1h"
service:
type: ClusterIP
# ── Temporal Web UI ────────────────────────────────────────────────────────
web:
replicaCount: 1
service:
type: ClusterIP
# ── Ingress ────────────────────────────────────────────────────────
ingress:
enabled: false
# ── Monitoring ────────────────────────────────────────────────────────
prometheus:
enabled: false