# Sample persistence configuration for StellaOps (replace placeholders per environment) Persistence: Authority: Postgres Scheduler: Postgres Concelier: Postgres Excititor: Postgres Notify: Postgres Policy: Postgres Postgres: ConnectionString: "Host=${PGHOST:-postgres-staging.internal};Port=${PGPORT:-5432};Database=stellaops;Username=${PGUSER:-stellaops_app};Password=${PGPASSWORD};Pooling=true;MinPoolSize=5;MaxPoolSize=20;ConnectionIdleLifetime=300;CommandTimeout=30;SSL Mode=Require" CommandTimeoutSeconds: 30 ConnectionTimeoutSeconds: 15 # Optional per-module overrides (override ConnectionString if schemas live in separate DBs) PostgresModules: Authority: "Host=${AUTH_PGHOST:-postgres-staging.internal};Port=5432;Database=stellaops;Username=${AUTH_PGUSER:-stellaops_app};Password=${AUTH_PGPASSWORD}" Scheduler: "Host=${SCHED_PGHOST:-postgres-staging.internal};Port=5432;Database=stellaops;Username=${SCHED_PGUSER:-stellaops_app};Password=${SCHED_PGPASSWORD}" Concelier: "Host=${CONC_PGHOST:-postgres-staging.internal};Port=5432;Database=stellaops;Username=${CONC_PGUSER:-stellaops_app};Password=${CONC_PGPASSWORD}" Excititor: "Host=${EXC_PGHOST:-postgres-staging.internal};Port=5432;Database=stellaops;Username=${EXC_PGUSER:-stellaops_app};Password=${EXC_PGPASSWORD}" Notify: "Host=${NOTIFY_PGHOST:-postgres-staging.internal};Port=5432;Database=stellaops;Username=${NOTIFY_PGUSER:-stellaops_app};Password=${NOTIFY_PGPASSWORD}" Policy: "Host=${POLICY_PGHOST:-postgres-staging.internal};Port=5432;Database=stellaops;Username=${POLICY_PGUSER:-stellaops_app};Password=${POLICY_PGPASSWORD}" # Migration policy (see MIGRATION_STRATEGY.md) Migrations: FailOnPendingRelease: true LockTimeoutSeconds: 120 # Example validation toggles Validation: RequirePersistenceOption: true RequireConnectionString: true