diff --git a/Dockerfile b/Dockerfile index 2d773a45..4c9139a4 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,6 +4,10 @@ FROM node:alpine AS builder WORKDIR /app ENV NEXT_TELEMETRY_DISABLED=1 +# Real release id supplied by CI (ci-deploy.sh) so next.config.ts skips git +# entirely (there is no .git in the build context). Defaults to "unknown". +ARG NEXT_DEPLOYMENT_ID="unknown" +ENV NEXT_DEPLOYMENT_ID="$NEXT_DEPLOYMENT_ID" # pnpm install is always pinned to the version in package.json's # `packageManager` field (pnpm auto-selects it on install), so this global # install only needs to exist as a bootstrap and follows the active major. diff --git a/scripts/ci-deploy.sh b/scripts/ci-deploy.sh index f2800063..9830330e 100644 --- a/scripts/ci-deploy.sh +++ b/scripts/ci-deploy.sh @@ -74,7 +74,8 @@ pnpm install --frozen-lockfile pnpm exec playwright install chromium echo "Building $image" -DOCKER_BUILDKIT=1 docker build --network=host --progress=plain --cache-from epicnext-cms:latest -t "$image" . +DOCKER_BUILDKIT=1 docker build --network=host --progress=plain --cache-from epicnext-cms:latest \ + --build-arg NEXT_DEPLOYMENT_ID="$sha" -t "$image" . check_current pnpm db:migrate check_current