fix(cert-manager): render issuers via kustomization resources list, restore automated sync — directory.include with bare filenames rendered empty (never matched), so ArgoCD tracked 0 resources and prune wiped the CA ConfigMaps + ClusterIssuers

This commit is contained in:
Story Crater Bot
2026-08-12 13:30:46 -07:00
parent f53d54cba9
commit fa239972a7
2 changed files with 19 additions and 6 deletions
+8 -6
View File
@@ -88,17 +88,19 @@ spec:
source: source:
repoURL: [email protected]:Riotpiaole/riotpiao.homelab.com.git repoURL: [email protected]:Riotpiaole/riotpiao.homelab.com.git
targetRevision: main targetRevision: main
# A real kustomization.yaml (resources: the 3 issuer/CA files) renders these
# deterministically. The previous directory.include with bare filenames
# rendered EMPTY — ArgoCD's include glob never matched — so this app silently
# tracked 0 resources; its ConfigMaps/Issuers only existed from bootstrap
# kubectl apply, and an automated prune wiped them.
path: k8s/bootstrap/cert-manager path: k8s/bootstrap/cert-manager
directory:
include: "letsencrypt-issuer.yaml,homelab-ca-issuer.yaml,homelab-ca-configmap.yaml"
destination: destination:
server: https://kubernetes.default.svc server: https://kubernetes.default.svc
namespace: cert-manager namespace: cert-manager
syncPolicy: syncPolicy:
# automated sync intentionally disabled: ArgoCD directory.include renders automated:
# this app's resources as EMPTY (root cause under investigation), so an prune: true
# automated prune wipes the ClusterIssuers + homelab-ca ConfigMaps. Keep selfHeal: true
# manual until the render is fixed, then restore prune/selfHeal.
syncOptions: syncOptions:
- CreateNamespace=true - CreateNamespace=true
--- ---
@@ -0,0 +1,11 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
# Issuers + CA trust-bundle ConfigMaps for the cert-manager-issuers Application.
# Each resource sets its own metadata.namespace (the ConfigMaps target iam/cicd/
# monitoring/sqs; ClusterIssuers are cluster-scoped) — so NO namespace transformer
# here (that would rewrite them all into one namespace). cert-manager itself is a
# separate Helm Application; cert-manager-values.yaml here is only its $values ref.
resources:
- letsencrypt-issuer.yaml
- homelab-ca-issuer.yaml
- homelab-ca-configmap.yaml