Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ArgoCD health check missing on RabbitMQ CRD #1834

Open
TucoBouchState opened this issue Mar 7, 2025 · 0 comments
Open

ArgoCD health check missing on RabbitMQ CRD #1834

TucoBouchState opened this issue Mar 7, 2025 · 0 comments
Labels
bug Something isn't working

Comments

@TucoBouchState
Copy link

Describe the bug

When synchronizing RabbitMQ CRDs such as Exchange, Queue, and Binding using ArgoCD, there is no existing resource health check implemented for these.
For example, if a typo is made in the CRD, ArgoCD will consider it as Synced and OK from ArgoCD’s point of view, but on the RabbitMQ side, the resource creation will fail.
I understand this is related to ArgoCD, but I think it is relevant to discuss here.
ArgoCD currently implements a health check only for the Cluster resource: see ArgoCD RabbitmqCluster.
It would be useful to include health checks for other CRDs as well.

To Reproduce

Steps to reproduce the behavior:
Into a Kubernetes cluster with ArgoCD operator and RabbitMq operator installed
Given a project created in ArgoCD synchronizing RabbitMQ CRD from GIT :

  1. Create a CRD with a typo :
apiVersion: rabbitmq.com/v1beta1
kind: Exchange
metadata:
  name: test-gbo-ajout4
  namespace: my-namespace
spec:
  name: test-gbo-ajout4
  vhost: vhost
  type: error #a typo  here, should be fanout
  durable: true
  rabbitmqClusterReference:
    name: mycluster
    namespace: my-namespace
  1. ArgoCD sync the CRD :
    Image
    But besides, the status of the CRD is :
    Image

  2. My CICD pipeline is checking the synchronization, if everything is synced, the pipeline succeed
    In this case, it should not succeed, ArgoCD should check the status of the CRD

Expected behavior
ArgoCD should implement a health resource (can been seen with a heart in the UI :
Image

By default, ArgoCD only implements for Cluster CRD : see https://github.com/argoproj/argo-cd/tree/master/resource_customizations/rabbitmq.com/RabbitmqCluster

What do you think to handle the implementation of this health check ?
As a workaround, I've implemented one by myself but not sure if correctly implemented.

Version and environment information

  • RabbitMQ: [e.g. 3.8.0]
  • RabbitMQ Cluster Operator: [e.g. 1.1.0 or commit if building from source]
  • Kubernetes: v1.29.11+148a389 (Open shift)
  • Argo CD : v2.10.18+3d900c7

Additional context

Using ArgoCD and RabbitMQ operators in Openshift

@TucoBouchState TucoBouchState added the bug Something isn't working label Mar 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant