diff --git a/bundle/manifests/observability.openshift.io_uiplugins.yaml b/bundle/manifests/observability.openshift.io_uiplugins.yaml index 556b3f641..5677f08f2 100644 --- a/bundle/manifests/observability.openshift.io_uiplugins.yaml +++ b/bundle/manifests/observability.openshift.io_uiplugins.yaml @@ -186,8 +186,21 @@ spec: - enabled - thanosQuerier type: object + clusterHealthAnalyzer: + description: ClusterHealthAnalyzer feature flag enablement + properties: + enabled: + description: Indicates if the cluster-health-analyzer features + should be enabled. + type: boolean + required: + - enabled + type: object incidents: - description: Incidents feature flag enablement + description: |- + Incidents feature flag enablement + + Deprecated: Use clusterHealthAnalyzer instead properties: enabled: description: Indicates if incidents-related feature(s) should diff --git a/deploy/crds/common/observability.openshift.io_uiplugins.yaml b/deploy/crds/common/observability.openshift.io_uiplugins.yaml index 6fbc21b45..41af7f3e1 100644 --- a/deploy/crds/common/observability.openshift.io_uiplugins.yaml +++ b/deploy/crds/common/observability.openshift.io_uiplugins.yaml @@ -186,8 +186,21 @@ spec: - enabled - thanosQuerier type: object + clusterHealthAnalyzer: + description: ClusterHealthAnalyzer feature flag enablement + properties: + enabled: + description: Indicates if the cluster-health-analyzer features + should be enabled. + type: boolean + required: + - enabled + type: object incidents: - description: Incidents feature flag enablement + description: |- + Incidents feature flag enablement + + Deprecated: Use clusterHealthAnalyzer instead properties: enabled: description: Indicates if incidents-related feature(s) should diff --git a/docs/api.md b/docs/api.md index 754fb2c2a..318f13305 100644 --- a/docs/api.md +++ b/docs/api.md @@ -5450,11 +5450,20 @@ Monitoring contains configuration for the monitoring console plugin. ACM points to the alertmanager and thanosQuerier instance services of which it should create a proxy to.
false + + clusterHealthAnalyzer + object + + ClusterHealthAnalyzer feature flag enablement
+ + false incidents object - Incidents feature flag enablement
+ Incidents feature flag enablement + +Deprecated: Use clusterHealthAnalyzer instead
false @@ -5563,6 +5572,33 @@ ThanosQuerier points to the thanos-querier service of which it should create a p +### UIPlugin.spec.monitoring.clusterHealthAnalyzer +[↩ Parent](#uipluginspecmonitoring) + + + +ClusterHealthAnalyzer feature flag enablement + + + + + + + + + + + + + + + + +
NameTypeDescriptionRequired
enabledboolean + Indicates if the cluster-health-analyzer features should be enabled.
+
true
+ + ### UIPlugin.spec.monitoring.incidents [↩ Parent](#uipluginspecmonitoring) @@ -5570,6 +5606,8 @@ ThanosQuerier points to the thanos-querier service of which it should create a p Incidents feature flag enablement +Deprecated: Use clusterHealthAnalyzer instead + diff --git a/pkg/apis/uiplugin/v1alpha1/types.go b/pkg/apis/uiplugin/v1alpha1/types.go index 8d52603b3..28b314383 100644 --- a/pkg/apis/uiplugin/v1alpha1/types.go +++ b/pkg/apis/uiplugin/v1alpha1/types.go @@ -161,7 +161,14 @@ type MonitoringConfig struct { // Incidents feature flag enablement // // +kubebuilder:validation:Optional + // Deprecated: Use clusterHealthAnalyzer instead + // +deprecated Incidents *IncidentsReference `json:"incidents,omitempty"` + + // ClusterHealthAnalyzer feature flag enablement + // + // +kubebuilder:validation:Optional + ClusterHealthAnalyzer ClusterHealthAnalyzerReference `json:"clusterHealthAnalyzer,omitempty"` } // AdvancedClusterManagementReference is used to configure references to the alertmanager and thanosQuerier that should be used @@ -221,6 +228,14 @@ type IncidentsReference struct { Enabled bool `json:"enabled"` } +// ClusterHealthAnalyzerReference is used to configure the cluster health analyzer features. +type ClusterHealthAnalyzerReference struct { + // Indicates if the cluster-health-analyzer features should be enabled. + // + // +kubebuilder:validation:Required + Enabled bool `json:"enabled"` +} + // UIPluginSpec is the specification for desired state of UIPlugin. // // +kubebuilder:validation:XValidation:rule="self.type == 'TroubleshootingPanel' || !has(self.troubleshootingPanel)", message="Troubleshooting Panel configuration is only supported with the TroubleshootingPanel type" diff --git a/pkg/apis/uiplugin/v1alpha1/zz_generated.deepcopy.go b/pkg/apis/uiplugin/v1alpha1/zz_generated.deepcopy.go index f0a913985..ea0d497b9 100644 --- a/pkg/apis/uiplugin/v1alpha1/zz_generated.deepcopy.go +++ b/pkg/apis/uiplugin/v1alpha1/zz_generated.deepcopy.go @@ -57,6 +57,21 @@ func (in *AlertmanagerReference) DeepCopy() *AlertmanagerReference { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *ClusterHealthAnalyzerReference) DeepCopyInto(out *ClusterHealthAnalyzerReference) { + *out = *in +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterHealthAnalyzerReference. +func (in *ClusterHealthAnalyzerReference) DeepCopy() *ClusterHealthAnalyzerReference { + if in == nil { + return nil + } + out := new(ClusterHealthAnalyzerReference) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *Condition) DeepCopyInto(out *Condition) { *out = *in @@ -185,6 +200,7 @@ func (in *MonitoringConfig) DeepCopyInto(out *MonitoringConfig) { *out = new(IncidentsReference) **out = **in } + out.ClusterHealthAnalyzer = in.ClusterHealthAnalyzer } // DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitoringConfig.