Files
OpenFrontIO/cloudbuild.yaml
T
2024-10-02 19:55:07 -07:00

39 lines
1.3 KiB
YAML

steps:
# Build the Docker image
- name: 'gcr.io/cloud-builders/docker'
args: ['build', '-t', 'us-central1-docker.pkg.dev/$PROJECT_ID/openfrontio/game-server:$TAG_NAME', '.']
# Push the image to Artifact Registry
- name: 'gcr.io/cloud-builders/docker'
args: ['push', 'us-central1-docker.pkg.dev/$PROJECT_ID/openfrontio/game-server:$TAG_NAME']
# Prune Docker system on the instance
- name: 'gcr.io/cloud-builders/gcloud'
entrypoint: 'bash'
args:
- '-c'
- |
gcloud compute ssh ${_INSTANCE_NAME} --zone us-central1-a --command 'docker system prune -f -a'
gcloud compute ssh ${_INSTANCE_NAME} --zone us-central1-a --command 'docker kill $(docker ps -q)'
gcloud compute ssh ${_INSTANCE_NAME} --zone us-central1-a --command 'docker rmi $(docker images -q) -f'
# Update the GCE instance with the new container image
- name: 'gcr.io/cloud-builders/gcloud'
args:
- 'compute'
- 'instances'
- 'update-container'
- '${_INSTANCE_NAME}'
- '--container-image'
- 'us-central1-docker.pkg.dev/$PROJECT_ID/openfrontio/game-server:$TAG_NAME'
- '--zone=us-central1-a'
substitutions:
_INSTANCE_NAME: 'openfrontio-dev-instance'
TAG_NAME: 'dev'
options:
substitutionOption: 'ALLOW_LOOSE'
images:
- 'us-central1-docker.pkg.dev/$PROJECT_ID/openfrontio/game-server:$TAG_NAME'