test branch ships the integration
environment; production is promoted from there.
Branches → environments
| Branch | Environment | Trigger |
|---|---|---|
test | test.earthcare.network | Push to test → Railway (backend) + Vercel (frontend) auto-deploy |
main | earthcare.network | Promote test → main |
CI gates
Every push runs CI (.github/workflows/ci.yml):
- Backend — run migrations, check migrations are committed
(
makemigrations --check), and runpytest. - Frontend —
npm run build. - Staging smoke (on
testpushes) —scripts/qa-test-staging.shruns health, config, and page checks against the deployed test site with retries.
The docs site itself deploys via Mintlify’s GitHub app from
docs-site/ to
docs.earthcare.network — independent of the app’s Railway/Vercel pipeline.