Skip to content

Commit

Permalink
Merge pull request #670 from wongma7/release-0.8-cloudbuild
Browse files Browse the repository at this point in the history
release-0.8: Use buildx in cloudbuild
  • Loading branch information
k8s-ci-robot authored Jan 4, 2021
2 parents ac47252 + 0f151f6 commit 213ea34
Show file tree
Hide file tree
Showing 2 changed files with 69 additions and 19 deletions.
28 changes: 9 additions & 19 deletions cloudbuild.yaml
Original file line number Diff line number Diff line change
@@ -1,21 +1,11 @@
timeout: 1200s
steps:
- name: gcr.io/cloud-builders/docker
args:
- build
- --tag=gcr.io/k8s-staging-provider-aws/aws-ebs-csi-driver:$_GIT_TAG
- --tag=gcr.io/k8s-staging-provider-aws/aws-ebs-csi-driver:latest
- --target=debian-base
- .
- name: gcr.io/cloud-builders/docker
args:
- build
- --tag=gcr.io/k8s-staging-provider-aws/aws-ebs-csi-driver:$_GIT_TAG-amazonlinux
- --tag=gcr.io/k8s-staging-provider-aws/aws-ebs-csi-driver:latest-amazonlinux
- --target=amazonlinux
- .
images:
- "gcr.io/k8s-staging-provider-aws/aws-ebs-csi-driver:$_GIT_TAG"
- "gcr.io/k8s-staging-provider-aws/aws-ebs-csi-driver:latest"
- "gcr.io/k8s-staging-provider-aws/aws-ebs-csi-driver:$_GIT_TAG-amazonlinux"
- "gcr.io/k8s-staging-provider-aws/aws-ebs-csi-driver:latest-amazonlinux"
- name: gcr.io/k8s-testimages/gcb-docker-gcloud:v20200421-a2bf5f8
entrypoint: ./hack/prow.sh
env:
- GIT_TAG=${_GIT_TAG}
- PULL_BASE_REF=${_PULL_BASE_REF}
- REGISTRY_NAME=gcr.io/${_STAGING_PROJECT}
- HOME=/root
substitutions:
_STAGING_PROJECT: "k8s-staging-provider-aws"
60 changes: 60 additions & 0 deletions hack/prow.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
#!/bin/bash

# Copyright 2019 The Kubernetes Authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

set -euxo pipefail

loudecho() {
echo "###"
echo "## ${1}"
echo "#"
}

loudecho "Register gcloud as a Docker credential helper."
# Required for "docker buildx build --push".
# See https://github.com/kubernetes-csi/csi-release-tools/blob/master/prow.sh#L1243
gcloud auth configure-docker

loudecho "Set up Docker Buildx"
# See https://github.com/docker/setup-buildx-action
# and https://github.com/kubernetes-csi/csi-release-tools/blob/master/build.make#L132
DOCKER_CLI_EXPERIMENTAL=enabled
export DOCKER_CLI_EXPERIMENTAL
trap "docker buildx rm multiarchimage-buildertest" EXIT
docker buildx create --use --name multiarchimage-buildertest

loudecho "Set up QEMU"
# See https://github.com/docker/setup-qemu-action
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes

loudecho "Build and push debian target"
docker buildx build \
--tag="${REGISTRY_NAME}"/aws-ebs-csi-driver:"${GIT_TAG}" \
--tag="${REGISTRY_NAME}"/aws-ebs-csi-driver:latest \
--platform=linux/arm64,linux/amd64 \
--progress=plain \
--push=true \
--target=debian-base \
.

loudecho "Build and push amazonlinux target"
docker buildx build \
--tag="${REGISTRY_NAME}"/aws-ebs-csi-driver:"${GIT_TAG}"-amazonlinux \
--tag="${REGISTRY_NAME}"/aws-ebs-csi-driver:latest-amazonlinux \
--platform=linux/arm64,linux/amd64 \
--progress=plain \
--push=true \
--target=amazonlinux \
.

0 comments on commit 213ea34

Please sign in to comment.