Skip to main content

Deploy to GCP

OGRRE production deployments use three pieces of Google Cloud infrastructure:

LayerSourcePurpose
Terraformorphaned-wells-ui-server/deployment/terraformCreates and manages backend cloud infrastructure, including GKE, upload buckets, static IPs, DNS records, and disabled-by-default legacy VM definitions.
Kubernetes on GKEorphaned-wells-ui-server/deployment/kubernetesRuns one backend workload per collaborator in the shared GKE cluster.
App Engineorphaned-wells-ui/deployment/app-engineServes one frontend App Engine service per public collaborator deployment.

The current backend deployment path is GKE. The older Compute Engine VM path is preserved for existing VM operations and rollback context, but it is not the normal path for new backend deployments.

Standard deployment order

  1. Confirm the Google Cloud, MongoDB, and GitHub secrets prerequisites.
  2. Use Terraform infrastructure from the shared ogrre remote-state workspace to create or update the GKE cluster, backend upload buckets, static IPs, DNS records, and deployment target outputs.
  3. Export kubernetes_deploy_targets from Terraform and store it as the backend repository secret K8S_DEPLOY_TARGETS.
  4. Deploy or update the backend on GKE.
  5. Deploy or update the frontend on App Engine.
  6. Configure DNS, App Engine custom domains, and OAuth entries for the frontend host.
  7. Verify the backend health endpoint, Kubernetes rollout, frontend App Engine service, and OAuth sign-in flow.

Common tasks