# A configuration file for multi-arch image building with the Google cloud build service. # # Repos using this file must: # - import csi-release-tools # - add a symlink cloudbuild.yaml -> release-tools/cloudbuild.yaml # - add a .cloudbuild.sh which can be a custom file or a symlink # to release-tools/cloudbuild.sh # - accept "binary" as build argument in their Dockerfile(s) (see # https://github.com/pohly/node-driver-registrar/blob/3018101987b0bb6da2a2657de607174d6e3728f7/Dockerfile#L4-L6) # because binaries will get built for different architectures and then # get copied from the built host into the container image # # See https://github.com/kubernetes/test-infra/blob/master/config/jobs/image-pushing/README.md # for more details on image pushing process in Kubernetes. # # To promote release images, see https://github.com/kubernetes/k8s.io/tree/master/k8s.gcr.io/images/k8s-staging-sig-storage. # This must be specified in seconds. If omitted, defaults to 600s (10 mins). timeout: 1800s # This prevents errors if you don't use both _GIT_TAG and _PULL_BASE_REF, # or any new substitutions added in the future. options: substitution_option: ALLOW_LOOSE steps: # The image must contain bash and curl. Ideally it should also contain # the desired version of Go (currently defined in release-tools/travis.yml), # but that just speeds up the build and is not required. - name: 'gcr.io/k8s-testimages/gcb-docker-gcloud:v20200421-a2bf5f8' entrypoint: ./.cloudbuild.sh env: - GIT_TAG=${_GIT_TAG} - PULL_BASE_REF=${_PULL_BASE_REF} - REGISTRY_NAME=gcr.io/${_STAGING_PROJECT} - HOME=/root substitutions: # _GIT_TAG will be filled with a git-based tag for the image, of the form vYYYYMMDD-hash, and # can be used as a substitution. _GIT_TAG: '12345' # _PULL_BASE_REF will contain the ref that was pushed to trigger this build - # a branch like 'master' or 'release-0.2', or a tag like 'v0.2'. _PULL_BASE_REF: 'master' # The default gcr.io staging project for Kubernetes-CSI # (=> https://console.cloud.google.com/gcr/images/k8s-staging-sig-storage/GLOBAL). # Might be overridden in the Prow build job for a repo which wants # images elsewhere. _STAGING_PROJECT: 'k8s-staging-sig-storage'