From 5bfe41beca7683b2dd39083b740862f4f1942518 Mon Sep 17 00:00:00 2001 From: Codex Date: Thu, 7 May 2026 10:13:37 -0500 Subject: [PATCH] fix(monitoring): rename bare Grafana dashboard JSONs out of *.json extension MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ArgoCD's directory-driven manifest parser scans *.yaml AND *.json by default. Bare Grafana dashboard JSONs (no apiVersion/kind/metadata) poisoned manifest generation for the entire infra-monitoring Application ("Object 'Kind' is missing in "), leaving sync state Unknown. These files are SOURCE for the file-provisioning path on noc1 (/opt/monitoring/grafana/dashboards/) and also get inlined into ConfigMap wrappers like grafana-dashboard-remotedesktop.yaml. They are NOT K8s manifests and shouldn't be in ArgoCD's manifest tree. .argocdignore is for repo-level GitOps source eligibility, not for filtering manifests within a directory-mode Application — the cleanest fix is the *.txt extension that ArgoCD's parser skips. Reverts the .argocdignore from the previous commit (didn't take effect). Co-Authored-By: Claude Opus 4.7 (1M context) --- apps/monitoring/.argocdignore | 15 --------------- ...json => fc-updatecenter-dashboard.grafana.txt} | 0 ...e-remotedesktop-grafana-dashboard.grafana.txt} | 0 3 files changed, 15 deletions(-) delete mode 100644 apps/monitoring/.argocdignore rename apps/monitoring/{fc-updatecenter-dashboard.json => fc-updatecenter-dashboard.grafana.txt} (100%) rename apps/monitoring/{flowercore-remotedesktop-grafana-dashboard.json => flowercore-remotedesktop-grafana-dashboard.grafana.txt} (100%) diff --git a/apps/monitoring/.argocdignore b/apps/monitoring/.argocdignore deleted file mode 100644 index e3a3587..0000000 --- a/apps/monitoring/.argocdignore +++ /dev/null @@ -1,15 +0,0 @@ -# Bare Grafana dashboard JSON files are kept here as a CONVENIENCE source -# for the file-provisioning path on noc1 (per -# feedback_grafana_dashboard_shape_depends_on_noc1_delivery_path and -# feedback_monitoring_k8s_target_vs_live_podman). They are NOT K8s -# manifests — they have no `apiVersion` / `kind` / `metadata`. ArgoCD's -# kubernetesIngress provider tries to unmarshal every file in the -# directory and chokes on raw dashboard JSON with "Object 'Kind' is -# missing", which then poisons manifest generation for the whole -# infra-monitoring Application. -# -# When a dashboard needs to be K8s-deployed (i.e. file-provisioned via -# Grafana sidecar in noc-monitoring.yaml), wrap the JSON in a ConfigMap -# YAML next to it (see grafana-dashboard-remotedesktop.yaml as the -# canonical pattern). -*.json diff --git a/apps/monitoring/fc-updatecenter-dashboard.json b/apps/monitoring/fc-updatecenter-dashboard.grafana.txt similarity index 100% rename from apps/monitoring/fc-updatecenter-dashboard.json rename to apps/monitoring/fc-updatecenter-dashboard.grafana.txt diff --git a/apps/monitoring/flowercore-remotedesktop-grafana-dashboard.json b/apps/monitoring/flowercore-remotedesktop-grafana-dashboard.grafana.txt similarity index 100% rename from apps/monitoring/flowercore-remotedesktop-grafana-dashboard.json rename to apps/monitoring/flowercore-remotedesktop-grafana-dashboard.grafana.txt