Files
momentum-system/.dockerignore
T
Claude e91979a622 Add Kubernetes image + Helm package with in-cluster Postgres
Containerizes the momentum monolith and packages every run mode for
deployment in a single Kubernetes namespace, with PostgreSQL hosted in
the cluster.

- Dockerfile (python:3.11-slim, non-root, writable /app/data) + .dockerignore
- GitHub Actions workflow publishing to ghcr.io/fez5587/momentum-system
- Helm chart (deploy/helm/momentum):
  * PostgreSQL StatefulSet + PVC (single source of truth; schema
    auto-creates from storage/pg_schema.sql on first connect)
  * App Deployment running run_live_paper.py with the embedded dashboard
    (replicas: 1, Recreate; the dashboard's write endpoints need the
    in-process TradingExecutionService) + Service/Ingress on 8010, plus a
    wait-for-postgres initContainer
  * CronJobs for journal / eod-replay / nightly-tune (US/Eastern via
    spec.timeZone) sharing the app data PVC
  * ConfigMap (tuning env) + Secret (DATABASE_URL/broker keys, existingSecret
    supported); DATABASE_URL built from the in-cluster Postgres service
  * Optional Grafana provisioned against the in-cluster Postgres
- deploy/README.md with install, secrets, and constraints

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JCVMm2AbmZvvxwLTX6UpNR
2026-06-19 17:22:06 +00:00

49 lines
583 B
Plaintext

# VCS / CI
.git
.github
.gitignore
# Secrets and runtime data (never bake into the image; provided via Secret/PVC)
.env
.env.*
data/
*.duckdb
*.wal
# Local Grafana stack (provisioned via the Helm chart instead)
grafana/
# Deploy artifacts don't belong inside the app image
deploy/
Dockerfile
.dockerignore
# Python caches / build / venvs
__pycache__/
*.py[cod]
*.egg-info/
build/
dist/
.venv
venv/
ENV/
env/
.ruff_cache/
# Tests and coverage
tests/
.pytest_cache/
.coverage
htmlcov/
# Editor / OS cruft
.vscode/
.idea/
*.swp
.DS_Store
# Large artifacts
*.zip
archive/
uv.lock