diff --git a/dev.Dockerfile b/dev.Dockerfile index 8e9e909..75514e9 100644 --- a/dev.Dockerfile +++ b/dev.Dockerfile @@ -1,8 +1,6 @@ # syntax=docker/dockerfile:1 ARG NODE_VERSION=20 -ARG DOCKER_VERSION=20.10.13 -ARG BUILDX_VERSION=0.8.1 FROM node:${NODE_VERSION}-alpine AS base RUN apk add --no-cache cpio findutils git @@ -18,14 +16,14 @@ COPY --from=deps /vendor / FROM deps AS vendor-validate RUN --mount=type=bind,target=.,rw <&2 'ERROR: Vendor result differs. Please vendor your package with "docker buildx bake vendor-update"' - git status --porcelain -- yarn.lock - exit 1 -fi + set -e + git add -A + cp -rf /vendor/* . + if [ -n "$(git status --porcelain -- yarn.lock)" ]; then + echo >&2 'ERROR: Vendor result differs. Please vendor your package with "docker buildx bake vendor-update"' + git status --porcelain -- yarn.lock + exit 1 + fi EOT FROM deps AS build @@ -38,14 +36,14 @@ COPY --from=build /out / FROM build AS build-validate RUN --mount=type=bind,target=.,rw <&2 'ERROR: Build result differs. Please build first with "docker buildx bake build"' - git status --porcelain -- dist - exit 1 -fi + set -e + git add -A + cp -rf /out/* . + if [ -n "$(git status --porcelain -- dist)" ]; then + echo >&2 'ERROR: Build result differs. Please build first with "docker buildx bake build"' + git status --porcelain -- dist + exit 1 + fi EOT FROM deps AS format @@ -62,16 +60,11 @@ RUN --mount=type=bind,target=.,rw \ --mount=type=cache,target=/src/node_modules \ yarn run lint -FROM docker:${DOCKER_VERSION} as docker -FROM docker/buildx-bin:${BUILDX_VERSION} as buildx - FROM deps AS test ENV RUNNER_TEMP=/tmp/github_runner ENV RUNNER_TOOL_CACHE=/tmp/github_tool_cache RUN --mount=type=bind,target=.,rw \ --mount=type=cache,target=/src/node_modules \ - --mount=type=bind,from=docker,source=/usr/local/bin/docker,target=/usr/bin/docker \ - --mount=type=bind,from=buildx,source=/buildx,target=/usr/libexec/docker/cli-plugins/docker-buildx \ yarn run test --coverage --coverageDirectory=/tmp/coverage FROM scratch AS test-coverage