From ce28a91ccade956d6a4aa0d298b60e28c37b9d21 Mon Sep 17 00:00:00 2001 From: Sebastiaan van Stijn Date: Mon, 14 Oct 2019 13:34:28 +0200 Subject: [PATCH] make buildx: fix variable substitution and version The variables were not substituted, because single-quotes were used. While at it; change the fixed version/commit to use the actual commit and version, using git. before this change: make buildx && ./bundles/buildx version github.com/docker/buildx ${BUILDX_COMMIT} ${BUILDX_COMMIT} after this change: make buildx && ./bundles/buildx version buildx v0.3.0 c967f1d Signed-off-by: Sebastiaan van Stijn --- Dockerfile.buildx | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/Dockerfile.buildx b/Dockerfile.buildx index b4c5a391e7..5495e9ff55 100644 --- a/Dockerfile.buildx +++ b/Dockerfile.buildx @@ -10,5 +10,12 @@ ARG GOOS ARG GOARCH # Keep these essentially no-op var settings for debug purposes. # It allows us to see what the GOOS/GOARCH that's being built for is. -RUN GOOS=${GOOS} GOARCH=${GOARCH} go build -ldflags '-X github.com/docker/buildx/version.Version=${BUILDX_COMMIT} -X github.com/docker/buildx/version.Revision=${BUILDX_COMMIT} -X github.com/docker/buildx/version.Package=github.com/docker/buildx' -o /usr/bin/buildx ./cmd/buildx -ENTRYPOINT ["/usr/bin/buildx"] \ No newline at end of file +RUN GOOS="${GOOS}" GOARCH="${GOARCH}" BUILDX_COMMIT="${BUILDX_COMMIT}"; \ + pkg="github.com/docker/buildx"; \ + ldflags="\ + -X \"${pkg}/version.Version=$(git describe --tags)\" \ + -X \"${pkg}/version.Revision=$(git rev-parse --short HEAD)\" \ + -X \"${pkg}/version.Package=buildx\" \ + "; \ + go build -ldflags "${ldflags}" -o /usr/bin/buildx ./cmd/buildx +ENTRYPOINT ["/usr/bin/buildx"]