From 93f614d79b958a2e33b3c81be3df880ff2bb5a88 Mon Sep 17 00:00:00 2001 From: Sigurd Meldgaard Date: Tue, 28 Oct 2025 14:28:55 +0000 Subject: [PATCH 1/2] Add build.yaml file for the image proxy --- tool/build_image_proxy.yaml | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 tool/build_image_proxy.yaml diff --git a/tool/build_image_proxy.yaml b/tool/build_image_proxy.yaml new file mode 100644 index 0000000000..29a9488908 --- /dev/null +++ b/tool/build_image_proxy.yaml @@ -0,0 +1,29 @@ +# Configuration for Google Cloud Build +# +# Triggers in the project kicks off a cloud build task based on the +# configuration in this file. Permissions granted to this task is configured +# by granting permissions to the service account: +# @cloudbuild.gserviceaccount.com +# +# Reference: https://cloud.google.com/cloud-build/docs/build-config +steps: + - name: 'gcr.io/cloud-builders/docker' + script: | + #!/usr/bin/env bash + set -x + if [[ "$PROJECT_ID" != dartlang-pub ]]; then + echo 'Only deploy from the dartlang-pub project' + exit 1; + fi + if [[ "$TAG_NAME" != image_proxy-* ]]; then + echo 'This script is only intended for use on image_proxy- tags' + exit 1; + fi + docker build -t us-central1-docker.pkg.dev/$PROJECT_ID/image-proxy-server:$TAG_NAME . --file pkg/image_proxy/Dockerfile + env: + - 'PROJECT_ID=$PROJECT_ID' + - 'BRANCH_NAME=$BRANCH_NAME' + - 'TAG_NAME=$TAG_NAME' +images: + - 'us-central1-docker.pkg.dev/$PROJECT_ID/image-proxy-server:$TAG_NAME' +timeout: '5400s' From c4f7f4976654d3751161da74b2423e9f4dbb718c Mon Sep 17 00:00:00 2001 From: Sigurd Meldgaard Date: Tue, 11 Nov 2025 12:05:39 +0000 Subject: [PATCH 2/2] Also deploy from build file --- tool/build_image_proxy.yaml | 25 ++++++++++++++++++++++--- 1 file changed, 22 insertions(+), 3 deletions(-) diff --git a/tool/build_image_proxy.yaml b/tool/build_image_proxy.yaml index 29a9488908..57f55c7f1e 100644 --- a/tool/build_image_proxy.yaml +++ b/tool/build_image_proxy.yaml @@ -11,7 +11,7 @@ steps: script: | #!/usr/bin/env bash set -x - if [[ "$PROJECT_ID" != dartlang-pub ]]; then + if [[ "$PROJECT_ID" != dartlang-pub && "$PROJECT_ID" != dartlang-pub-dev]]; then echo 'Only deploy from the dartlang-pub project' exit 1; fi @@ -20,10 +20,29 @@ steps: exit 1; fi docker build -t us-central1-docker.pkg.dev/$PROJECT_ID/image-proxy-server:$TAG_NAME . --file pkg/image_proxy/Dockerfile + docker push us-central1-docker.pkg.dev/$PROJECT_ID/image-proxy-server:$TAG_NAME env: - 'PROJECT_ID=$PROJECT_ID' - 'BRANCH_NAME=$BRANCH_NAME' - 'TAG_NAME=$TAG_NAME' -images: - - 'us-central1-docker.pkg.dev/$PROJECT_ID/image-proxy-server:$TAG_NAME' + - name: 'gcr.io/google-cloud-sdk' + script: | + #!/usr/bin/env bash + set -x + if [[ "$PROJECT_ID" != dartlang-pub ]]; then + echo 'Only deploy from the dartlang-pub project' + exit 1; + fi + if [[ "$TAG_NAME" != image_proxy-* ]]; then + echo 'This script is only intended for use on image_proxy- tags' + exit 1; + fi + gcloud run deploy image-proxy-server \ + --image="us-central1-docker.pkg.dev/$PROJECT_ID/image-proxy-server:$TAG_NAME" \ + --region="us-central1" \ + --platform="managed" \ + --quiet + env: + - 'PROJECT_ID=$PROJECT_ID' + - 'TAG_NAME=$TAG_NAME' timeout: '5400s'