Why This Matters
The Helm chart exposes monitoring values for ServiceMonitor, PodMonitor, PrometheusRule, and Grafana dashboard resources. Some of these resources require Prometheus Operator CRDs, and mixed rendering behavior can lead to confusing installs: a value may be enabled but render nothing, or fail depending on the available APIs.
Users should not have to inspect templates to know whether monitoring objects will be installed.
Implementation Scope
- Make CRD capability checks consistent across ServiceMonitor, PodMonitor, and PrometheusRule templates.
- Add Helm notes or chart documentation that states exactly which monitoring resources render under which conditions.
- Consider adding values to fail fast when a monitoring resource is enabled but the required CRD is missing.
- Add chart rendering tests with and without Prometheus Operator CRDs in
.Capabilities.APIVersions.
- Document the default monitoring posture and how to disable all monitoring resources cleanly.
Expected Capability
After this is implemented, Helm users should get predictable monitoring installs. If monitoring CRDs are unavailable, the chart should either skip those resources with clear documentation or fail with a direct, actionable message.
Why This Matters
The Helm chart exposes monitoring values for ServiceMonitor, PodMonitor, PrometheusRule, and Grafana dashboard resources. Some of these resources require Prometheus Operator CRDs, and mixed rendering behavior can lead to confusing installs: a value may be enabled but render nothing, or fail depending on the available APIs.
Users should not have to inspect templates to know whether monitoring objects will be installed.
Implementation Scope
.Capabilities.APIVersions.Expected Capability
After this is implemented, Helm users should get predictable monitoring installs. If monitoring CRDs are unavailable, the chart should either skip those resources with clear documentation or fail with a direct, actionable message.