Skip to content

Build and Push DCaaS to Artifact Registry #20

Build and Push DCaaS to Artifact Registry

Build and Push DCaaS to Artifact Registry #20

Workflow file for this run

name: Build and Push DCaaS to Artifact Registry
on:
workflow_dispatch:
defaults:
run:
shell: bash
env:
PROJECT_ID: 'workfromhome-467300'
PROJECT_NUMBER: 185351738358
REGION: us-east1
REPO: dcaas-docker-repo
jobs:
build-and-push:
runs-on: ubuntu-latest
permissions:
contents: 'read'
id-token: 'write' # Required for workload identify federation.
steps:
- uses: actions/checkout@v4
- id: 'auth'
name: 'Authenticate with Google Cloud'
uses: google-github-actions/auth@v3
with:
workload_identity_provider: ${{ secrets.WORKLOAD_IDENTITY_PROVIDER }}
service_account: ${{ secrets.SERVICE_ACCOUNT_EMAIL }}
- uses: google-github-actions/setup-gcloud@v2
# Configure Docker to authenticate to Artifact Registry
- name: 'Docker Auth with Artifact Registry'
run: gcloud auth configure-docker ${REGION}-docker.pkg.dev --quiet
- name: 'Build and push Docker container for manager service'
run: |
DOCKER_TAG="${REGION}-docker.pkg.dev/${PROJECT_ID}/${REPO}/manager-service:${GITHUB_SHA}"
docker build \
--tag "${DOCKER_TAG}" \
--build-arg GITHUB_SHA="${GITHUB_SHA}" \
--build-arg GITHUB_REF="${GITHUB_REF}" \
--file ./deploy/Dockerfile.manager \
.
docker push "${DOCKER_TAG}"
- name: 'Build and push Docker container for worker service'
run: |
DOCKER_TAG="${Registry}/${PROJECT_ID}/${REPO}/worker-service:${GITHUB_SHA}"
docker build \
--tag "${DOCKER_TAG}" \
--build-arg GITHUB_SHA="${GITHUB_SHA}" \
--build-arg GITHUB_REF="${GITHUB_REF}" \
--file ./deploy/Dockerfile.worker \
.
docker push "${DOCKER_TAG}"