diff --git a/k8s/argocd/apps/30-security.yaml b/k8s/argocd/apps/30-security.yaml index 1e78989..c57fc99 100644 --- a/k8s/argocd/apps/30-security.yaml +++ b/k8s/argocd/apps/30-security.yaml @@ -79,7 +79,49 @@ spec: prune: true selfHeal: true --- -# Forgejo runner (local chart). Forgejo itself is Phase 0 (bootstrap). +# Forgejo itself. Was a bootstrap Helm release (phase 3) until it was brought +# under Argo, because values changes there were inert — a proxy-body-size fix +# sat committed while the live Ingress kept nginx's 1m default and rejected +# every OCI push with 413. +# +# Wave 3: after databases (wave 2) — Forgejo needs CNPG and Redis up first. +# +# Retiring the Helm release: Argo adopts the existing objects on first sync. +# Delete the release secrets afterwards so helm stops claiming ownership: +# kubectl -n cicd delete secret -l owner=helm,name=forgejo +# +# automated sync is deliberately absent. This chart owns the Forgejo PVC and +# the git forge itself; the first sync is manual so its diff can be read before +# anything is applied. Turn on automated+selfHeal once that diff is clean. +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: forgejo + namespace: argocd + annotations: + argocd.argoproj.io/sync-wave: "3" +spec: + project: homelab + sources: + - repoURL: https://dl.gitea.com/charts/ + chart: gitea + targetRevision: 12.7.0 + helm: + valueFiles: + - $values/k8s/bootstrap/phase3-forgejo/forgejo-values.yaml + - repoURL: https://github.com/Riotpiaole/riotpiao.homelab.com.git + targetRevision: main + ref: values + destination: + server: https://kubernetes.default.svc + namespace: cicd + syncPolicy: + syncOptions: + # Adopt the objects the bootstrap Helm release already created rather + # than failing on "already exists". + - ServerSideApply=true +--- +# Forgejo runner (local chart). apiVersion: argoproj.io/v1alpha1 kind: Application metadata: