diff --git a/test/extended/prometheus/prometheus.go b/test/extended/prometheus/prometheus.go index 19a6ba5b8837..f0f7f821620f 100644 --- a/test/extended/prometheus/prometheus.go +++ b/test/extended/prometheus/prometheus.go @@ -874,6 +874,11 @@ var _ = g.Describe("[sig-instrumentation] Prometheus [apigroup:image.openshift.i allowedAlertNames = append(allowedAlertNames, "OperatorHubSourceError") } + // https://issues.redhat.com/browse/OCPBUGS-96581 + if isCompactCluster(ctx, oc) { + allowedAlertNames = append(allowedAlertNames, "KubeCPUOvercommit") + } + tests := map[string]bool{ // openshift-e2e-loki alerts should never fail this test, we've seen this happen on daemon set rollout stuck when CI loki was down. // @@ -1189,6 +1194,19 @@ func hasTelemeterClient(client clientset.Interface) bool { return true } +// isCompactCluster returns true when the cluster has a highly-available +// control plane but no dedicated worker nodes (infrastructureTopology is +// SingleReplica). +func isCompactCluster(ctx context.Context, oc *exutil.CLI) bool { + infra, err := oc.AdminConfigClient().ConfigV1().Infrastructures().Get(ctx, "cluster", metav1.GetOptions{}) + if err != nil { + e2e.Logf("could not retrieve infrastructure resource: %v", err) + return false + } + return infra.Status.ControlPlaneTopology == configv1.HighlyAvailableTopologyMode && + infra.Status.InfrastructureTopology == configv1.SingleReplicaTopologyMode +} + func SkipOperatorHubMetricsCheck(oc *exutil.CLI) bool { stdout, stderr, err := oc.AsAdmin().Run("get").Args("operatorhub", "cluster", "-o=jsonpath={.spec.disableAllDefaultSources}").Outputs() if err != nil {