Unable to update or delete existing argo events sensor and EventSource

513 views Asked by At

Experiencing issue while modifying or deleting an existing argo events sensor.

Tried to modify a sensor

  • I tried to apply changes to an existing sensor.
  • But new changes are not taking effect. When it gets triggered, it is still using old triggers.

Tried to delete a sensor

  • Unable to delete. kubectl delete hangs forever. Only way is to delete whole namespace.

Using :

  • Argo-events version - v1.7.5
  • Kubernetes - v1.24.4+k3s1 ( testing in local - docker-desktop with K3d )

Since deleting everything & redoing is not an option when working in production environment, like to know if it's a known issue with argo-events or if I am doing something wrong.

1

There are 1 answers

0
Sairam Krish On BEST ANSWER

As of release v1.7.5, there is a bug in default sensor & eventSource kubernetes resource yaml values.

apiVersion: argoproj.io/v1alpha1
kind: Sensor
metadata:
....
  finalizers:
  - sensor-controller
....
  • It has finalizers as sensor-controller.
  • In v1.7.0+, argo events team has merged sensor controller & source controller into argo-events-controller-manager.
  • I believe, event sensor and event source are pointing to wrong controller
  • It should ideally be pointing to argo-events-controller

To resolve this issue till this bug is fixed in argo-events kubernetes charts:

Update your sensor & event source definitions to have finalizers as empty array.

# example sensor with empty finalizers
apiVersion: argoproj.io/v1alpha1
kind: Sensor
metadata:
  name: minio
  finalizers: []  # <-- this one
spec:
  dependencies:
    - name: test-dep
      eventSourceName: minio
      eventName: example
  triggers:
    - template:
        name: http-trigger
        http:
          url: http://http-server.argo-events.svc:8090/hello
          payload:
            - src:
                dependencyName: test-dep
                dataKey: notification.0.s3.bucket.name
              dest: bucket
            - src:
                dependencyName: test-dep
                contextKey: type
              dest: type
          method: POST
      retryStrategy:
        steps: 3
        duration: 3s