Skip to content

3scale health checks #24327

@ammachado

Description

@ammachado

Summary

Argo CD is incorrectly reporting the health status of 3scale applications. While the sync process completes successfully, the application components are not healthy due to a dependency issue with the 3scale operator.

Motivation

The 3scale operator requires its Kubernetes objects to be created and reconciled in a specific order to function correctly. Currently, when syncing 3scale applications with Argo CD, the sync operation reports a successful status even when the underlying operator-managed resources are still unhealthy. This can lead to a misleading "Healthy" status in Argo CD, while the application itself is not fully functional.

This behavior prevents a true GitOps-style, declarative management of 3scale applications, as operators must manually verify and correct the application state.

Proposal

To accurately reflect the operational status of 3scale applications, we propose implementing custom health checks. These checks would specifically monitor the health and readiness of the objects managed by the 3scale operator, ensuring that the Argo CD UI provides an accurate representation of the application's state.

This can be achieved by following the established health check documentation for the Argo CD operator manual.

Steps to Reproduce

  1. Deploy a 3scale application via Argo CD.
  2. Observe the application status.
  3. Note that Argo CD reports the application as Synced and Healthy, while the 3scale components are not fully ready.)

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions