# Copy to deploy/replicas.env on the publisher host (gitignored — holds passwords). # # One DSN per line (or comma). Do not put spaces between URLs. # Prefer URI form. Password must not contain @ : / # ? — or URL-encode it. # Keyword form (host=...) is OK only because the script splits on newlines, not spaces. # The user must be able to run ALTER TABLE + ALTER SUBSCRIPTION + TRUNCATE on each replica. REPLICA_DSNS="postgresql://USER:PASSWORD@SLAVE_1_IP:5433/superadmin postgresql://USER:PASSWORD@SLAVE_2_IP:5432/superadmin" # Read-only app user on replicas (program-settings API). Grants re-applied after data repair. # REPLICA_APP_DB_USER=montime # Publisher DB for pg_dump / count checks. Required when DATABASE_URL password has @ # (Prisma tolerates it; libpq URI parsing breaks → host "Montime@127.0.0.1"). # Use postgres superuser on localhost; URL-encode special chars (@ → %40). # PUBLISHER_DSN="postgresql://postgres:PASS@127.0.0.1:5432/superadmin"