Compare commits

..

3 Commits

Author SHA1 Message Date
f3bab24bd3 feat: enforced CI deployment healthcheck waiting (zero-downtime)
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 17s
Build & Deploy / 🏗️ Build (push) Failing after 1h24m30s
Nightly QA / 🔍 Static Analysis (push) Successful in 2m9s
Nightly QA / 🔗 Links & Deps (push) Successful in 2m45s
Nightly QA / 🎭 Lighthouse (push) Successful in 4m24s
Nightly QA / 📝 E2E (push) Successful in 5m13s
Nightly QA / 🔔 Notify (push) Has been skipped
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
2026-04-10 23:13:13 +02:00
3b668fc876 fix: correct standalone entrypoint - apps/web/server.js (v1.15.9)
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 39s
Build & Deploy / 🏗️ Build (push) Failing after 2h26m35s
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
2026-04-10 23:11:15 +02:00
2827239796 chore: OOM hardening - lower heap to 4GB, disable sourcemaps (v1.15.8)
All checks were successful
Build & Deploy / 🔍 Prepare (push) Successful in 15s
Build & Deploy / 🏗️ Build (push) Successful in 23m12s
Build & Deploy / 🚀 Deploy (push) Successful in 18s
Build & Deploy / 🔔 Notify (push) Successful in 2s
2026-04-10 14:26:19 +02:00
3 changed files with 13 additions and 4 deletions

View File

@@ -388,7 +388,7 @@ jobs:
docker volume create 'mintel-me_payload-db-data' || true
cd $SITE_DIR
docker compose -p '${{ needs.prepare.outputs.project_name }}' --env-file $ENV_FILE pull
docker compose -p '${{ needs.prepare.outputs.project_name }}' --env-file $ENV_FILE up -d --remove-orphans
docker compose -p '${{ needs.prepare.outputs.project_name }}' --env-file $ENV_FILE up -d --wait --remove-orphans
"
- name: 🧹 Purge S3 Cache

View File

@@ -31,6 +31,9 @@ ENV DATABASE_URI=$DATABASE_URI
ENV PAYLOAD_SECRET=$PAYLOAD_SECRET
ENV SKIP_RUNTIME_ENV_VALIDATION=true
ENV NEXT_BUILD_WORKERS=1
ENV NEXT_DISABLE_SOURCEMAPS=true
ENV SENTRY_SKIP_LOCAL_SOURCES=true
ENV NEXT_PRIVATE_LOCAL_WEBPACK=true
ENV CI=true
# Copy manifest files specifically for better layer caching
@@ -60,8 +63,8 @@ RUN echo "Building with ID: ${BUILD_ID}"
COPY . .
# Build application (monorepo filter)
ENV NODE_OPTIONS="--max_old_space_size=8192"
RUN pnpm --filter @mintel/web build
ENV NODE_OPTIONS="--max_old_space_size=4096"
RUN NEXT_BUILD_WORKERS=1 pnpm --filter @mintel/web build
# Stage 2: Runner
FROM git.infra.mintel.me/mmintel/runtime:latest AS runner
@@ -85,4 +88,4 @@ USER nextjs
# Start from the app directory to ensure references solve correctly
# In Standalone mode, Next.js expects node_modules and public relative to the server.js
WORKDIR /app
CMD ["node", "server.js"]
CMD ["node", "apps/web/server.js"]

View File

@@ -9,6 +9,12 @@ services:
- ${ENV_FILE:-.env}
labels:
- "traefik.enable=true"
healthcheck:
test: ["CMD-SHELL", "wget --no-verbose --tries=1 --spider http://127.0.0.1:3000/ || exit 1"]
interval: 10s
timeout: 5s
retries: 5
start_period: 20s
# HTTP ⇒ HTTPS redirect
- 'traefik.http.routers.${PROJECT_NAME}-web.rule=${TRAEFIK_HOST_RULE:-Host("${TRAEFIK_HOST:-mintel.localhost}")}'
- "traefik.http.routers.${PROJECT_NAME}-web.entrypoints=web"