@@ -66,10 +66,12 @@ RUN --mount=from=runc-src,src=/usr/src/runc,target=. --mount=target=/root/.cache
6666 file /usr/bin/runc | grep "statically linked"
6767
6868FROM gobuild-base AS buildkit-base
69- WORKDIR /go/src/github.com/moby/buildkit
69+ WORKDIR /src
70+ ENV GOFLAGS=-mod=vendor
7071
7172# scan the version/revision info
7273FROM buildkit-base AS buildkit-version
74+ # TODO: PKG should be inferred from go modules
7375RUN --mount=target=. \
7476 PKG=github.com/moby/buildkit VERSION=$(git describe --match 'v[0-9]*' --dirty='.m' --always --tags) REVISION=$(git rev-parse HEAD)$(if ! git diff --no-ext-diff --quiet --exit-code; then echo .m; fi); \
7577 echo "-X ${PKG}/version.Version=${VERSION} -X ${PKG}/version.Revision=${REVISION} -X ${PKG}/version.Package=${PKG}" | tee /tmp/.ldflags; \
@@ -80,6 +82,7 @@ FROM buildkit-base AS buildctl
8082ENV CGO_ENABLED=0
8183ARG TARGETPLATFORM
8284RUN --mount=target=. --mount=target=/root/.cache,type=cache \
85+ --mount=target=/go/pkg/mod,type=cache \
8386 --mount=source=/tmp/.ldflags,target=/tmp/.ldflags,from=buildkit-version \
8487 set -x; go build -ldflags "$(cat /tmp/.ldflags)" -o /usr/bin/buildctl ./cmd/buildctl && \
8588 file /usr/bin/buildctl && file /usr/bin/buildctl | egrep "statically linked|Mach-O|Windows"
@@ -89,6 +92,7 @@ FROM buildkit-base AS buildkitd
8992ENV CGO_ENABLED=1
9093ARG TARGETPLATFORM
9194RUN --mount=target=. --mount=target=/root/.cache,type=cache \
95+ --mount=target=/go/pkg/mod,type=cache \
9296 --mount=source=/tmp/.ldflags,target=/tmp/.ldflags,from=buildkit-version \
9397 go build -ldflags "$(cat /tmp/.ldflags) -w -extldflags -static" -tags 'osusergo seccomp netgo cgo static_build ' -o /usr/bin/buildkitd ./cmd/buildkitd && \
9498 file /usr/bin/buildkitd | grep "statically linked"
0 commit comments