Deploy to GCP
OGRRE production deployments use three pieces of Google Cloud infrastructure:
| Layer | Source | Purpose |
|---|---|---|
| Terraform | orphaned-wells-ui-server/deployment/terraform | Creates and manages backend cloud infrastructure, including GKE, upload buckets, static IPs, DNS records, and disabled-by-default legacy VM definitions. |
| Kubernetes on GKE | orphaned-wells-ui-server/deployment/kubernetes | Runs one backend workload per collaborator in the shared GKE cluster. |
| App Engine | orphaned-wells-ui/deployment/app-engine | Serves one frontend App Engine service per public collaborator deployment. |
The current backend deployment path is GKE. Terraform still preserves disabled-by-default legacy VM definitions for historical context, but the old VM nginx/Certbot runtime assets have been removed from the backend repo and are available only through Git history.
Standard deployment order
- Confirm the Google Cloud service accounts, MongoDB, and GitHub secrets prerequisites.
- Open a fork PR for Terraform infrastructure changes and pass credential-free checks and normal review. After merge to upstream
main, enabled CI plans the sharedogrreworkspace; plans with changes require approval, while no-change plans finish automatically. - Updated backend workflows read
kubernetes_deploy_targetslive after successful reconciliation. While automation is disabled for rollout, apply locally and refresh the fallbackK8S_DEPLOY_TARGETSsecret. - Deploy or update the backend on GKE.
- Deploy or update the frontend on App Engine.
- Configure DNS, App Engine custom domains, and OAuth entries for the frontend host.
- Verify the backend health endpoint, Kubernetes rollout, frontend App Engine service, and OAuth sign-in flow.
Common tasks
- Add a new collaborator deployment: Add Collaborator Deployment
- Manage infrastructure: Terraform Infrastructure
- Deploy backend services: Backend on GKE
- Deploy frontend services: Frontend on App Engine
- Configure repository credentials: GitHub Secrets and Variables
- Reference the old VM path: Legacy Backend VM Deployment