-
Notifications
You must be signed in to change notification settings - Fork 104
/
Copy pathcloudbuild_app_dart_deploy.yaml
42 lines (38 loc) · 1.41 KB
/
cloudbuild_app_dart_deploy.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
# Provide instructions for google Cloud Build to auto-build flutter
# dashboard to flutter-dashboard project. Auto-build will be triggered
# by daily schedule on `main` branch.
#
# The auto-build will be skipped if no new commits since last deployment.
steps:
# Get recently pushed docker image and associated provenance, along with the
# correct docker digest url, including the hash.
- name: gcr.io/cloud-builders/gcloud
entrypoint: '/bin/bash'
args:
- '-c'
- |-
cloud_build/get_docker_image_provenance.sh \
us-docker.pkg.dev/$PROJECT_ID/appengine/default.version-$SHORT_SHA:latest \
unverified_provenance.json
# Verify provenance is valid before proceeding with deployment.
# This name is a dockerhub tag
- name: 'golang:1.21.12-bookworm'
entrypoint: '/bin/bash'
args:
- '-c'
- |-
cloud_build/verify_provenance.sh unverified_provenance.json
# Deploy a new version to google cloud.
- name: gcr.io/cloud-builders/gcloud
entrypoint: '/bin/bash'
args:
- '-c'
- |-
gcloud config set project $PROJECT_ID
latest_version=$(gcloud app versions list --hide-no-traffic --format 'value(version.id)')
if [ "$latest_version" = "version-$SHORT_SHA" ]; then
echo "No updates since last deployment."
else
bash cloud_build/deploy_app_dart.sh $PROJECT_ID $SHORT_SHA
fi
timeout: 1200s