From f6c24872256a9943709b0f0584fd1a598c9d256e Mon Sep 17 00:00:00 2001 From: Patrick Van Stee Date: Sun, 6 Jan 2019 06:48:03 -0500 Subject: [PATCH] Isolate generated files for easier copying Signed-off-by: Patrick Van Stee --- .../generated-files.buildkit.Dockerfile | 2 +- hack/update-generated-files | 14 +++++--------- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/hack/dockerfiles/generated-files.buildkit.Dockerfile b/hack/dockerfiles/generated-files.buildkit.Dockerfile index 69e4cea52046..229a5a663dc8 100644 --- a/hack/dockerfiles/generated-files.buildkit.Dockerfile +++ b/hack/dockerfiles/generated-files.buildkit.Dockerfile @@ -31,7 +31,7 @@ RUN --mount=target=/tmp/src \ git ls-files -m --others -- **/*.pb.go | tar -cf - --files-from - | tar -C /generated-files -xf - FROM scratch AS update -COPY --from=generated generated-files / +COPY --from=generated /generated-files /generated-files FROM gobuild-base AS validate RUN --mount=target=/tmp/src \ diff --git a/hack/update-generated-files b/hack/update-generated-files index df25e793b5ce..95fa75f1347d 100755 --- a/hack/update-generated-files +++ b/hack/update-generated-files @@ -11,11 +11,14 @@ if [ "$CONTINUOUS_INTEGRATION" == "true" ]; then progressFlag="--progress=plain" gogo_version=$(awk '$1 == "github.com/gogo/protobuf" { print $2 }' vendor.conf) case $buildmode in "buildkit") + output=$(mktemp -d -t buildctl-output.XXXXXXXXXX) buildctl build $progressFlag --frontend=dockerfile.v0 --local context=. --local dockerfile=. \ --frontend-opt build-arg:GOGO_VERSION=$gogo_version \ --frontend-opt target=update \ --frontend-opt filename=./hack/dockerfiles/generated-files.buildkit.Dockerfile \ - --exporter=local --exporter-opt output=. + --exporter=local --exporter-opt output=$output + cp -R "$output/generated-files/" . + rm -rf $output ;; *) iidfile=$(mktemp -t docker-iidfile.XXXXXXXXXX) @@ -31,14 +34,7 @@ case $buildmode in iid=$(cat $iidfile) cid=$(docker create $iid noop) - case $buildmode in - "docker-buildkit") - docker export $cid | tar -xf - - ;; - *) - docker export $cid | tar -xf - --strip-components=1 generated-files - ;; - esac + docker export $cid | tar -xf - --strip-components=1 generated-files docker rm $cid