fix(monitoring): rename bare Grafana dashboard JSONs out of *.json extension
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 <dashboard JSON>"), 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) <noreply@anthropic.com>
This commit is contained in:
@@ -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
|
||||
Reference in New Issue
Block a user