Deploying in Cloud

CAS Backend services are deployed on Google Cloud Run using the shared GitHub Actions workflows and the deployment assets under deploy/.

Deployment Assets

  • deploy/docker/ contains service Dockerfiles

  • deploy/cloudrun/ contains flavor-specific Cloud Run sizing

  • deploy/scripts/ contains supporting deployment scripts

  • .github/actions/docker-build and .github/actions/docker-deploy contain the reusable CI/CD actions

Service Images

Current deployable service images:

  • compute: deploy/docker/Dockerfile.compute

  • admin: deploy/docker/Dockerfile.admin

Deployment Flow

  1. Export runtime dependencies into deploy/requirements.txt.lock with make requirements.

  2. Build and push the service image.

  3. Deploy the image to Cloud Run using the configured flavor, service account, VPC connector, SQL instance, and secret.

The repository GitHub workflows automate this flow for standard deployments.

Configuration

Cloud Run sizing and concurrency settings are selected from the JSON files in deploy/cloudrun/. Secrets are mounted into the container at /app/settings/.env.