Dockerfile.e2e: move "contrib" to a separate build-stage

Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
(cherry picked from commit 3ededb850f)
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
This commit is contained in:
Sebastiaan van Stijn 2019-04-19 16:26:10 +02:00
parent d36c7de19e
commit 7d3405b4ba
No known key found for this signature in database
GPG key ID: 76698F39D527CE8C

View file

@ -29,17 +29,20 @@ COPY hack/dockerfile/install/install.sh ./install.sh
COPY hack/dockerfile/install/$INSTALL_BINARY_NAME.installer ./ COPY hack/dockerfile/install/$INSTALL_BINARY_NAME.installer ./
RUN PREFIX=/build ./install.sh $INSTALL_BINARY_NAME RUN PREFIX=/build ./install.sh $INSTALL_BINARY_NAME
# Build DockerSuite.TestBuild* dependency
FROM base AS contrib
COPY contrib/syscall-test /build/syscall-test
COPY contrib/httpserver/Dockerfile /build/httpserver/Dockerfile
COPY contrib/httpserver contrib/httpserver
RUN CGO_ENABLED=0 go build -buildmode=pie -o /build/httpserver/httpserver github.com/docker/docker/contrib/httpserver
# Build the integration tests and copy the resulting binaries to /build/tests
FROM base AS builder FROM base AS builder
# Set tag and add sources # Set tag and add sources
ARG DOCKER_GITCOMMIT ARG DOCKER_GITCOMMIT
ENV DOCKER_GITCOMMIT=${DOCKER_GITCOMMIT:-undefined} ENV DOCKER_GITCOMMIT=${DOCKER_GITCOMMIT:-undefined}
COPY . . COPY . .
# Build DockerSuite.TestBuild* dependency
RUN CGO_ENABLED=0 go build -buildmode=pie -o /build/httpserver github.com/docker/docker/contrib/httpserver
# Build the integration tests and copy the resulting binaries to /build/tests
RUN hack/make.sh build-integration-test-binary RUN hack/make.sh build-integration-test-binary
RUN mkdir -p /build/tests && find . -name test.main -exec cp --parents '{}' /build/tests \; RUN mkdir -p /build/tests && find . -name test.main -exec cp --parents '{}' /build/tests \;
@ -67,13 +70,11 @@ RUN apk --no-cache add \
COPY hack/test/e2e-run.sh /scripts/run.sh COPY hack/test/e2e-run.sh /scripts/run.sh
COPY hack/make/.ensure-emptyfs /scripts/ensure-emptyfs.sh COPY hack/make/.ensure-emptyfs /scripts/ensure-emptyfs.sh
COPY contrib/httpserver/Dockerfile /tests/contrib/httpserver/Dockerfile
COPY contrib/syscall-test /tests/contrib/syscall-test
COPY integration/testdata /tests/integration/testdata COPY integration/testdata /tests/integration/testdata
COPY integration/build/testdata /tests/integration/build/testdata COPY integration/build/testdata /tests/integration/build/testdata
COPY integration-cli/fixtures /tests/integration-cli/fixtures COPY integration-cli/fixtures /tests/integration-cli/fixtures
COPY --from=frozen-images /build/ /docker-frozen-images COPY --from=frozen-images /build/ /docker-frozen-images
COPY --from=dockercli /build/ /usr/bin/ COPY --from=dockercli /build/ /usr/bin/
COPY --from=builder /build/httpserver /tests/contrib/httpserver/httpserver COPY --from=contrib /build/ /tests/contrib/
COPY --from=builder /build/tests /tests COPY --from=builder /build/tests /tests