chore: prevent duplicate build of test container

This change removes the test-container step, and consolidates it to only a
test step. This prevents the build of the test container being done
twice.

Signed-off-by: Andrew Rynhard <andrew@andrewrynhard.com>
This commit is contained in:
Andrew Rynhard 2019-07-06 06:20:24 +00:00
parent c1ec77ef42
commit 50eb51938c
3 changed files with 15 additions and 31 deletions

View File

@ -90,20 +90,6 @@ steps:
depends_on: depends_on:
- lint - lint
- name: build-test
image: autonomy/build-container:latest
pull: always
environment:
BUILDKIT_HOST: tcp://buildkitd.ci.svc:1234
BINDIR: /usr/local/bin
commands:
- make test-container
volumes:
- name: dockersock
path: /var/run
depends_on:
- lint
- name: build-osctl-darwin - name: build-osctl-darwin
image: autonomy/build-container:latest image: autonomy/build-container:latest
pull: always pull: always
@ -184,7 +170,6 @@ steps:
- name: dockersock - name: dockersock
path: /var/run/ path: /var/run/
depends_on: depends_on:
- build-test
- build-osd - build-osd
- build-proxyd - build-proxyd

View File

@ -1,3 +1,5 @@
# syntax = docker/dockerfile:1.1-experimental
ARG KERNEL_IMAGE ARG KERNEL_IMAGE
ARG TOOLCHAIN_IMAGE ARG TOOLCHAIN_IMAGE
ARG ROOTFS_IMAGE ARG ROOTFS_IMAGE
@ -50,7 +52,7 @@ ARG SHA
ARG TAG ARG TAG
ARG VERSION_PKG="github.com/talos-systems/talos/internal/pkg/version" ARG VERSION_PKG="github.com/talos-systems/talos/internal/pkg/version"
WORKDIR /src/internal/app/osd WORKDIR /src/internal/app/osd
RUN go build -a -ldflags "-s -w -X ${VERSION_PKG}.Name=Server -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG}" -o /osd RUN --mount=type=cache,target=/root/.cache go build -a -ldflags "-s -w -X ${VERSION_PKG}.Name=Server -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG}" -o /osd
RUN chmod +x /osd RUN chmod +x /osd
FROM scratch AS osd FROM scratch AS osd
@ -64,7 +66,7 @@ ARG SHA
ARG TAG ARG TAG
ARG VERSION_PKG="github.com/talos-systems/talos/internal/pkg/version" ARG VERSION_PKG="github.com/talos-systems/talos/internal/pkg/version"
WORKDIR /src/cmd/osctl WORKDIR /src/cmd/osctl
RUN GOOS=linux GOARCH=amd64 go build -a -ldflags "-s -w -linkmode external -extldflags \"-static\" -X ${VERSION_PKG}.Name=Client -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG}" -o /osctl-linux-amd64 RUN --mount=type=cache,target=/root/.cache GOOS=linux GOARCH=amd64 go build -a -ldflags "-s -w -linkmode external -extldflags \"-static\" -X ${VERSION_PKG}.Name=Client -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG}" -o /osctl-linux-amd64
RUN chmod +x /osctl-linux-amd64 RUN chmod +x /osctl-linux-amd64
FROM scratch AS osctl-linux-amd64 FROM scratch AS osctl-linux-amd64
@ -75,7 +77,7 @@ ARG SHA
ARG TAG ARG TAG
ARG VERSION_PKG="github.com/talos-systems/talos/internal/pkg/version" ARG VERSION_PKG="github.com/talos-systems/talos/internal/pkg/version"
WORKDIR /src/cmd/osctl WORKDIR /src/cmd/osctl
RUN GOOS=darwin GOARCH=amd64 go build -a -ldflags "-s -w -X ${VERSION_PKG}.Name=Client -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG}" -o /osctl-darwin-amd64 RUN --mount=type=cache,target=/root/.cache GOOS=darwin GOARCH=amd64 go build -a -ldflags "-s -w -X ${VERSION_PKG}.Name=Client -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG}" -o /osctl-darwin-amd64
RUN chmod +x /osctl-darwin-amd64 RUN chmod +x /osctl-darwin-amd64
FROM scratch AS osctl-darwin-amd64 FROM scratch AS osctl-darwin-amd64
@ -88,7 +90,7 @@ ARG SHA
ARG TAG ARG TAG
ARG VERSION_PKG="github.com/talos-systems/talos/internal/pkg/version" ARG VERSION_PKG="github.com/talos-systems/talos/internal/pkg/version"
WORKDIR /src/internal/app/trustd WORKDIR /src/internal/app/trustd
RUN go build -a -ldflags "-s -w -X ${VERSION_PKG}.Name=Server -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG}" -o /trustd RUN --mount=type=cache,target=/root/.cache go build -a -ldflags "-s -w -X ${VERSION_PKG}.Name=Server -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG}" -o /trustd
RUN chmod +x /trustd RUN chmod +x /trustd
FROM scratch AS trustd FROM scratch AS trustd
@ -102,7 +104,7 @@ ARG SHA
ARG TAG ARG TAG
ARG VERSION_PKG="github.com/talos-systems/talos/internal/pkg/version" ARG VERSION_PKG="github.com/talos-systems/talos/internal/pkg/version"
WORKDIR /src/internal/app/proxyd WORKDIR /src/internal/app/proxyd
RUN go build -a -ldflags "-s -w -X ${VERSION_PKG}.Name=Server -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG}" -o /proxyd RUN --mount=type=cache,target=/root/.cache go build -a -ldflags "-s -w -X ${VERSION_PKG}.Name=Server -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG}" -o /proxyd
RUN chmod +x /proxyd RUN chmod +x /proxyd
FROM scratch AS proxyd FROM scratch AS proxyd
@ -116,7 +118,7 @@ ARG SHA
ARG TAG ARG TAG
ARG VERSION_PKG="github.com/talos-systems/talos/internal/pkg/version" ARG VERSION_PKG="github.com/talos-systems/talos/internal/pkg/version"
WORKDIR /src/internal/app/ntpd WORKDIR /src/internal/app/ntpd
RUN go build -a -ldflags "-s -w -X ${VERSION_PKG}.Name=Server -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG}" -o /ntpd RUN --mount=type=cache,target=/root/.cache go build -a -ldflags "-s -w -X ${VERSION_PKG}.Name=Server -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG}" -o /ntpd
RUN chmod +x /ntpd RUN chmod +x /ntpd
FROM scratch AS ntpd FROM scratch AS ntpd
@ -150,7 +152,7 @@ ARG SHA
ARG TAG ARG TAG
ARG VERSION_PKG="github.com/talos-systems/talos/internal/pkg/version" ARG VERSION_PKG="github.com/talos-systems/talos/internal/pkg/version"
WORKDIR /src/internal/app/init WORKDIR /src/internal/app/init
RUN go build -a -ldflags "-s -w -X ${VERSION_PKG}.Name=Talos -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG}" -o /init RUN --mount=type=cache,target=/root/.cache go build -a -ldflags "-s -w -X ${VERSION_PKG}.Name=Talos -X ${VERSION_PKG}.SHA=${SHA} -X ${VERSION_PKG}.Tag=${TAG}" -o /init
RUN chmod +x /init RUN chmod +x /init
FROM scratch AS init FROM scratch AS init

