Split single build-and-deploy job into 4 jobs: build-backend, build-worker, build-frontend run in parallel (all 3 independent), deploy job has needs:[...] on all three. Removes ~2 min of sequential build time on warm cache runs. Also: scope GHA cache keys per image (backend-lean / worker-chromium / frontend) so builds don't invalidate each other's layer cache. Replace sleep 8 health-check with a 30-iteration polling loop (fails fast on bad deploy, doesn't over-wait on fast ones). Add --mount=type=cache to frontend npm ci for node_modules cache across builds. |
||
|---|---|---|
| .. | ||
| public | ||
| src | ||
| .dockerignore | ||
| .env.example | ||
| .eslintrc.json | ||
| Dockerfile | ||
| next-env.d.ts | ||
| next.config.ts | ||
| package-lock.json | ||
| package.json | ||
| tsconfig.json | ||