Files
0pt/docs/runbook/deploy.md
T

38 lines
1.6 KiB
Markdown

# Runbook: Deploy — 0pt
> Mål: sätta 0pt.app på SIAX-flottan (Coolify) och avveckla Vercel i ordning.
> Status 2026-08-10: `siax.config.json` deklarerar `target: coolify`; ingen
> Coolify-app provisionerad; live-instansen körs fortfarande på Vercel.
## 1. Förutsättningar (blockerare för cutover)
- [ ] Coolify-app provisionerad i `cloud.siax.io` (build_pack: dockerfile,
repo `git.siax.io/sax3l/0pt`, gren `main`).
- [ ] `COOLIFY_APP_ID` (appens UUID) ifylld i `.gitea/workflows/cd.yml`.
- [ ] `COOLIFY_TOKEN`-secret satt på repot (Gitea → Settings → Actions → Secrets).
- [ ] Env-secrets inlagda i Coolify-appen från Infisical-projektet `0pt`
(se backup/restore + incident runbooks).
- [ ] DNS-cutover planerad: `0pt.app` → Coolify-appens ingress (eller Caddy).
## 2. Deploy (när appen finns)
1. Push till `main` → `.gitea/workflows/cd.yml` POSTar till
`https://cloud.siax.io/api/v1/deploy?uuid=$COOLIFY_APP_ID&force=false`.
2. Följ run i Gitea Actions; verifiera att den slutar grön.
3. Verifiera hälsa: `curl https://0pt.app/api/health` → `ok:true` och
`db: configured` (när Postgres kopplats in).
## 3. Manuell redeploy (nöd)
```bash
curl -fsS -X POST "https://cloud.siax.io/api/v1/deploy?uuid=<UUID>&force=true" \
-H "Authorization: Bearer $COOLIFY_TOKEN"
```
## 4. Vercel-avveckling (EFFER att Coolify kör stabilt)
1. Verifiera att ingen verklig trafik/data ligger bakom (2026-08-10:
`/api/health` visar `db/queue: not_configured` — marknads-/dev-läge).
2. Peka DNS om till Coolify. 3. Behåll Vercel-projektet tills certifierad
paritet (katalog, orderflöde, betalningar). 4. Avveckla först därefter.