View File

@ -210,20 +210,17 @@ basic-integration:
e2e-integration: e2e-integration:
@KUBERNETES_VERSION=v1.15.0 ./hack/test/$@.sh @KUBERNETES_VERSION=v1.15.0 ./hack/test/$@.sh
.PHONY: test-container .PHONY: test
test-container: buildkitd test: buildkitd
@mkdir -p build @mkdir -p build
@$(BINDIR)/buildctl --addr $(BUILDKIT_HOST) \ @$(BINDIR)/buildctl --addr $(BUILDKIT_HOST) \
build \ build \
--output type=docker,dest=/tmp/test.tar,name=docker.io/autonomy/test:$(TAG) \ --output type=docker,dest=/tmp/$@.tar,name=docker.io/autonomy/$@:$(TAG) \
--opt target=test \ --opt target=$@ \
$(COMMON_ARGS) $(COMMON_ARGS)
@docker load < /tmp/test.tar @docker load < /tmp/$@.tar
.PHONY: test
test: buildkitd test-container
@trap "rm -rf ./.artifacts" EXIT; mkdir -p ./.artifacts && \ @trap "rm -rf ./.artifacts" EXIT; mkdir -p ./.artifacts && \
docker run -i --rm $(DOCKER_TEST_ARGS) -v $(PWD)/.artifacts:/src/artifacts autonomy/$@:$(TAG) /bin/test.sh && \ docker run -i --rm $(DOCKER_TEST_ARGS) -v $(PWD)/.artifacts:/src/artifacts autonomy/$@:$(TAG) /bin/$@.sh && \
cp ./.artifacts/coverage.txt coverage.txt cp ./.artifacts/coverage.txt coverage.txt
.PHONY: dev-test .PHONY: dev-test