6 Commits

Author SHA1 Message Date
Henrik Jess Nielsen
7feff0589f MMD
All checks were successful
Build and Deploy MoneyMaker / build-and-deploy (push) Successful in 15m12s
2026-05-27 22:02:43 +02:00
Henrik Jess Nielsen
0d57c9eee5 fix: switch to Consul KV template for secrets injection
All checks were successful
Build and Deploy MoneyMaker / build-and-deploy (push) Successful in 15m28s
- Consul now running on int node (joined cluster)
- provider=consul re-enabled (int has consul.version=1.22.7)
- Removed sed placeholder approach + Gitea secrets requirement
- Added template{} stanzas reading from consul kv mmd/* keys
- Cleaned up deploy.yml (removed sed substitution step)
2026-05-27 15:16:00 +02:00
Henrik Jess Nielsen
1e5e1074e2 fix(deploy): use provider=nomad to avoid Consul version constraint on int node
All checks were successful
Build and Deploy MoneyMaker / build-and-deploy (push) Successful in 15m33s
provider=consul auto-injects attr.consul.version >= 1.8.0 constraint which
filters out int (old Consul). provider=nomad uses native Nomad service
discovery — Traefik still picks up tags via Nomad catalog.
2026-05-27 11:00:20 +02:00
Henrik Jess Nielsen
d9362d25fd fix(deploy): revert to sed+Gitea secrets (int node Consul too old for template stanza)
Some checks failed
Build and Deploy MoneyMaker / build-and-deploy (push) Has been cancelled
Consul template requires >= 1.8.0 on allocation node; int has older version.
Gitea secrets injected via sed at deploy time — no secrets in git.
2026-05-27 09:56:38 +02:00
Henrik Jess Nielsen
044cafecc1 feat(deploy): use Consul KV for secrets via template stanza
Some checks failed
Build and Deploy MoneyMaker / build-and-deploy (push) Has been cancelled
- Remove sed substitution from pipeline (no more __PLACEHOLDER__ pattern)
- Nomad template{} reads mmd/* keys from Consul KV at allocation time
- Secrets never touch git or pipeline logs
- Remove Gitea secrets dependency for app secrets (only HARBOR_ROBOT_TOKEN needed)
2026-05-27 00:07:32 +02:00
Henrik Jess Nielsen
6f1ee72e10 feat: containerize for mmd.i80.dk deployment via Gitea/Nomad
Some checks failed
Build and Deploy MoneyMaker / build-and-deploy (push) Failing after 15s
- Add Dockerfile (python:3.12-slim, HF_HOME=/app/data/hf-cache)
- Add mmd.nomad (multi-task: web=dashboard, worker=scheduler)
- Add .gitea/workflows/deploy.yml (build->Harbor, deploy->Nomad)
- Add scheduler.py (stdlib scheduler replaces cron in container)
- Add requirements.txt
- dashboard.py: LOG_DIR + PORT/HOST from env vars
- saxo_auth.py: TOKEN_FILE from SAXO_TOKEN_FILE env var
- .gitignore: proper ignores for container project

Volume moneymaker-data (/app/data) holds:
  - logs/ (shared between web+worker)
  - .saxo_token.json (pre-copy once after first deploy)
  - hf-cache/ (HuggingFace FinBERT cache)

Gitea secrets required: DATABASE_URL, ANTHROPIC_API_KEY,
SAXO_APP_KEY, SAXO_APP_SECRET_1, HARBOR_ROBOT_TOKEN
2026-05-26 22:30:38 +02:00