fix: beta stage uses paper DB to resolve permission denied errors

Beta was pointing at stonks_beta DB where tables were owned by postgres
superuser, causing permission denied for the stonks app user. Switch to
sharing stonks_paper DB/user (already has proper grants). DEPLOY_STAGE=beta
still isolates Redis keys and MinIO buckets. Added market data API key
so beta can test ingestion when pipeline is toggled ON.
This commit is contained in:
Celes Renata
2026-04-21 04:57:29 +00:00
parent cfe4a92987
commit 9275351279
+10 -4
View File
@@ -19,6 +19,9 @@ services:
replicas: 1 replicas: 1
## Beta-specific config overrides ## Beta-specific config overrides
## Beta shares the paper DB — DEPLOY_STAGE=beta isolates Redis keys
## (stonks:beta:*) and MinIO buckets (beta-stonks-*). Pipeline defaults
## to OFF so beta won't write conflicting data unless explicitly enabled.
config: config:
DEPLOY_STAGE: "beta" DEPLOY_STAGE: "beta"
LOG_LEVEL: "DEBUG" LOG_LEVEL: "DEBUG"
@@ -28,19 +31,22 @@ config:
# Use same infra services (shared postgres/redis/minio) # Use same infra services (shared postgres/redis/minio)
POSTGRES_HOST: "postgresql-rw.postgresql-service.svc.cluster.local" POSTGRES_HOST: "postgresql-rw.postgresql-service.svc.cluster.local"
POSTGRES_PORT: "5432" POSTGRES_PORT: "5432"
POSTGRES_DB: "stonks_beta" POSTGRES_DB: "stonks_paper"
POSTGRES_USER: "stonks" POSTGRES_USER: "stonks_paper"
REDIS_HOST: "redis-master.redis-service.svc.cluster.local" REDIS_HOST: "redis-master.redis-service.svc.cluster.local"
REDIS_PORT: "6379" REDIS_PORT: "6379"
REDIS_DB: "1" REDIS_DB: "1"
MINIO_ENDPOINT: "minio.minio-service.svc.cluster.local:80" MINIO_ENDPOINT: "minio.minio-service.svc.cluster.local:80"
MINIO_SECURE: "false" MINIO_SECURE: "false"
BROKER_MODE: "paper" BROKER_MODE: "paper"
BROKER_PROVIDER: "alpaca"
OLLAMA_BASE_URL: "http://10.1.1.12:2701" OLLAMA_BASE_URL: "http://10.1.1.12:2701"
MARKET_DATA_BASE_URL: "https://api.polygon.io" MARKET_DATA_BASE_URL: "https://api.polygon.io"
PIPELINE_DEFAULT_OFF: "true" PIPELINE_DEFAULT_OFF: "true"
## Blank out all secrets so beta never talks to external APIs ## Secrets — same credentials as paper for DB/infra access.
## Broker keys blank (TRADING_ENABLED=false), market key provided
## so beta can test ingestion when pipeline is flipped ON.
secrets: secrets:
core: core:
POSTGRES_PASSWORD: "St0nks0racl3!" POSTGRES_PASSWORD: "St0nks0racl3!"
@@ -52,7 +58,7 @@ secrets:
BROKER_API_SECRET: "" BROKER_API_SECRET: ""
BROKER_BASE_URL: "" BROKER_BASE_URL: ""
market: market:
MARKET_DATA_API_KEY: "" MARKET_DATA_API_KEY: "NPwKtrLvoBxcKt3Byp5PEvuZiBZU_d8E"
## Beta ingress — separate hostnames so beta doesn't conflict with prod ## Beta ingress — separate hostnames so beta doesn't conflict with prod
ingress: ingress: