From 43bd2f4cdb4780006055f7ff915cc5a7cf86ba52 Mon Sep 17 00:00:00 2001 From: Donny Xia Date: Fri, 9 Oct 2020 14:35:17 -0700 Subject: [PATCH] files for building image when release kustomize --- .dockerignore | 8 +++++ kustomize.Dockerfile | 18 ++++++++++ releasing/cloudbuild_kustomize_image.yaml | 44 +++++++++++++++++++++++ 3 files changed, 70 insertions(+) create mode 100644 .dockerignore create mode 100644 kustomize.Dockerfile create mode 100644 releasing/cloudbuild_kustomize_image.yaml diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 000000000..7b797142b --- /dev/null +++ b/.dockerignore @@ -0,0 +1,8 @@ +.github +docs +examples +functions +hack +site +travis +*.md diff --git a/kustomize.Dockerfile b/kustomize.Dockerfile new file mode 100644 index 000000000..f6f6a2d4e --- /dev/null +++ b/kustomize.Dockerfile @@ -0,0 +1,18 @@ +# build +FROM golang:alpine as builder +ARG VERSION +ARG COMMIT +ARG DATE +RUN mkdir /build +ADD . /build/ +WORKDIR /build/kustomize +RUN CGO_ENABLED=0 GO111MODULE=on go build \ + -ldflags="-s -X sigs.k8s.io/kustomize/api/provenance.version=${VERSION} \ + -X sigs.k8s.io/kustomize/api/provenance.gitCommit=${COMMIT} \ + -X sigs.k8s.io/kustomize/api/provenance.buildDate=${DATE}" + +# only copy binary +FROM alpine +COPY --from=builder /build/kustomize /app/ +WORKDIR /app +ENTRYPOINT ["./kustomize"] diff --git a/releasing/cloudbuild_kustomize_image.yaml b/releasing/cloudbuild_kustomize_image.yaml new file mode 100644 index 000000000..a31a93e82 --- /dev/null +++ b/releasing/cloudbuild_kustomize_image.yaml @@ -0,0 +1,44 @@ +# This cloud build job is only used to build kustomize docker image and push +# it to gcr.io repo. +steps: + - name: "bash" + args: + - "echo" + - "Cloud build substitution check: " + - "BUILD_ID=$BUILD_ID" + - "PROJECT_ID=$PROJECT_ID" + - "REVISION_ID=$REVISION_ID" + - "REPO_NAME=$REPO_NAME" + - "COMMIT_SHA=$COMMIT_SHA" + - "BRANCH_NAME=$BRANCH_NAME" + - "TAG_NAME=$TAG_NAME" + +# We need to use bash to configure the build date properly. + - name: "gcr.io/cloud-builders/docker" + entrypoint: /bin/bash + args: + - -c + - > + docker + build + -t + gcr.io/$PROJECT_ID/$_MODULE_NAME:$_MODULE_VERSION + -t + gcr.io/$PROJECT_ID/$_MODULE_NAME:latest + -f + kustomize.Dockerfile + --build-arg + VERSION=$TAG_NAME + --build-arg + COMMIT=$COMMIT_SHA + --build-arg + DATE=`date -u +%FT%TZ` + . + +images: + - "gcr.io/$PROJECT_ID/$_MODULE_NAME:$_MODULE_VERSION" + - "gcr.io/$PROJECT_ID/$_MODULE_NAME:latest" + +substitutions: + _MODULE_NAME: ${TAG_NAME%/*} + _MODULE_VERSION: ${TAG_NAME#*/}