cloudbuild-pr.yaml (18 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. # Builds the base part of Dockerfile on Cloud Build and pushes the result to GCR. steps: # Pull the latest version to speed up builds when only later layers have changed. # See https://cloud.google.com/build/docs/speeding-up-builds#using_a_cached_docker_image - name: 'gcr.io/cloud-builders/docker' args: [ 'pull', 'us-docker.pkg.dev/${PROJECT_ID}/cluster-provision-dev/cluster-provision-image:latest' ] allowFailure: true - name: 'gcr.io/cloud-builders/docker' args: [ 'build', '--tag', 'us-docker.pkg.dev/${PROJECT_ID}/cluster-provision-dev/cluster-provision-image:latest', '--cache-from', 'us-docker.pkg.dev/${PROJECT_ID}/cluster-provision-dev/cluster-provision-image:latest', '--file', 'Dockerfile', '.' ] - name: 'gcr.io/cloud-builders/docker' args: [ 'build', '--tag=test', '--target=test-pr', '.' ] - name: 'gcr.io/cloud-builders/docker' args: [ 'run', '--network=cloudbuild', 'test', "${PROJECT_ID}", "ci-${SHORT_SHA}" ] timeout: 900s