build.yaml (41 lines of code) (raw):

# Copyright 2022 Google LLC # # 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 # # https://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. steps: - name: 'gcr.io/cloud-builders/docker' id: 'multiarch-init' args: - buildx - create - '--name=multiarch-builder' - '--driver=docker-container' - '--driver-opt' - 'network=cloudbuild' - '--use' - name: 'gcr.io/cloud-builders/docker' id: 'qemu-user-static' waitFor: ['multiarch-init'] args: - run - '--rm' - '--privileged' - 'multiarch/qemu-user-static' - '--reset' - '-p' - 'yes' - name: 'gcr.io/cloud-builders/docker' id: 'build-push-$_IMAGE-image' waitFor: ['qemu-user-static'] args: - buildx - build - '-f' - 'cmd/$_IMAGE/Dockerfile' - '.' - '--platform' - 'linux/arm64,linux/amd64' - '-t' - '$_IMAGE_REGISTRY/$_IMAGE:$TAG_NAME' - '--push' timeout: 1200s options: env: - DOCKER_CLI_EXPERIMENTAL=enabled machineType: 'E2_HIGHCPU_8'