Skip to content

Deployment

Deployments are automated, traceable, and reversible. GitHub Actions builds immutable Docker images; Coolify promotes the configured image; Cloudflare and AWS provide edge and platform services as documented by each project.

Delivery flow

flowchart LR
 A[PR] --> B[Lint, typecheck, tests]
 B --> C[Merge to main]
 C --> D[Build signed/immutable image]
 D --> E[Deploy via Coolify]
 E --> F[Smoke test + monitoring]
 F --> G[Announce outcome]

Before deployment

  • [ ] CI is green and the PR is approved.
  • [ ] Database migrations are backward compatible, tested on representative data, and have a rollback plan.
  • [ ] Required secrets are present in the deployment environment, never in the repository.
  • [ ] Feature flags and configuration changes have an owner and removal date.
  • [ ] Dashboards, alerts, and logs can confirm the expected behavior.

After deployment

  • [ ] Check health endpoint, key user path, error rate, and logs.
  • [ ] Verify map data loads at expected coordinates and zoom ranges.
  • [ ] Confirm background jobs, webhooks, and migrations if relevant.
  • [ ] Update the PR and issue with verification evidence.

Rollback

  1. Stop further promotion and tell the project channel what is affected.
  2. Roll back to the last known-good immutable image or release in Coolify.
  3. Disable the feature flag or mitigate traffic at Cloudflare if that reduces impact.
  4. Do not roll back destructive data migrations blindly; use the documented recovery plan.
  5. Verify recovery, record the incident timeline, and create follow-up issues.

Documentation deployment

This handbook publishes to GitHub Pages on every successful push to main. The workflow uses the repository’s Pages settings and requires no long-lived deployment token.