diff --git a/resource_customizations/rabbitmq.com/RabbitmqCluster/health.lua b/resource_customizations/rabbitmq.com/RabbitmqCluster/health.lua index 22916ad6f84cd..643c01ee27414 100644 --- a/resource_customizations/rabbitmq.com/RabbitmqCluster/health.lua +++ b/resource_customizations/rabbitmq.com/RabbitmqCluster/health.lua @@ -21,9 +21,12 @@ if obj.status ~= nil then end end + -- Treat transient/initial 'Unknown' condition as Progressing instead of Degraded. + -- The RabbitMQ operator sets these conditions to Unknown briefly while forming the cluster, + -- so mapping Unknown->Progressing prevents false Degraded states during normal reconciliation. if clusterAvailable.status == "Unknown" or allReplicasReady.status == "Unknown" then - hs.status = "Degraded" - hs.message = "No statefulset or endpoints found" + hs.status = "Progressing" + hs.message = "Waiting for RabbitMQ cluster readiness (conditions unknown)" return hs end diff --git a/resource_customizations/rabbitmq.com/RabbitmqCluster/health_test.yaml b/resource_customizations/rabbitmq.com/RabbitmqCluster/health_test.yaml index 7e7c44e4b57ce..bdec7067789ef 100644 --- a/resource_customizations/rabbitmq.com/RabbitmqCluster/health_test.yaml +++ b/resource_customizations/rabbitmq.com/RabbitmqCluster/health_test.yaml @@ -4,12 +4,12 @@ tests: message: Unknown 'foo' parameter inputPath: testdata/degraded_badconfig.yaml - healthStatus: - status: Degraded - message: No statefulset or endpoints found + status: Progressing + message: Waiting for RabbitMQ cluster readiness (conditions unknown) inputPath: testdata/degraded_cluster_unknown.yaml - healthStatus: - status: Degraded - message: No statefulset or endpoints found + status: Progressing + message: Waiting for RabbitMQ cluster readiness (conditions unknown) inputPath: testdata/degraded_replicas_unknown.yaml - healthStatus: status: Progressing