Deployment

How Ethica ships changes across develop and production. For where each layer runs (Netlify, DigitalOcean, SaaS), see Architecture — Deployment.

Environments

EnvironmentPurpose
DevelopIntegration and pre-production work.
ProductionLive users.

Frontends (staff ERP, customer portal, onboarding, admin, documentation): one Netlify site per app per environment—each app has separate Netlify sites for develop and production.

API (ethica-api): deploy to the develop stack first, then production, following the branch flow below.

Branching and CI/CD

  • Day-to-day: push to develop for the API and all frontends.
  • Production: merge into main (including via PR merge). CI/CD deploys automatically when main is updated—no manual deploy step is required beyond merging.

Deploy order

  1. API first — deploy the NestJS API before any frontend that depends on it.
  2. Database — the API uses automatic schema sync (dbSync with alter: true). There are no hand-written migration runs in this workflow: the application applies schema changes on startup. Coordinate API releases accordingly when schema changes are involved.
  3. Frontends — after the API deployment for that environment is complete, deploy the Netlify sites.

Approval

  • Today: verbal approval before merging to main (small team).
  • Future: if the team grows, adopt ticket-based approval before production merges—update this page when that policy is in place.

Verification

Post-deploy checks (smoke tests, synthetic monitors) are not standardized yet. Add a short checklist here when you define them.