Uploaded image for project: 'OpenShift Request For Enhancement'
  1. OpenShift Request For Enhancement
  2. RFE-4022

Enable extraCommandArgs property in Argo CRD for Application Controller

XMLWordPrintable

    • Icon: Feature Request Feature Request
    • Resolution: Done
    • Icon: Undefined Undefined
    • None
    • None
    • GitOps
    • None
    • False
    • None
    • False
    • Not Selected

      1. Proposed title of this feature request

       

      Enable extraCommandArgs in Argo CR for Application Controller

       

      2. What is the nature and description of the request?

       

      extraCommandArgs allows adding additional flags to Argo workloads, however it is not available for application controller, only server and application set controller (https://github.com/redhat-developer/gitops-operator/blob/master/config/crd/bases/argoproj.io_argocds.yaml#L5887).

      This feature is important to enable metrics configuration like --metrics-cache-expiration and --metrics-application-labels flags (https://argo-cd.readthedocs.io/en/release-2.6/operator-manual/metrics/#exposing-application-labels-as-prometheus-metrics). Right now as there is no way to pass them via command line arguments, --metrics-cache-expiration can be passed as environment variable (https://github.com/argoproj/argo-cd/blob/a08282bf6bcd7b44ea2dd3ef7fa0e2a77498063e/cmd/argocd-application-controller/commands/argocd_application_controller.go#L189) but --metrics-application-labels can't be enabled as there is no environment variable for that command line argument.

       

      3. Why does the customer need this? (List the business requirements here)

       

      This is required to set some important configuration for monitoring, visualizing and analyzing metrics.

      Setting metrics caché expiration value is important for environments where they are creating and deleteing a huge amount of resources as it can lead to performance issues as described in this issue https://github.com/argoproj/argo-cd/issues/5287.

      While exposing application labels as prometheus metrics is important to some use cases like visualizing metrics by business units or having an extra criteria to configure alerts or notifications.

       

      4. List any affected packages or components.

       

      Argo CRD: https://github.com/redhat-developer/gitops-operator/blob/master/config/crd/bases/argoproj.io_argocds.yaml#L5887

              halawren@redhat.com Harriet Lawrence
              romerobu2 Coral Romero
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: