apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: gitea-gke namespace: argocd annotations: # Apply to the Legion Argo CD instance after registering the GKE cluster. # See vault-gke.yaml for the cluster registration steps. # # Migration checklist (Gitea from Legion to GKE): # 1. terraform apply (creates GKE cluster, Cloud SQL gitea DB, secrets) # 2. Register GKE cluster with Legion Argo CD (see vault-gke.yaml) # 3. Install ESO on GKE: helm install external-secrets external-secrets/external-secrets # --namespace external-secrets --create-namespace # 4. Apply this Application to Legion Argo CD # 5. Verify gitea pod is running on GKE with DB connectivity # 6. Take a tar of /data from the Legion Gitea pod and restore to GKE PVC # 7. Update Cloudflare Tunnel on Legion: remove git.neuralplatform.ai route # 8. Add GKE ingress / GCP LB rule for git.neuralplatform.ai # 9. Decommission Gitea on Legion (remove gitea*.yaml from servers/legion/apps/) spec: project: default source: repoURL: http://gitea.git.svc.cluster.local:3000/will/infrastructure.git targetRevision: main path: servers/gcp/k8s/gitea destination: # Replace GKE_CLUSTER_ENDPOINT after `terraform apply`: # terraform -chdir=servers/gcp output -raw gke_cluster_endpoint server: https://34.63.89.52 namespace: gitea syncPolicy: automated: prune: true selfHeal: true syncOptions: - CreateNamespace=true - ServerSideApply=true