From a764bf70081b87daa5bb8e5736db3494968b8532 Mon Sep 17 00:00:00 2001 From: Anne Schuth Date: Sun, 17 May 2026 14:49:31 +0200 Subject: [PATCH 1/7] fix(argocd): beperk productie-Applications met restrictief AppProject MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit De twee productie-Applications (production-infrastructure en user-applications) draaiden in het ingebouwde 'default' AppProject met prune + selfHeal. 'default' staat sourceRepos '*', destinations '*' en clusterResourceWhitelist '*' toe. Gevolg: iedereen die naar 'main' van een van de twee GitHub-bronrepo's kan pushen krijgt willekeurige cluster-brede objecten (inclusief ClusterRoleBindings) automatisch toegepast én self-healed. Dat is een volledige overname van het productiecluster via een git-push. Wijziging: - Nieuw AppProject 'rig-platform' met sourceRepos gepind op exact de twee legitieme repo-URL's, destinations gepind op de in-cluster API server plus uitsluitend rig-prd-operations en rig-system, en een conservatieve clusterResourceWhitelist. - Beide Applications van project 'default' naar 'rig-platform' verplaatst. - AppProject toegevoegd aan de odcn-production kustomization. Vooraf bestaand en onafhankelijk van andere wijzigingen. --- ...application-production-infrastructure.yaml | 2 +- .../argocd-application-user-applications.yaml | 2 +- .../argocd-appproject-rig-platform.yaml | 73 +++++++++++++++++++ .../odcn-production/kustomization.yaml | 1 + 4 files changed, 76 insertions(+), 2 deletions(-) create mode 100644 bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml diff --git a/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-application-production-infrastructure.yaml b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-application-production-infrastructure.yaml index e7219a6b..755885e5 100644 --- a/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-application-production-infrastructure.yaml +++ b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-application-production-infrastructure.yaml @@ -7,7 +7,7 @@ metadata: # annotations: # argocd.argoproj.io/sync-wave: "1" # Deploy before user applications spec: - project: default + project: rig-platform source: repoURL: https://infrastructure@github.com/RijksICTGilde/RIG-Cluster.git path: infrastructure/bootstrap/clusters/odcn diff --git a/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-application-user-applications.yaml b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-application-user-applications.yaml index ea5eb119..efabe960 100644 --- a/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-application-user-applications.yaml +++ b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-application-user-applications.yaml @@ -6,7 +6,7 @@ metadata: annotations: argocd.argoproj.io/sync-wave: "2" # Deploy after infrastructure spec: - project: default + project: rig-platform sources: - repoURL: https://user-applications@github.com/RijksICTGilde/argo-applications.git path: odcn-production diff --git a/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml new file mode 100644 index 00000000..79df1fef --- /dev/null +++ b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml @@ -0,0 +1,73 @@ +# AppProject - beperkt wat de productie-Applications mogen synchroniseren. +# +# Zonder dit project draaien de Applications in het ingebouwde 'default' +# project, dat sourceRepos '*', destinations '*' en +# clusterResourceWhitelist '*' toestaat. Iedereen die naar 'main' van een +# van de bronrepo's kan pushen krijgt daarmee willekeurige cluster-brede +# objecten (incl. ClusterRoleBindings) automatisch toegepast en self-healed. +# +# Dit project pint: +# - sourceRepos op exact de twee legitieme repo-URL's (geen wildcard) +# - destinations op de in-cluster API server en uitsluitend de namespaces +# waar deze apps daadwerkelijk naartoe deployen +# - clusterResourceWhitelist op de minimale set cluster-brede kinds die de +# infrastructuur-sync aantoonbaar nodig heeft +# +# LET OP: delen van de infrastructuur-overlay zijn SOPS-versleuteld, waardoor +# niet elke namespace/kind statisch te enumereren is. De whitelist hieronder +# is bewust conservatief. Een te strakke whitelist breekt de productie-GitOps. +# Een 'kustomize build' van de odcn-production overlay EN een ArgoCD dry-run +# (beide Applications moeten onder dit project blijven syncen) zijn VERPLICHTE +# pre-merge checks op staging. Zie de PR-omschrijving. +apiVersion: argoproj.io/v1alpha1 +kind: AppProject +metadata: + name: rig-platform + namespace: rig-system + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + description: >- + Beperkt project voor de productie-Applications (infrastructuur en + user-applications). Vervangt het ongebonden 'default' project. + + # Exact de twee bronrepo's. Geen wildcard - dit sluit de supply-chain + # takeover via een willekeurige andere repo uit. + sourceRepos: + - https://infrastructure@github.com/RijksICTGilde/RIG-Cluster.git + - https://user-applications@github.com/RijksICTGilde/argo-applications.git + + # Alleen de in-cluster API server en de namespaces waar deze apps + # legitiem naartoe deployen. Beide Applications zetten destination.namespace + # op rig-prd-operations; de infrastructuur-overlay plaatst daarnaast + # resources in rig-system. Geen '*'. + destinations: + - server: https://kubernetes.default.svc + namespace: rig-prd-operations + - server: https://kubernetes.default.svc + namespace: rig-system + + # Cluster-brede kinds: de infrastructuur-sync maakt aantoonbaar een + # ClusterRole + ClusterRoleBinding aan (external-dns) en kan Namespaces + # aanmaken. Bewust géén '*'. Als de SOPS-versleutelde overlays meer + # cluster-brede kinds blijken te bevatten faalt de sync zichtbaar op + # staging - dat is het pre-merge validatiemoment, niet productie. + clusterResourceWhitelist: + - group: "" + kind: Namespace + - group: rbac.authorization.k8s.io + kind: ClusterRole + - group: rbac.authorization.k8s.io + kind: ClusterRoleBinding + + # Namespaced resources blijven breed toegestaan: de blast radius is al + # ingeperkt door de destination-namespace-pinning hierboven. Een te + # strakke namespaced-whitelist zou de platform-sync stilletjes breken + # zonder extra beveiligingswinst bovenop de namespace-pinning. + namespaceResourceWhitelist: + - group: "*" + kind: "*" + + # Geen orphaned-resource-acties; alleen waarschuwen. + orphanedResources: + warn: false diff --git a/bootstrap/rig-system/kustomize/overlays/odcn-production/kustomization.yaml b/bootstrap/rig-system/kustomize/overlays/odcn-production/kustomization.yaml index a0af0ddf..6a9c16c2 100644 --- a/bootstrap/rig-system/kustomize/overlays/odcn-production/kustomization.yaml +++ b/bootstrap/rig-system/kustomize/overlays/odcn-production/kustomization.yaml @@ -11,6 +11,7 @@ resources: - argocd-deployment.yaml - network-policies/argocd-network-policy.yaml - ../../operations-manager/overlays/odcn-production +- argocd-appproject-rig-platform.yaml - argocd-application-production-infrastructure.yaml - argocd-application-user-applications.yaml From db479c3f3c240c102c1bd49bae3d79f13f9dd2e1 Mon Sep 17 00:00:00 2001 From: robbertuittenbroek Date: Tue, 19 May 2026 11:04:08 +0200 Subject: [PATCH 2/7] fix(argocd): zet orphanedResources.warn op true MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit De comment beschreef "alleen waarschuwen" maar warn stond op false, wat juist géén waarschuwing geeft. Op true gezet zodat manueel toegepaste ClusterRoleBindings of andere resources die niet in git staan zichtbaar worden in de Argo UI — nuttig detectiemechanisme bovenop de project-scoping, zonder destructieve auto-prune toe te voegen. --- .../odcn-production/argocd-appproject-rig-platform.yaml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml index 79df1fef..4e3a1ae8 100644 --- a/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml +++ b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml @@ -68,6 +68,9 @@ spec: - group: "*" kind: "*" - # Geen orphaned-resource-acties; alleen waarschuwen. + # Orphaned-resources: niet automatisch verwijderen, alleen waarschuwen. Een + # manueel toegepaste ClusterRoleBinding of namespace-resource die niet in + # git staat valt zo op in de Argo UI - nuttig als detectiemechanisme bovenop + # de project-scoping, zonder een destructieve auto-prune toe te voegen. orphanedResources: - warn: false + warn: true From 371f8f3c44c90a3da897e34027fe612373cd2cb7 Mon Sep 17 00:00:00 2001 From: robbertuittenbroek Date: Wed, 20 May 2026 08:30:34 +0200 Subject: [PATCH 3/7] fix(argocd): clusterResourceWhitelist leeg laten Onze Argo ServiceAccount heeft op productie geen rechten om cluster-scoped resources aan te maken; die worden out-of-band door ODCN beheerd. Een whitelist met ClusterRole/ClusterRoleBinding/Namespace was misleidend (deed in praktijk niks omdat Argo ze toch niet kan maken). Lege whitelist blokkeert nu expliciet elke cluster-scoped sync-poging, zonder bestaande resources te raken. --- .../argocd-appproject-rig-platform.yaml | 20 ++++++++----------- 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml index 4e3a1ae8..dbd32e2f 100644 --- a/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml +++ b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml @@ -47,18 +47,14 @@ spec: - server: https://kubernetes.default.svc namespace: rig-system - # Cluster-brede kinds: de infrastructuur-sync maakt aantoonbaar een - # ClusterRole + ClusterRoleBinding aan (external-dns) en kan Namespaces - # aanmaken. Bewust géén '*'. Als de SOPS-versleutelde overlays meer - # cluster-brede kinds blijken te bevatten faalt de sync zichtbaar op - # staging - dat is het pre-merge validatiemoment, niet productie. - clusterResourceWhitelist: - - group: "" - kind: Namespace - - group: rbac.authorization.k8s.io - kind: ClusterRole - - group: rbac.authorization.k8s.io - kind: ClusterRoleBinding + # Geen cluster-scoped resources via Argo: onze Argo ServiceAccount heeft op + # productie geen rechten om ClusterRole, ClusterRoleBinding, Namespace of + # andere cluster-scoped kinds aan te maken — die worden out-of-band door het + # ODCN-platformteam beheerd. Lege whitelist blokkeert elke poging vanuit + # deze AppProject; als een sync ooit een cluster-scoped kind nodig heeft + # wordt dat in Argo direct zichtbaar als OutOfSync (niet stilletjes + # toegepast met permissions-die-we-niet-hebben). + clusterResourceWhitelist: [] # Namespaced resources blijven breed toegestaan: de blast radius is al # ingeperkt door de destination-namespace-pinning hierboven. Een te From 07cd904f36f6185744024b2abe829dcecafe8f58 Mon Sep 17 00:00:00 2001 From: robbertuittenbroek Date: Tue, 26 May 2026 08:30:47 +0200 Subject: [PATCH 4/7] fix(argocd): rig-system destination weg (sandbox-only, niet productie) Live verificatie: production-infrastructure en user-applications Apps syncen uitsluitend naar rig-prd-operations. De rig-system destination was overgekomen van een sandbox-context en is op odcn-production dood. --- .../odcn-production/argocd-appproject-rig-platform.yaml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml index dbd32e2f..4daacf1f 100644 --- a/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml +++ b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml @@ -37,15 +37,10 @@ spec: - https://infrastructure@github.com/RijksICTGilde/RIG-Cluster.git - https://user-applications@github.com/RijksICTGilde/argo-applications.git - # Alleen de in-cluster API server en de namespaces waar deze apps - # legitiem naartoe deployen. Beide Applications zetten destination.namespace - # op rig-prd-operations; de infrastructuur-overlay plaatst daarnaast - # resources in rig-system. Geen '*'. + # Beide Applications syncen alleen naar rig-prd-operations (live geverifieerd). destinations: - server: https://kubernetes.default.svc namespace: rig-prd-operations - - server: https://kubernetes.default.svc - namespace: rig-system # Geen cluster-scoped resources via Argo: onze Argo ServiceAccount heeft op # productie geen rechten om ClusterRole, ClusterRoleBinding, Namespace of From c15ca10e0c7ded3b870bc7cab18ab8ec46352a12 Mon Sep 17 00:00:00 2001 From: robbertuittenbroek Date: Tue, 26 May 2026 08:33:35 +0200 Subject: [PATCH 5/7] fix(argocd): comments trimmen --- .../argocd-appproject-rig-platform.yaml | 48 +++---------------- 1 file changed, 6 insertions(+), 42 deletions(-) diff --git a/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml index 4daacf1f..ab8acdf3 100644 --- a/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml +++ b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml @@ -1,24 +1,6 @@ -# AppProject - beperkt wat de productie-Applications mogen synchroniseren. -# -# Zonder dit project draaien de Applications in het ingebouwde 'default' -# project, dat sourceRepos '*', destinations '*' en -# clusterResourceWhitelist '*' toestaat. Iedereen die naar 'main' van een -# van de bronrepo's kan pushen krijgt daarmee willekeurige cluster-brede -# objecten (incl. ClusterRoleBindings) automatisch toegepast en self-healed. -# -# Dit project pint: -# - sourceRepos op exact de twee legitieme repo-URL's (geen wildcard) -# - destinations op de in-cluster API server en uitsluitend de namespaces -# waar deze apps daadwerkelijk naartoe deployen -# - clusterResourceWhitelist op de minimale set cluster-brede kinds die de -# infrastructuur-sync aantoonbaar nodig heeft -# -# LET OP: delen van de infrastructuur-overlay zijn SOPS-versleuteld, waardoor -# niet elke namespace/kind statisch te enumereren is. De whitelist hieronder -# is bewust conservatief. Een te strakke whitelist breekt de productie-GitOps. -# Een 'kustomize build' van de odcn-production overlay EN een ArgoCD dry-run -# (beide Applications moeten onder dit project blijven syncen) zijn VERPLICHTE -# pre-merge checks op staging. Zie de PR-omschrijving. +# AppProject — vervangt het ingebouwde 'default' project voor de twee +# productie-Applications. Pint sourceRepos + destinations zodat een +# willekeurige push naar een andere repo niet automatisch in productie landt. apiVersion: argoproj.io/v1alpha1 kind: AppProject metadata: @@ -27,12 +9,8 @@ metadata: finalizers: - resources-finalizer.argocd.argoproj.io spec: - description: >- - Beperkt project voor de productie-Applications (infrastructuur en - user-applications). Vervangt het ongebonden 'default' project. + description: Beperkt project voor de productie-Applications. - # Exact de twee bronrepo's. Geen wildcard - dit sluit de supply-chain - # takeover via een willekeurige andere repo uit. sourceRepos: - https://infrastructure@github.com/RijksICTGilde/RIG-Cluster.git - https://user-applications@github.com/RijksICTGilde/argo-applications.git @@ -42,26 +20,12 @@ spec: - server: https://kubernetes.default.svc namespace: rig-prd-operations - # Geen cluster-scoped resources via Argo: onze Argo ServiceAccount heeft op - # productie geen rechten om ClusterRole, ClusterRoleBinding, Namespace of - # andere cluster-scoped kinds aan te maken — die worden out-of-band door het - # ODCN-platformteam beheerd. Lege whitelist blokkeert elke poging vanuit - # deze AppProject; als een sync ooit een cluster-scoped kind nodig heeft - # wordt dat in Argo direct zichtbaar als OutOfSync (niet stilletjes - # toegepast met permissions-die-we-niet-hebben). + # Cluster-scoped beheert ODCN; namespaced open want destinations pint de scope. clusterResourceWhitelist: [] - - # Namespaced resources blijven breed toegestaan: de blast radius is al - # ingeperkt door de destination-namespace-pinning hierboven. Een te - # strakke namespaced-whitelist zou de platform-sync stilletjes breken - # zonder extra beveiligingswinst bovenop de namespace-pinning. namespaceResourceWhitelist: - group: "*" kind: "*" - # Orphaned-resources: niet automatisch verwijderen, alleen waarschuwen. Een - # manueel toegepaste ClusterRoleBinding of namespace-resource die niet in - # git staat valt zo op in de Argo UI - nuttig als detectiemechanisme bovenop - # de project-scoping, zonder een destructieve auto-prune toe te voegen. + # Detectie van orphaned resources (niet auto-prunen, alleen Argo UI warning). orphanedResources: warn: true From b741a00d5741f3736c5c23239868e70ab6d30c25 Mon Sep 17 00:00:00 2001 From: robbertuittenbroek Date: Tue, 26 May 2026 09:17:35 +0200 Subject: [PATCH 6/7] feat(argocd): sandbox-variant van rig-platform AppProject Sandbox krijgt dezelfde restrictie als odcn-production maar gepin op Forgejo in-cluster repos en rig-system namespace. Maakt het mogelijk het AppProject-patroon op sandbox te valideren voordat we naar productie syncen. --- .../argocd-application-infrastructure.yaml | 2 +- .../argocd-application-user-applications.yaml | 2 +- .../argocd-appproject-rig-platform.yaml | 27 +++++++++++++++++++ .../sandboxed-local/kustomization.yaml | 1 + 4 files changed, 30 insertions(+), 2 deletions(-) create mode 100644 bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-appproject-rig-platform.yaml diff --git a/bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-application-infrastructure.yaml b/bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-application-infrastructure.yaml index b33b1db9..0f909ec4 100644 --- a/bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-application-infrastructure.yaml +++ b/bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-application-infrastructure.yaml @@ -5,7 +5,7 @@ metadata: name: sandbox-infrastructure namespace: rig-system spec: - project: default + project: rig-platform source: repoURL: http://forgejo.rig-system.svc.cluster.local:3000/rig-admin/zad-argo-infrastructure.git path: bootstrap/clusters/sandboxed-local diff --git a/bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-application-user-applications.yaml b/bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-application-user-applications.yaml index ba82d887..162f7717 100644 --- a/bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-application-user-applications.yaml +++ b/bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-application-user-applications.yaml @@ -5,7 +5,7 @@ metadata: name: user-applications namespace: rig-system spec: - project: default + project: rig-platform sources: - repoURL: http://forgejo.rig-system.svc.cluster.local:3000/rig-admin/zad-argo-user-applications.git path: . diff --git a/bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-appproject-rig-platform.yaml b/bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-appproject-rig-platform.yaml new file mode 100644 index 00000000..d60c31c1 --- /dev/null +++ b/bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-appproject-rig-platform.yaml @@ -0,0 +1,27 @@ +# AppProject — sandbox-variant van rig-platform; spiegelt odcn-production +# overlay maar pint op de sandbox repos (Forgejo in-cluster) en rig-system. +apiVersion: argoproj.io/v1alpha1 +kind: AppProject +metadata: + name: rig-platform + namespace: rig-system + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + description: Beperkt project voor de sandbox-Applications. + + sourceRepos: + - http://forgejo.rig-system.svc.cluster.local:3000/rig-admin/zad-argo-infrastructure.git + - http://forgejo.rig-system.svc.cluster.local:3000/rig-admin/zad-argo-user-applications.git + + destinations: + - server: https://kubernetes.default.svc + namespace: rig-system + + clusterResourceWhitelist: [] + namespaceResourceWhitelist: + - group: "*" + kind: "*" + + orphanedResources: + warn: true diff --git a/bootstrap/rig-system/kustomize/overlays/sandboxed-local/kustomization.yaml b/bootstrap/rig-system/kustomize/overlays/sandboxed-local/kustomization.yaml index 196a7d70..aa7ba0b8 100644 --- a/bootstrap/rig-system/kustomize/overlays/sandboxed-local/kustomization.yaml +++ b/bootstrap/rig-system/kustomize/overlays/sandboxed-local/kustomization.yaml @@ -14,6 +14,7 @@ resources: - argocd-deployment.yaml - argocd-admin-secret.yaml - argocd-repo-forgejo-secret.yaml +- argocd-appproject-rig-platform.yaml - argocd-application-infrastructure.yaml - argocd-application-user-applications.yaml - ../../operations-manager/overlays/sandboxed-local From 11a2a69cd77ff3b2a8dab52081d55bbc2c49d267 Mon Sep 17 00:00:00 2001 From: robbertuittenbroek Date: Tue, 26 May 2026 10:44:01 +0200 Subject: [PATCH 7/7] fix(argocd): warn=false op orphanedResources MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit rig-prd-operations / rig-system bevatten bootstrap-resources (Argo, OPI, Keycloak, etc.) die niet door Argo gemanaged worden — die zouden tientallen ruis-warnings genereren zonder actie. Namespace-opsplitsing als follow-up. --- .../odcn-production/argocd-appproject-rig-platform.yaml | 6 ++++-- .../sandboxed-local/argocd-appproject-rig-platform.yaml | 4 +++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml index ab8acdf3..4f0f5c21 100644 --- a/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml +++ b/bootstrap/rig-system/kustomize/overlays/odcn-production/argocd-appproject-rig-platform.yaml @@ -26,6 +26,8 @@ spec: - group: "*" kind: "*" - # Detectie van orphaned resources (niet auto-prunen, alleen Argo UI warning). + # Warn uit: rig-prd-operations bevat ook bootstrap-resources (Argo, OPI, + # Keycloak, Postgres, etc.) die niet door Argo gemanaged zijn — namespace- + # opsplitsing is follow-up #106. orphanedResources: - warn: true + warn: false diff --git a/bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-appproject-rig-platform.yaml b/bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-appproject-rig-platform.yaml index d60c31c1..5526dbf1 100644 --- a/bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-appproject-rig-platform.yaml +++ b/bootstrap/rig-system/kustomize/overlays/sandboxed-local/argocd-appproject-rig-platform.yaml @@ -23,5 +23,7 @@ spec: - group: "*" kind: "*" + # Warn uit: rig-system bevat ook bootstrap-resources (Argo, OPI, Keycloak, + # Forgejo) die niet door Argo gemanaged zijn — namespace-opsplitsing is #106. orphanedResources: - warn: true + warn: false