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

Webhook not refreshing applications #15427

Closed
3 tasks done
AlekseiTikhonov-azur opened this issue Sep 8, 2023 · 49 comments · Fixed by #19783
Closed
3 tasks done

Webhook not refreshing applications #15427

AlekseiTikhonov-azur opened this issue Sep 8, 2023 · 49 comments · Fixed by #19783
Labels
bug Something isn't working component:api API bugs and enhancements type:bug

Comments

@AlekseiTikhonov-azur
Copy link

Checklist:

  • I've searched in the docs and FAQ for my answer: https://bit.ly/argocd-faq.
  • I've included steps to reproduce the bug.
  • I've pasted the output of argocd version.

Describe the bug

github webhook seems not working. It does not refreshing argo-cd applications but dropping git repository cache.

To Reproduce

Add a hook just like in the documentation.

helm values

---

global:
  securityContext:
    runAsUser: 999
    runAsGroup: 999
    fsGroup: 999
  podLabels:
    vector_enable: "true"
    vector_type: "text"
  logging:
    format: text
    level: debug
  tolerations:
    - key: "platform"
      operator: "Equal"
      value: "true"
      effect: "NoSchedule"
  nodeSelector:
    platform: "true"

applicationSet:
  metrics:
    enabled: true
    serviceMonitor:
      enabled: true
  webhook:
    ingress:
      enabled: true
      hosts:
        - argocd-webhook.someorg.dev
      tls:
        - secretName: wildcard-someorg-dev
          hosts:
            - argocd-webhook.someorg.dev
      ingressClassName: public-nginx

notifications:
  metrics:
    enabled: true
    serviceMonitor:
      enabled: true

controller:
  metrics:
    enabled: true
    serviceMonitor:
      enabled: true

repoServer:
  metrics:
    enabled: true
    serviceMonitor:
      enabled: true
  env:
    - name: ARGOCD_GIT_MODULES_ENABLED
      value: "false"

dex:
  enabled: true
  metrics:
    enabled: true
    serviceMonitor:
      enabled: true

configs:
  secret:
    extra:
      bindDN: 'CN=argocd-infrastructure,OU=infrastructure,OU=users,DC=ldap,DC=local'
  rbac:
    create: true
    policy.default: role:none
    scopes: '[groups, email]'
    policy.csv: |
      p, role:none, *, *, */*, deny
      g, Infrastructure, role:admin
      p, role:test-app, *, *, test-app/*, allow
      p, role:test-app, projects, get, test-app, allow
      p, proj:test-app:test-app, applications, update, test-app/*, allow
      p, proj:test-app:test-app, applications, get, test-app/*, allow

server:
  config:
    kustomize.enabled: 'true'
    url: "https://argocd.someorg.dev"
    dex.config: |
      logger:
        level: error
      admin.enabled: "false"
      connectors:
      - type: ldap
        name: "ldap.local"
        id: ad
        config:
          host: "ldap.local:389"
          insecureNoSSL: true
          insecureSkipVerify: true
          bindDN: "$bindDN"
          bindPW: "$bindPW"
          usernamePrompt: Username
          userSearch:
            baseDN: "DC=dc,DC=local"
            filter: "(objectClass=user)"
            username: sAMAccountName
            idAttr: sAMAccountName
            emailAttr: userPrincipalName
            nameAttr: givenName
          groupSearch:
            baseDN: "DC=dc,DC=local"
            filter: "(objectClass=group)"
            userAttr: distinguishedName
            groupAttr: member
            nameAttr: cn

  ingress:
    enabled: true
    hosts:
      - argocd.someorg.dev
    tls:
      - secretName: wildcard-someorg-dev
        hosts:
          - argocd.someorg.dev
    ingressClassName: nginx
    annotations:
      nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
  metrics:
    enabled: true
    serviceMonitor:
      enabled: true

ingressClassName: ingress - internal ingress controller
ingressClassName: public-nginx - public ingress controller

Expected behavior

Argocd refresh applications and not waiting before it updated by refresh interval.

Version

argocd version
argocd: v2.7.6+00c914a.dirty
  BuildDate: 2023-06-20T20:51:13Z
  GitCommit: 00c914a948d9e8ad99be8bd82a368fbdeba12f88
  GitTreeState: dirty
  GoVersion: go1.19.10
  Compiler: gc
  Platform: linux/amd64

Logs applicationset-controller created by applicationset api

time="2023-09-01T15:30:04Z" level=info msg="Received push event repo: https://github.com/test-app, revision: webhook-fix, touchedHead: false"

Logs applicationset-controller created by application api

time="2023-09-01T15:44:25Z" level=debug msg="received update event from owning an application"
time="2023-09-01T15:44:25Z" level=debug msg="requeue: false caused by application test-app\n"
@AlekseiTikhonov-azur AlekseiTikhonov-azur added the bug Something isn't working label Sep 8, 2023
@robinlieb
Copy link
Member

Hi @AlekseiTikhonov-azur, can you check if the revision webhook-fix is defined aswell in the source section of your Argo CD Application?
Argo CD is checking if the revision coming from the webhook is matching the one defined in the Application and only refreshing if they are matching.

@AlekseiTikhonov-azur
Copy link
Author

Revision is defined:

    "source" = {
      "directory" = {
        "recurse" = true
      }
      "path"           = "projects/shared/dev/aws/eu-central-1/argocd/_init"
      "repoURL"        = "https://github.com/test-app.git"
      "targetRevision" = "webhook-fix"
    }

@AlekseiTikhonov-azur
Copy link
Author

I checked on argocd v2.9.3. The same result. Argocd not refreshing application. Applicationset-controller received github webhook succesfully.

@pre
Copy link

pre commented Jan 30, 2024

We have been experiencing the same issue with ArgoCD 2.8: ApplicationSet webhook does not update Application resources.

The webhook is logged, but Application resources are not updated before "some cache" has expired in Redis. This takes exactly 10 minutes - after 10 minutes the Applications are updated at the next reconciliation loop (3 minutes in our case).

It is notable that scaling down applicationset-controller replicas to zero and back to 1 do not have an effect.
The new applicationset-controller replica will update the old (wrong) state (eg targetRevision: A) from Redis cache even though the ApplicationSet's source repository has changed to eg. targetRevision: B.

There clearly is something cached in Redis which is not invalidated by the webhook or not even by the newly created applicationset-controller replica.

That said, when the ApplicationSet webhook arrives, it will take maximum of 10min (Redis cache) + 3min (reconciliation max) = 13 minutes (max) before Application resources are updated.

{"level":"info","msg":"Received push event repo: https://github.com/our-org/our-repository, revision: env/canary, touchedHead: false","time":"2024-01-30T12:31:21Z"}
{"level":"info","msg":"Alloc=29734 TotalAlloc=190263 Sys=77885 NumGC=13 Goroutines=90","time":"2024-01-30T12:32:00Z"}
{"generator":{"git":{"repoURL":"https://github.com/our-org/our-repository","files":[{"path":"our-path/subpath1/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 5 applications","time":"2024-01-30T12:34:08Z"}
{"generator":{"git":{"repoURL":"https://github.com/our-org/our-repository","files":[{"path":"our-path/subpath2/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 6 applications","time":"2024-01-30T12:34:08Z"}
{"app":"one-of-the-applications","appSet":"our-path-subpath1-1","level":"info","msg":"unchanged Application","time":"2024-01-30T12:34:08Z"}

.. rest of the Application resources are logged with "unchanged Application" until 10min + 0-3min <= 13 minutes has passed.

.. after this, with the timestamps, exactly after 10 minutes the next reconciliation loop will update the applications.

@pre
Copy link

pre commented Jan 30, 2024

We were running v2.8.3 - It seems v2.8.8 has a possible fix! We'll try with v2.8.9 soon and see if it fixes the issue!

https://github.com/argoproj/argo-cd/releases/tag/v2.8.8

@AlekseiTikhonov-azur
Copy link
Author

AlekseiTikhonov-azur commented Feb 1, 2024

@pre can you try 2.9.3 version ? I tested it. Webhooks not working.

@pre
Copy link

pre commented Feb 1, 2024

@AlekseiTikhonov-azur the fixes I linked in my previous message are introduced in v2.9.4, see https://github.com/argoproj/argo-cd/releases/tag/v2.9.4

So v2.9.3 is still broken - note that v2.8.9 is newer than v2.9.3.

@pre
Copy link

pre commented Feb 9, 2024

It seems the problem is not fully fixed yet in v2.8.9 -- but something has changed!

The delay between Received push event repo and update Application was exactly 10 minutes + reconciliation in v2.8.3.
With v2.8.9 the delay was in our first environment less than 3 minutes (and the person doing the release did not actively monitor the timeout). This failed us to believe the problem was resolved.

However, with the next environment it took 9 minutes until update Application was written to the logs and Application resources got updated.

So the problem seems to be not fixed yet, but something did change as the deterministic "10 minutes + reconciliation" changed to "something between 3-9 mintues".

Here are some redacted from argocd-applicationset-controller:
{"built":"2024-01-19T18:16:11Z","commit":"3ef5ba76a95d71de88bfa9b6e887c86025a88fdd","level":"info","msg":"ArgoCD ApplicationSet Controller is starting","namespace":"argocd","time":"2024-02-09T12:57:12Z","version":"v2.8.9+3ef5ba7"}
{"level":"info","msg":"Starting configmap/secret informers","time":"2024-02-09T12:57:13Z"}
{"level":"info","msg":"Configmap/secret informer synced","time":"2024-02-09T12:57:13Z"}
{"level":"info","msg":"Starting webhook server","time":"2024-02-09T12:57:13Z"}
{"level":"info","msg":"Starting manager","time":"2024-02-09T12:57:13Z"}
{"level":"info","msg":"processing event for cluster secret","name":"build-service-1","namespace":"argocd","time":"2024-02-09T12:57:14Z","type":"createSecretEventHandler"}
{"count":6,"level":"info","msg":"listed ApplicationSets","time":"2024-02-09T12:57:14Z","type":"createSecretEventHandler"}
{"level":"info","msg":"processing event for cluster secret","name":"cloud-runtime-1","namespace":"argocd","time":"2024-02-09T12:57:14Z","type":"createSecretEventHandler"}
{"count":6,"level":"info","msg":"listed ApplicationSets","time":"2024-02-09T12:57:14Z","type":"createSecretEventHandler"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-1/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 5 applications","time":"2024-02-09T12:57:14Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-2/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 13 applications","time":"2024-02-09T12:57:14Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-service/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 9 applications","time":"2024-02-09T12:57:14Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"app-runtime/redacted-service/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 2 applications","time":"2024-02-09T12:57:14Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-integration/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 6 applications","time":"2024-02-09T12:57:14Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-4/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 5 applications","time":"2024-02-09T12:57:14Z"}

#
# Webhook received at 13:00:59
#
{"level":"info","msg":"Received push event repo: https://github.com/my-org-release-control, revision: env/canary, touchedHead: false","time":"2024-02-09T13:00:59Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"app-runtime/redacted-service/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 2 applications","time":"2024-02-09T13:03:14Z"}
{"app":"orchestra-preview","appSet":"app-runtime-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"transdolan","appSet":"app-runtime-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"applicationset":{"Namespace":"argocd","Name":"app-runtime-redacted-service"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:03:14Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-1/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 5 applications","time":"2024-02-09T13:03:14Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-4/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 5 applications","time":"2024-02-09T13:03:14Z"}

#
# Git generator: "unchanged Application at 13:03"
# This should have been "updated Application"
#
{"app":"cr-image-pull-credentials-injector","appSet":"cloud-release-redacted-1-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"cr-istio-control-plane","appSet":"cloud-release-redacted-1-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"cr-istio-service-resources","appSet":"cloud-release-redacted-1-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"cr-node-drain","appSet":"cloud-release-redacted-1-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"cr-sap-logging","appSet":"cloud-release-redacted-1-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-1-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:03:14Z"}
{"app":"bs-common-secrets","appSet":"cloud-release-redacted-4-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"bs-external-secrets-operator","appSet":"cloud-release-redacted-4-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"bs-image-pull-credentials-injector","appSet":"cloud-release-redacted-4-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"bs-node-drain","appSet":"cloud-release-redacted-4-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"bs-sap-logging","appSet":"cloud-release-redacted-4-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-4-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:03:14Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-integration/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 6 applications","time":"2024-02-09T13:03:14Z"}
{"app":"btp-service-bindings","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"cluster-internal-bindings","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"sap-btp-operator","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"sap-connectivity-proxy","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"sap-logging","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"xrs-certificate-manager","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-integration"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:03:14Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-service/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 9 applications","time":"2024-02-09T13:03:14Z"}
{"app":"database-initializer","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"design-time-apis","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"design-time-core","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"destination-proxy","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"ee-metering","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"frontend","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"quota-calculator","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"service-broker","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"app":"subscription-manager","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:14Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-service"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:03:14Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-2/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 13 applications","time":"2024-02-09T13:03:15Z"}
{"app":"cert-manager","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:15Z"}
{"app":"external-secrets-operator","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:15Z"}
{"app":"plutono","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:15Z"}
{"app":"image-pull-credentials-injector","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:15Z"}
{"app":"istio-control-plane","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:15Z"}
{"app":"istio-service-resources","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:15Z"}
{"app":"k8s-synchronizer","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:15Z"}
{"app":"kube-state-metrics","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:15Z"}
{"app":"node-drain","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:15Z"}
{"app":"oidc-extauthz","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:15Z"}
{"app":"prometheus-config","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:15Z"}
{"app":"prometheus-node-exporter","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:15Z"}
{"app":"prometheus-operator","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:03:15Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-2"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:03:15Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"app-runtime/redacted-service/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 2 applications","time":"2024-02-09T13:06:14Z"}
{"app":"orchestra-preview","appSet":"app-runtime-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"transdolan","appSet":"app-runtime-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"applicationset":{"Namespace":"argocd","Name":"app-runtime-redacted-service"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:06:14Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-1/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 5 applications","time":"2024-02-09T13:06:14Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-4/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 5 applications","time":"2024-02-09T13:06:14Z"}
{"app":"cr-image-pull-credentials-injector","appSet":"cloud-release-redacted-1-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"cr-istio-control-plane","appSet":"cloud-release-redacted-1-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"cr-istio-service-resources","appSet":"cloud-release-redacted-1-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"cr-node-drain","appSet":"cloud-release-redacted-1-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"cr-sap-logging","appSet":"cloud-release-redacted-1-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-1-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:06:14Z"}
{"app":"bs-common-secrets","appSet":"cloud-release-redacted-4-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"bs-external-secrets-operator","appSet":"cloud-release-redacted-4-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"bs-image-pull-credentials-injector","appSet":"cloud-release-redacted-4-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"bs-node-drain","appSet":"cloud-release-redacted-4-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"bs-sap-logging","appSet":"cloud-release-redacted-4-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-4-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:06:14Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-integration/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 6 applications","time":"2024-02-09T13:06:14Z"}
{"app":"btp-service-bindings","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"cluster-internal-bindings","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"sap-btp-operator","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"sap-connectivity-proxy","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"sap-logging","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"xrs-certificate-manager","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-integration"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:06:14Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-service/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 9 applications","time":"2024-02-09T13:06:14Z"}
{"app":"database-initializer","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"design-time-apis","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"design-time-core","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"destination-proxy","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"ee-metering","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"frontend","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"quota-calculator","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"service-broker","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"app":"subscription-manager","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:14Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-service"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:06:14Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-2/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 13 applications","time":"2024-02-09T13:06:15Z"}
{"app":"cert-manager","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:15Z"}
{"app":"external-secrets-operator","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:15Z"}
{"app":"plutono","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:15Z"}
{"app":"image-pull-credentials-injector","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:15Z"}
{"app":"istio-control-plane","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:15Z"}
{"app":"istio-service-resources","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:15Z"}
{"app":"k8s-synchronizer","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:15Z"}
{"app":"kube-state-metrics","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:15Z"}
{"app":"node-drain","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:15Z"}
{"app":"oidc-extauthz","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:15Z"}
{"app":"prometheus-config","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:15Z"}
{"app":"prometheus-node-exporter","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:15Z"}
{"app":"prometheus-operator","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:06:15Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-2"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:06:15Z"}
{"level":"info","msg":"Alloc=39348 TotalAlloc=166231 Sys=78653 NumGC=12 Goroutines=89","time":"2024-02-09T13:07:13Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"app-runtime/redacted-service/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 2 applications","time":"2024-02-09T13:09:15Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-1/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 5 applications","time":"2024-02-09T13:09:15Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-service/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 9 applications","time":"2024-02-09T13:09:15Z"}
{"app":"orchestra-preview","appSet":"app-runtime-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:15Z"}
{"app":"transdolan","appSet":"app-runtime-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:15Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-2/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 13 applications","time":"2024-02-09T13:09:15Z"}
{"applicationset":{"Namespace":"argocd","Name":"app-runtime-redacted-service"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:09:15Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-4/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 5 applications","time":"2024-02-09T13:09:15Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-integration/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 6 applications","time":"2024-02-09T13:09:15Z"}

#
# "updated Application" at 13:09:15 - this was supposed to happen immediately after the webhook instead
#
{"app":"cr-image-pull-credentials-injector","appSet":"cloud-release-redacted-1-1","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"bs-common-secrets","appSet":"cloud-release-redacted-4-1","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"cr-istio-control-plane","appSet":"cloud-release-redacted-1-1","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"bs-external-secrets-operator","appSet":"cloud-release-redacted-4-1","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"cr-istio-service-resources","appSet":"cloud-release-redacted-1-1","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"bs-image-pull-credentials-injector","appSet":"cloud-release-redacted-4-1","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"cr-node-drain","appSet":"cloud-release-redacted-1-1","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"bs-node-drain","appSet":"cloud-release-redacted-4-1","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"cr-sap-logging","appSet":"cloud-release-redacted-1-1","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-1-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:09:15Z"}
{"app":"bs-sap-logging","appSet":"cloud-release-redacted-4-1","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-4-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:09:15Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-1/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 5 applications","time":"2024-02-09T13:09:15Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-4/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 5 applications","time":"2024-02-09T13:09:15Z"}
{"app":"database-initializer","appSet":"cloud-release-redacted-service","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"design-time-apis","appSet":"cloud-release-redacted-service","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"design-time-core","appSet":"cloud-release-redacted-service","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"destination-proxy","appSet":"cloud-release-redacted-service","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"ee-metering","appSet":"cloud-release-redacted-service","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"frontend","appSet":"cloud-release-redacted-service","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"quota-calculator","appSet":"cloud-release-redacted-service","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"service-broker","appSet":"cloud-release-redacted-service","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"btp-service-bindings","appSet":"cloud-release-redacted-integration","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"subscription-manager","appSet":"cloud-release-redacted-service","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"cluster-internal-bindings","appSet":"cloud-release-redacted-integration","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-service"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:09:15Z"}
{"app":"sap-btp-operator","appSet":"cloud-release-redacted-integration","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-service/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 9 applications","time":"2024-02-09T13:09:15Z"}
{"app":"sap-connectivity-proxy","appSet":"cloud-release-redacted-integration","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"sap-logging","appSet":"cloud-release-redacted-integration","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"app":"xrs-certificate-manager","appSet":"cloud-release-redacted-integration","level":"info","msg":"updated Application","time":"2024-02-09T13:09:15Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-integration"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:09:15Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-integration/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 6 applications","time":"2024-02-09T13:09:15Z"}
{"app":"cr-image-pull-credentials-injector","appSet":"cloud-release-redacted-1-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"cr-istio-control-plane","appSet":"cloud-release-redacted-1-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"cr-istio-service-resources","appSet":"cloud-release-redacted-1-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"cr-node-drain","appSet":"cloud-release-redacted-1-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"cr-sap-logging","appSet":"cloud-release-redacted-1-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-1-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:09:16Z"}
{"app":"bs-common-secrets","appSet":"cloud-release-redacted-4-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"bs-external-secrets-operator","appSet":"cloud-release-redacted-4-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"bs-image-pull-credentials-injector","appSet":"cloud-release-redacted-4-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"bs-node-drain","appSet":"cloud-release-redacted-4-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"bs-sap-logging","appSet":"cloud-release-redacted-4-1","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-4-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:09:16Z"}
{"app":"cert-manager","appSet":"cloud-release-redacted-2","level":"info","msg":"updated Application","time":"2024-02-09T13:09:16Z"}
{"app":"external-secrets-operator","appSet":"cloud-release-redacted-2","level":"info","msg":"updated Application","time":"2024-02-09T13:09:16Z"}
{"app":"plutono","appSet":"cloud-release-redacted-2","level":"info","msg":"updated Application","time":"2024-02-09T13:09:16Z"}
{"app":"image-pull-credentials-injector","appSet":"cloud-release-redacted-2","level":"info","msg":"updated Application","time":"2024-02-09T13:09:16Z"}
{"app":"istio-control-plane","appSet":"cloud-release-redacted-2","level":"info","msg":"updated Application","time":"2024-02-09T13:09:16Z"}
{"app":"istio-service-resources","appSet":"cloud-release-redacted-2","level":"info","msg":"updated Application","time":"2024-02-09T13:09:16Z"}
{"app":"k8s-synchronizer","appSet":"cloud-release-redacted-2","level":"info","msg":"updated Application","time":"2024-02-09T13:09:16Z"}
{"app":"kube-state-metrics","appSet":"cloud-release-redacted-2","level":"info","msg":"updated Application","time":"2024-02-09T13:09:16Z"}
{"app":"node-drain","appSet":"cloud-release-redacted-2","level":"info","msg":"updated Application","time":"2024-02-09T13:09:16Z"}
{"app":"oidc-extauthz","appSet":"cloud-release-redacted-2","level":"info","msg":"updated Application","time":"2024-02-09T13:09:16Z"}
{"app":"prometheus-config","appSet":"cloud-release-redacted-2","level":"info","msg":"updated Application","time":"2024-02-09T13:09:16Z"}
{"app":"prometheus-node-exporter","appSet":"cloud-release-redacted-2","level":"info","msg":"updated Application","time":"2024-02-09T13:09:16Z"}
{"app":"btp-service-bindings","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"cluster-internal-bindings","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"sap-btp-operator","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"sap-connectivity-proxy","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"sap-logging","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"xrs-certificate-manager","appSet":"cloud-release-redacted-integration","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-integration"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:09:16Z"}
{"app":"prometheus-operator","appSet":"cloud-release-redacted-2","level":"info","msg":"updated Application","time":"2024-02-09T13:09:16Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-2"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:09:16Z"}
{"generator":{"git":{"repoURL":"https://github.com/my-org-release-control","files":[{"path":"cloud-release/redacted-2/*.yaml"}],"revision":"env/canary","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 13 applications","time":"2024-02-09T13:09:16Z"}
{"app":"database-initializer","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"design-time-apis","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"design-time-core","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"destination-proxy","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"ee-metering","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"frontend","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"quota-calculator","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"service-broker","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"app":"subscription-manager","appSet":"cloud-release-redacted-service","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:16Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-service"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:09:16Z"}
{"app":"cert-manager","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:17Z"}
{"app":"external-secrets-operator","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:17Z"}
{"app":"plutono","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:17Z"}
{"app":"image-pull-credentials-injector","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:17Z"}
{"app":"istio-control-plane","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:17Z"}
{"app":"istio-service-resources","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:17Z"}
{"app":"k8s-synchronizer","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:17Z"}
{"app":"kube-state-metrics","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:17Z"}
{"app":"node-drain","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:17Z"}
{"app":"oidc-extauthz","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:17Z"}
{"app":"prometheus-config","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:17Z"}
{"app":"prometheus-node-exporter","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:17Z"}
{"app":"prometheus-operator","appSet":"cloud-release-redacted-2","level":"info","msg":"unchanged Application","time":"2024-02-09T13:09:17Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-redacted-2"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-02-09T13:09:17Z"}

@pre
Copy link

pre commented Mar 20, 2024

Here's an even more reduced log of an experiment I just ran

Push a commit which changes targetRevision of the given Application.

Every three minutes log gets a message of unchanged Application.

Until 10 minutes have passed: after 10 minutes, something expires in the Redis cache and the
Application is updated (targetRevision in this case).

{"level":"info","msg":"Received push event repo: https://our-repository, revision: test, touchedHead: false","time":"2024-03-20T15:05:11Z"}

.. nothing happens ..

{"app":"myapp","appSet":"as","level":"info","msg":"unchanged Application","time":"2024-03-20T15:06:45Z"}

.. 3 minutes later, nothing happens ..

{"app":"myapp","appSet":"as","level":"info","msg":"unchanged Application","time":"2024-03-20T15:09:45Z"}

.. 3+3=6 minutes later, nothing happens ..

{"app":"myapp","appSet":"as","level":"info","msg":"unchanged Application","time":"2024-03-20T15:12:45Z"}

.. 3+3+3=9 minutes later, nothing happens ..

{"app":"myapp","appSet":"as","level":"info","msg":"unchanged Application","time":"2024-03-20T15:15:45Z"}

.. until 3+3+3+3 = 12 minutes later, it finally updates:

{"app":"myapp","appSet":"as","level":"info","msg":"updated Application","time":"2024-03-20T15:18:45Z"}

.. followed with an immediate unchanged Application

{"app":"myapp","appSet":"as","level":"info","msg":"unchanged Application","time":"2024-03-20T15:18:46Z"}

@pre
Copy link

pre commented Apr 17, 2024

I can confirm that ArgoCD v2.10.6 still has the issue: argocd-applicationset-controller webhook does not update the generated applications.

However, there is a change!

  • With v2.10.6 the log message is now generated 7 applications for each ApplicationSet
    • There is no longer a message about unchanged Application
  • But the application is generated using a cached targetRevision
    • ie. if previous target revision was v1 and new one is v2, the webhook regenerates v1 instead of v2.

Also, it's weird that when the update finally happens (after 10 minutes) the same Generated N applications is displayed 20 times within the same minute for the exact same *.yaml match. This did not happen in ArgoCD v2.9.8:

image

@pre
Copy link

pre commented May 14, 2024

Possible bugfix found in Slack:

I believe (didn't have time to test) we need to change:
https://github.com/argoproj/argo-cd/blob/master/applicationset/generators/git.go#L59
noRevisionCache := appSet.RefreshRequired() -> noRevisionCache := true

@q-lawrencewebber
Copy link

Hi do you know when this bug fix will be merged?

@pre
Copy link

pre commented May 17, 2024

Hi do you know when this bug fix will be merged?

Somebody should craft a pull request to figure out if the above is a proper fix. @anyone ?

@pre
Copy link

pre commented May 28, 2024

My theory is that the git generator fetches the manifests from the repo-server which caches the repository

Possibly relevant pieces of information from

@alen-z
Copy link

alen-z commented May 29, 2024

ApplicationSet not refreshed after webhook event if pullRequest generator is used. Would you like me to open a new ticket?

@pre
Copy link

pre commented May 29, 2024

I don’t think new tickets help, we’d need someone to look at the issue on the code level.

@q-lawrencewebber
Copy link

q-lawrencewebber commented May 29, 2024

Realised I needed to send webhook requests to the argocd-server and not the argocd applicationset-controller. When I correctly sent webhook events to argocd-server the applications refresh as expected upon receiving the event. The reason why I was initially getting a 404 was because my argocd server was configured with a rootpath of argocd, so the correct path for me was /argocd/api/webhook and not /api/webhook.

Basically I ran into skill issues :s

@pre
Copy link

pre commented May 30, 2024

You’re now talking about the application webook which does work.

The applicationset-webhook needs to be routed to applicationset-controller (instead of argocd-server), but the applicationset webhook does not refresh applications even though the webhook call is received and showing up in logs of applicationset-controller.

Ie. There are two separate webhooks.

@akii90
Copy link

akii90 commented Jul 12, 2024

Similar error in 2.11.2 ,git webhook didn't refresh my application.By the way, i use mutileplate source repo(helm and git ) and custom namespace.I didn't test git web hook for namespace argocd,so confused

@alexmt alexmt added component:api API bugs and enhancements type:bug labels Jul 12, 2024
@pre
Copy link

pre commented Jul 12, 2024

I didn't test git web hook for namespace argocd,so confused

You should see the webhook being received in the applicationset-controller logs. Then you have configured it correctly.

However, the target Application resources behind that ApplicationSet resource are still being cached by the git generator, and as a result, the applicationset-controller does not refresh any resources upon receiving the applicationset webhook.

@akii90
Copy link

akii90 commented Jul 12, 2024

You should see the webhook being received in the applicationset-controller logs. Then you have configured it correctly.

However, the target Application resources behind that ApplicationSet resource are still being cached by the git generator, and as a result, the applicationset-controller does not refresh any resources upon receiving the applicationset webhook.

I just tested the application not applicationset,when i configured git webhook firstly,encountered the error.I got the log in argocd-server,but application didn't refresh

time="2024-07-12T13:30:03Z" level=info msg="Received push event repo: http://***/configurations-non-production, revision: main, touchedHead: true"

@BFreitas16
Copy link

BFreitas16 commented Jul 19, 2024

I have a similar problem, but I am using Azure DevOps. From Azure DevOps, it says "Success" and I can see that ArgoCD responds with HTTP 200.

From the logs point of view, the argocd-server received the event, but nothing happens:
level=info msg="Received push event repo: XYZ, revision: ABC, touchedHead: true"

ArgoCD Version: v2.11.5

@pre
Copy link

pre commented Jul 19, 2024

From the logs point of view, the argocd-server received the event

The argocd-server handles the Application webhook, which doesn’t have an issue at least in ArgoCD 2.10.

This issue is about the ApplicationSet webhook which needs to be routed to the applicationset-controller. The ApplicationSet webhook does not currently refresh any git generator based Application resources.

@pantao24
Copy link

I also encountered a similar problem. After git repository was updated, Argocd was triggered for deployment through webhook, but Argocd occasionally did not respond, and it was necessary to REFRESH manually on the web page to display the configuration difference OutOfSync

@pre
Copy link

pre commented Jul 24, 2024

it was necessary to REFRESH manually on the web page to display the configuration difference OutOfSync

Refreshing does not help in this issue with applicationset-webhook. Even with a hard refresh, the cached resources are still being used by the statefulset/application-controller because the deployment/applicationset-controller did not invalidate the existing cache.

As a result, only waiting for 10 minutes +/- 3 minutes will eventually cause the git generator cache be regenerated and only after that the updated Application manifests will mark the existing Application resources OutOfSync.

This can be demonstrated easily by updating the targetRevision via ApplicationSet: even after Hard Refresh the previous targetRevision remains visible. Only after the git generator cache has expired, the new targetRevision will be updated.

@AsafZoki
Copy link

any solution that can work?
i do see the webhook is connected to my repo but my applications sets are not auto sync from the webhook I don't even see any log not in the argocd-server and the application-controller that mention something about the webhook
any fix??
argocd version: v2.10.4+f5d63a5

@zeusal
Copy link
Contributor

zeusal commented Aug 2, 2024

I have same issue with v2.10.7+b060053

@AsafZoki
Copy link

AsafZoki commented Aug 2, 2024

Well in order to make webhook to work on my github repo i just change the ingress of the webhook to navigate repo-server ingress abd it works just fine for me

@pre
Copy link

pre commented Aug 2, 2024

@AsafZoki you’re probably talking about the application webhook. That works.

The applicationset webhook is the one broken.

@rumstead
Copy link
Member

rumstead commented Aug 2, 2024

@pre could you please correct/confirm my understanding of what is happening?

You have some application ,appA. appA uses a branch as its targetRevision, test. You are pushing a commit to test and expecting the applicationset webhook to cause a resync on appA?

@pre
Copy link

pre commented Aug 2, 2024

@rumstead We have a repository ”release-control”.

  • This repository holds the information on which release version is deployed and where.
  • There are multiple yaml files each having the value for targetRevision.
  • targetRevision is a git tag, eg v1.2.3

Another repository ”continuous-delivery” contains the actual manifests of the application. The tag v1.2.3 exists in this repository.

We have various ApplicationSet resources which generate the Application resources with git generator, using *.yaml as the source from the ”release-control” repository. The targetRevision of Application is defined by ApplicationSet.

We can see applicationset-controller receives the webhook when ”release-control” is pushed with a new commit with an updated value for targetRevision.

Here we expect applicationset-controller to regenerate the Application resource(s) using this new value. However, unless the Redis cache is emptied, it will take 10min +/- 3 minutes until the new attributes are used. Even restarting applicationset-controller uses the previous values in ”release-control” until the Redis cache has expired.

This issue is not only about the applicationset-webhook. The issue is nothing except waiting for 10min +/- 3 minutes (or emptying Redis cache manually) will generate the Application resources with updated attributes from ”release-control”.

TargetRevision is just an example. I have tested with any values read from *.yaml by the appset and they are all cached.

I’m happy to provide more information, this issue is consistent and we want to help it get fixed.

@rumstead
Copy link
Member

rumstead commented Aug 2, 2024

Got it, I use a similar workflow without the webhook.

In a very basic setup, I cannot reproduce this. I see the revision cache returning the new commit and not using any cached files but grabbing the new ones from git and updating my application immediately.

Here is a snippet from the repo server logs, I added a log line when there is a cache miss.

{"level":"debug","msg":"cache hit for repo: https://github.com/rumstead/argocd-playground.git revision: cc3b9469e89dbd9831612f67b1c55450c117580b pattern: manifests/applicationsets/git-file/config/config.yaml","time":"2024-08-02T16:26:40-04:00"}

{"level":"info","msg":"cache miss for repo: https://github.com/rumstead/argocd-playground.git revision: fe8ac1e353f75464bf161f55e991c8fec1472348 pattern: manifests/applicationsets/git-file/config/config.yaml","time":"2024-08-02T16:28:28-04:00"}

Appset Logs

{"level":"info","msg":"Received push event repo: https://github.com/rumstead/argocd-playground.git, revision: main, touchedHead: true","time":"2024-08-02T16:28:28-04:00"}
{"level":"info","msg":"refresh ApplicationSet argocd/git-file from webhook","time":"2024-08-02T16:28:28-04:00"}
{"applicationset":{"Namespace":"argocd","Name":"git-file"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-02T16:28:30-04:00"}
{"applicationset":{"Namespace":"argocd","Name":"git-file"},"generator":{"git":{"repoURL":"https://github.com/rumstead/argocd-playground.git","files":[{"path":"manifests/applicationsets/git-file/config/config.yaml"}],"revision":"HEAD","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 1 applications","time":"2024-08-02T16:28:30-04:00"}

Sanity checks I was also slow to switch over to my terminal as I was looking at the logs.

❯ k get application git-file -o jsonpath="{.spec.source.targetRevision}" 16:26:53 PM
09dc43d39c9a0561c498c71d99f56e747d558593%
❯ k get application git-file -o jsonpath="{.spec.source.targetRevision}" 16:29:17 PM
HEAD%

The reason we see so many "generated applications" is because the applicationset gets updated 2 times during a webhook event. each update causes the applicationset to be requeued

  1. we add the refresh annotation - this is intended, to cause the applicationset controller to regenerate
  2. we remove the refresh annotation - this is a side effect of removing the annotation

EDIT:
Here is the applicationset
Here is the config file

I am also now realizing the repo-server log don't help much because we overload the revision variable.

@rumstead
Copy link
Member

rumstead commented Aug 2, 2024

If you look at the ApplicationSet controller logs and search for “end reconcile” for a single ApplicationSet, how long is between the two log messages?

@pre
Copy link

pre commented Aug 16, 2024

@rumstead There are some earlier timestemps above:

For the context, I'm using the argocd-ha manifests which come with the Redis cache with three instances.

Here's a fresh example run with ArgoCD 2.10.11.

  • There are multiple ApplicationSet resources generating Application resources from *.yaml in "release-control".
  • The "release-control" defines the targetRevision attribute for each Application.
  • In this test case, only a single resource "quota-calculator" was updated. This Application belongs to the "cloud-release-ag-service" ApplicationSet.
  • Change is commited to "release-control" at 06:09:40Z
  • Application resource was updated by applicationset-controller at 06:18:52Z
  • Logs of argocd-repo-server or argocd-application-controller do not show anything about the updated application (quota-calculator in this case) until applicationset-controller logs show updated Application. This clearly indicates this is an applicationset-controller problem.

The key word to watch from the applicationset-controller logs is updated Application. This keyword comes only after the Application resource is updated with the new information from *.yaml in the "release-control" repository.

In total the update took 9 minutes and 12 seconds, which fits the window of 10 minutes +/- 3 minutes.

The first end reconcile comes immediately, but the Application is not updated:

{"applicationset":{"Namespace":"argocd","Name":"cloud-release-bs-cluster-1"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/bs-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 7 applications","time":"2024-08-16T06:09:34Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-bs-cluster-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:09:34Z"}
{"level":"info","msg":"Received push event repo: https://github.enterprise.com/OurOrg/ourorg-release-control, revision: env/dev, touchedHead: false","time":"2024-08-16T06:09:40Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 19 applications","time":"2024-08-16T06:09:41Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:09:42Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-service"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-service/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 9 applications","time":"2024-08-16T06:09:50Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-service"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:09:51Z"}

Reconciling for 10 minutes, but the Application is not updated:

{"level":"info","msg":"Alloc=26607 TotalAlloc=13812576 Sys=58661 NumGC=845 Goroutines=92","time":"2024-08-16T06:10:05Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-cr-cluster-1"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/cr-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 13 applications","time":"2024-08-16T06:10:30Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-cr-cluster-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:10:30Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 19 applications","time":"2024-08-16T06:10:42Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:10:42Z"}
{"applicationset":{"Namespace":"argocd","Name":"pullrequest-frontend"},"generator":{"pullRequest":{"github":{"owner":"OurOrg","repo":"ourorg-frontend","api":"https://github.enterprise.com/","tokenRef":{"secretName":"git-credentials-ourorg-corp","key":"password"},"labels":["deploy-to-dev"]},"requeueAfterSeconds":300,"template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 15 applications","time":"2024-08-16T06:10:51Z"}
{"applicationset":{"Namespace":"argocd","Name":"pullrequest-frontend"},"level":"info","msg":"end reconcile","requeueAfter":300000000000,"time":"2024-08-16T06:10:52Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-cr-cluster-1"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/cr-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 13 applications","time":"2024-08-16T06:11:14Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-cr-cluster-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:11:14Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 19 applications","time":"2024-08-16T06:11:22Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:11:23Z"}
{"applicationset":{"Namespace":"argocd","Name":"app-runtime-bs-cluster"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"app-runtime/bs-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 1 applications","time":"2024-08-16T06:11:53Z"}
{"applicationset":{"Namespace":"argocd","Name":"app-runtime-bs-cluster"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:11:53Z"}
{"applicationset":{"Namespace":"argocd","Name":"app-runtime-ag-service"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"app-runtime/ag-service/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 2 applications","time":"2024-08-16T06:11:56Z"}
{"applicationset":{"Namespace":"argocd","Name":"app-runtime-ag-service"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:11:57Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-integration"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-integration/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 6 applications","time":"2024-08-16T06:12:25Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-integration"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:12:25Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-bs-cluster-1"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/bs-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 7 applications","time":"2024-08-16T06:12:34Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-bs-cluster-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:12:34Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 19 applications","time":"2024-08-16T06:12:42Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:12:43Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-service"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-service/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 9 applications","time":"2024-08-16T06:12:51Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-service"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:12:51Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 19 applications","time":"2024-08-16T06:13:12Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:13:13Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-cr-cluster-1"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/cr-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 13 applications","time":"2024-08-16T06:13:30Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-cr-cluster-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:13:31Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 19 applications","time":"2024-08-16T06:13:42Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:13:43Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 19 applications","time":"2024-08-16T06:14:12Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:14:13Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 19 applications","time":"2024-08-16T06:14:23Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:14:24Z"}
{"applicationset":{"Namespace":"argocd","Name":"app-runtime-bs-cluster"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"app-runtime/bs-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 1 applications","time":"2024-08-16T06:14:53Z"}
{"applicationset":{"Namespace":"argocd","Name":"app-runtime-bs-cluster"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:14:53Z"}
{"applicationset":{"Namespace":"argocd","Name":"app-runtime-ag-service"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"app-runtime/ag-service/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 2 applications","time":"2024-08-16T06:14:57Z"}
{"applicationset":{"Namespace":"argocd","Name":"app-runtime-ag-service"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:14:57Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-integration"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-integration/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 6 applications","time":"2024-08-16T06:15:25Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-integration"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:15:25Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-bs-cluster-1"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/bs-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 7 applications","time":"2024-08-16T06:15:34Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-bs-cluster-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:15:34Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 19 applications","time":"2024-08-16T06:15:43Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:15:43Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-service"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-service/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 9 applications","time":"2024-08-16T06:15:51Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-service"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:15:51Z"}
{"applicationset":{"Namespace":"argocd","Name":"pullrequest-frontend"},"generator":{"pullRequest":{"github":{"owner":"OurOrg","repo":"ourorg-frontend","api":"https://github.enterprise.com/","tokenRef":{"secretName":"git-credentials-ourorg-corp","key":"password"},"labels":["deploy-to-dev"]},"requeueAfterSeconds":300,"template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 15 applications","time":"2024-08-16T06:15:52Z"}
{"applicationset":{"Namespace":"argocd","Name":"pullrequest-frontend"},"level":"info","msg":"end reconcile","requeueAfter":300000000000,"time":"2024-08-16T06:15:52Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-cr-cluster-1"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/cr-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 13 applications","time":"2024-08-16T06:16:31Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-cr-cluster-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:16:31Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 19 applications","time":"2024-08-16T06:17:13Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:17:14Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 19 applications","time":"2024-08-16T06:17:24Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-cluster"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:17:24Z"}
{"applicationset":{"Namespace":"argocd","Name":"app-runtime-bs-cluster"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"app-runtime/bs-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 1 applications","time":"2024-08-16T06:17:53Z"}
{"applicationset":{"Namespace":"argocd","Name":"app-runtime-bs-cluster"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:17:53Z"}
{"applicationset":{"Namespace":"argocd","Name":"app-runtime-ag-service"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"app-runtime/ag-service/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 2 applications","time":"2024-08-16T06:17:57Z"}
{"applicationset":{"Namespace":"argocd","Name":"app-runtime-ag-service"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:17:57Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-integration"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-integration/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 6 applications","time":"2024-08-16T06:18:26Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-integration"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:18:26Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-bs-cluster-1"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/bs-cluster/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 7 applications","time":"2024-08-16T06:18:35Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-bs-cluster-1"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:18:35Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-service"},"generator":{"git":{"repoURL":"https://github.enterprise.com/OurOrg/ourorg-release-control","files":[{"path":"cloud-release/ag-service/*.yaml"}],"revision":"env/dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 9 applications","time":"2024-08-16T06:18:51Z"}

After 10 minutes the Application got updated, notice the keyword updated Application:

{"app":"argocd/quota-calculator","applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-service"},"level":"info","msg":"updated Application","time":"2024-08-16T06:18:52Z"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-service"},"level":"info","msg":"end reconcile","requeueAfter":180000000000,"time":"2024-08-16T06:18:52Z"}

First mention of the updated Application (quota-calculator) in the application-controller logs is only after applicationset-controller shows updated Application, timestamp 06:18:52Z

{"application":"argocd/quota-calculator","level":"info","msg":"Refreshing app status (spec.source differs), level (3)","time":"2024-08-16T06:18:52Z"}
{"application":"argocd/quota-calculator","level":"info","msg":"Comparing app state (cluster: https://kubernetes.default.svc, namespace: quota-calculator)","time":"2024-08-16T06:18:52Z"}

Same with argocd-repo-server: first mention is only after updated Application is already showing in applicationset-controller logs, timestamp 06:18:52Z:

{"level":"info","msg":"manifest cache miss: \u0026ApplicationSource{RepoURL:[...]:"2024-08-16T06:18:52Z"}

@pre
Copy link

pre commented Aug 16, 2024

Could someone please rename this issue title to ApplicationSet webhook does not refresh Applications?

This issue is about the applicationset-controller. The normal Application webhook works!

There were some fix attempts in v2.8.8 but they didn't work.

@rumstead
Copy link
Member

@pre can you share your appset?

@pre
Copy link

pre commented Aug 23, 2024

@rumstead certainly I can! Here's an example where I changed OurOrg and acme as names, but otherwise these are real manifests:

  • ApplicationSet
apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
  name: cloud-release-ag-service
  namespace: argocd
spec:
  generators:
  - git:
      files:
      - path: cloud-release/ag-service/*.yaml
      repoURL: https://github.enterprise.com/OurOrg/acme-release-control
      revision: env/dev
  template:
    metadata:
      name: '{{acmeService.name}}'
    spec:
      destination:
        namespace: '{{acmeService.namespace}}'
        server: https://kubernetes.default.svc
      project: ag-service
      source:
        path: design-time/ag-service/{{acmeService.name}}/dev
        plugin:
          env:
          - name: AG_APP_NAMESPACE
            value: '{{acmeService.namespace}}'
          - name: AG_ENVSUBST_SOURCE
            value: design-time/common/ag-envsubst/dev
          - name: AG_TARGET_REVISION
            value: '{{release.targetRevision}}'
          name: kustomize-agenvsubst-vault
        repoURL: https://github.enterprise.com/OurOrg/acme-continuous-delivery
        targetRevision: '{{release.targetRevision}}'
      syncPolicy:
        automated:
          prune: true
          selfHeal: true
        syncOptions:
        - CreateNamespace=true
  • Example resource in our acme-release-control-repository which matches the *.yaml in ApplicationSet
# acme-release-control/cloud-release/ag-service/quota-calculator.yaml 
acmeService:
  name: quota-calculator
  namespace: quota-calculator

release:
  targetRevision: v3.7.0

@pre
Copy link

pre commented Aug 29, 2024

For the record, the issue is still in ArgoCD v2.12.2

@rumstead
Copy link
Member

I am still unable to reproduce. I changed the targetRevision from v3.7.0 to test, which happened almost instantly once the webhook fired.

{"level":"info","msg":"Received push event repo: https://github.com/rumstead/argocd-playground.git, revision: dev, touchedHead: false","time":"2024-08-30T15:35:11-04:00"}
{"level":"debug","msg":"https://github.com/rumstead/argocd-playground.git uses repoURL dev","time":"2024-08-30T15:35:11-04:00"}
{"level":"info","msg":"refresh ApplicationSet argocd/cloud-release-ag-service from webhook","time":"2024-08-30T15:35:11-04:00"}
{"applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-service"},"generator":{"git":{"repoURL":"https://github.com/rumstead/argocd-playground.git","files":[{"path":"manifests/applicationsets/webhook-15427/cloud-release/ag-service/*.yaml"}],"revision":"dev","template":{"metadata":{},"spec":{"destination":{},"project":""}}}},"level":"info","msg":"generated 1 applications","time":"2024-08-30T15:35:15-04:00"}
{"app":"argocd/quota-calculator","applicationset":{"Namespace":"argocd","Name":"cloud-release-ag-service"},"level":"debug","msg":"patching application","patch":{"spec":{"source":{"targetRevision":"test"}}},"time":"2024-08-30T15:35:15-04:00"}

What does the workqueue look like for applicationset controller? Do you see it going to 0? It is exposed via the workqueue_depth{app_name="argocd-applicationset-controller"} metric

@pre
Copy link

pre commented Sep 2, 2024

Thank you for testing, @rumstead! Did you try updating an existing Application, which had already been created? Creation of an Application is always instant, it's the update which takes between 6-13 minutes.

I also tested by creating a public test in https://github.com/pre/public-argocd-test-release-control/blob/main/release/example-application.yaml

Using this ApplicationSet

apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
  name: public-test-1
  namespace: argocd
spec:
  generators:
  - git:
      files:
      - path: release/*.yaml
      repoURL: https://github.com/pre/public-argocd-test-release-control
      revision: main
  template:
    metadata:
      name: example-{{acmeService.name}}
    spec:
      destination:
        namespace: '{{acmeService.namespace}}'
        server: https://kubernetes.default.svc
      project: ag-service
      source:
        path: design-time/ag-service/{{acmeService.name}}/int
        plugin:
          env:
          - name: AG_APP_NAMESPACE
            value: '{{acmeService.namespace}}'
          - name: AG_ENVSUBST_SOURCE
            value: design-time/common/ag-envsubst/dev
          - name: AG_TARGET_REVISION
            value: '{{release.targetRevision}}'
          - name: EXAMPLE_RELEASE_CONTROL_VALUE
            value: '{{release.acmeValue}}'
          name: kustomize-agenvsubst-vault
        repoURL: https://github.enterprise.com/acme/acme-continuous-delivery
        targetRevision: '{{release.targetRevision}}'
      syncPolicy:
        automated:
          prune: true
          selfHeal: true
        syncOptions:
        - CreateNamespace=true
  1. When I publish the AppSet: example application acme-calculator gets immediately created if it already exists in public-argocd-test-release-control.

  2. When I create release/example-application.yaml and the AppSet manifest has already been applied in Kubernetes: acme-calculator gets immediately created.

In these two cases the webhook works.

  1. When changing acmeValue: lolcat-<num> or targetRevision: petrus-test-<num> after the Application has already been created into the cluster, it takes 10 -/+ 3 minutes for applicationset-controller to update the Application.

The workqueue metric workqueue_depth{name="applicationset"} 0 .. stays between 0 and 1.

Timestamps

image

Grafana

We have the default ArgoCD Grafana dashboard (it doesn't seem to have ApplicationSet metrics), here is a snapshot from the test bench during the time of my test:

image
image
image
image

@pre
Copy link

pre commented Sep 2, 2024

Scrap that above - my test repository's github.com webhook was not correct. I'll try again.

@pre
Copy link

pre commented Sep 2, 2024

All right - I fixed my webhook in the github.com test example repository, and it works:

{"level":"info","msg":"Received push event repo: https://github.com/pre/public-argocd-test-release-control, revision: main, touchedHead: true","time":"2024-09-02T14:08:15Z"}
{"level":"info","msg":"refresh ApplicationSet argocd/public-test-1 from webhook","time":"2024-09-02T14:08:15Z"}

The message refresh ApplicationSet xxx from webhook message does NOT appear when the webhook is received in the repository of the Github Enterprise server.

So .. there is some difference in the webhook payload between github.com and Github Enterprise (currently v3.11.14).

I ran out of time today - next I will set up a test bench that let's me compare the webhook's payload between github.com and Github Enterprise.

@rumstead
Copy link
Member

rumstead commented Sep 2, 2024

Awesome! I know it doesn’t fix the issue but at least gives us a hint.

@pre
Copy link

pre commented Sep 3, 2024

I did some further digging, and now I can reproduce the problem also with the github.com webhook.

Summary: Webhook does not work with git tags or branches which contain the character /. @rumstead Could you try your repro again with two AppSets, one tracking main and the other tracking eg. env/hello ?

apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
  name: public-test-5
  namespace: argocd
spec:
  generators:
  - git:
      files:
      - path: release/*.yaml
      repoURL: https://github.com/pre/public-argocd-test-release-control
      revision: env/hello # <-- does not work with the slash, but "main" and "dev" do work
[..]

I inspected the webhook payload between Github Enterprise and Github.com - the payloads are equivalent, only difference are the organization and enterprise attributes which were not delivered by github.com. The only thing different with my working example yesterday was the branch name: main without a slash.

My reproduction in github.com where the ApplicationSet webhook does not work:

  • ApplicationSet A tracks branch main, it receives the webhook and produces the refresh ApplicationSet message.
{"level":"info","msg":"Received push event repo: https://github.com/pre/public-argocd-test-release-control, revision: main, touchedHead: true","time":"2024-09-03T13:45:13Z"}
{"level":"info","msg":"refresh ApplicationSet argocd/public-test-2 from webhook","time":"2024-09-03T13:45:13Z"}
  • ApplicationSet B tracks branch env/hello. It receives the webhook but does not produce the refresh ApplicationSet message.
{"level":"info","msg":"Received push event repo: https://github.com/pre/public-argocd-test-release-control, revision: env/hello, touchedHead: false","time":"2024-09-03T13:43:02Z"}
  • ApplicationSet C tracks git tag v1.0.0. It behaves like ApplicationSet B.

Also notable: The git repository cache is not updated for env/xyz or v1.0.0 when the webhook arrives. Here's an interesting set of events:

  • ApplicationSet A (tracking main) was already deployed, and it updates manifests immediately with the Webhook.
  • Create branch env/hello after ApplicationSet A already read the repository using main.
  • Create ApplicationSet B which tracks env/hello

-> ApplicationSet B will fail with Internal desc = unable to resolve git revision : Unable to resolve 'env/hello' upon receiving the webhook.

After waiting for ~10 minutes, ApplicationSet B will generate the Application and see that env/hello actually exists.

If changes are pushed to main (or any other branch without the / character in its name), they do work immediately with ApplicationSet A even though ApplicationSet B is broken (with stale git repository cache).

I guess the tags break because internally eg. v1.0.0 is something likerefs/tags/v1.0.0 -- with a slash.

Test script

Using my example ApplicationSet above, I tracked a value in source.plugin.env which was defined in https://github.com/pre/public-argocd-test-release-control.

Polling the value of EXAMPLE_RELEASE_CONTROL_VALUE shows when the value actually updates (either seconds after git push by webhook, or ~10 minutes after some caches expire).

while true; do 
  kubectl get app -n argocd example-envhello-acme-calculator -o jsonpath='{.spec.source.plugin.env[3]}' 
  date  
  sleep 1
done

@rumstead
Copy link
Member

rumstead commented Sep 3, 2024

This is extremely helpful, I found the issue. GitHub sends the full branch ref eg, refs/heads/env/dev. There is code to parse out the revision which will correctly parse out env/dev. However, in the appset, we use the shorthand, env/dev which gets parsed out incorrectly to dev.

I will submit a PR

@rumstead
Copy link
Member

rumstead commented Sep 3, 2024

/assign rumstead

@rumstead
Copy link
Member

rumstead commented Sep 3, 2024

The alternative to my PR is to use the fully qualified refs git generator. Eg, refs/heads/env/dev or refs/tags/v3.14.1

@pre
Copy link

pre commented Sep 4, 2024

Thanks, @rumstead!

I tested prepending the git revision with refs/heads/ and the ApplicationSet webhook now works! Hopefully we'll get that bugfix into upstream as well. Thank you for the help!

gdsoumya pushed a commit that referenced this issue Sep 5, 2024
…19783)

* fix(appset): allow for shorthand git refs in git generators

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* Retrigger CI pipeline

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* attempt to fix goimports

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* attempt to fix goimports

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* remove redundant test

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

---------

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>
oleksandr-codefresh added a commit to codefresh-io/argo-cd that referenced this issue Jan 9, 2025
* chore: remove unused params (#19473)

* chore: remove unused params

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* more

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix: selfHeal should always be respected with Multi-Source Apps #19452 (#19512)

* fix(controller): selfHeal respected in multi-source apps
when there is object change in cluster

Signed-off-by: Eric Lin <38420555+Ezzahhh@users.noreply.github.com>

* fix: tests for multi source selfheal

Signed-off-by: Ezzahhh <38420555+Ezzahhh@users.noreply.github.com>

---------

Signed-off-by: Eric Lin <38420555+Ezzahhh@users.noreply.github.com>
Signed-off-by: Ezzahhh <38420555+Ezzahhh@users.noreply.github.com>

* chore(deps): bump library/registry in /test/container (#19207)

Bumps library/registry from `79b2959` to `1212042`.

---
updated-dependencies:
- dependency-name: library/registry
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: notifications triggered from CLI fails for repo functions (#19213)

Signed-off-by: Jayendra Parsai <jparsai@jparsai-thinkpadp1gen4i.remote.csb>
Co-authored-by: Jayendra Parsai <jparsai@jparsai-thinkpadp1gen4i.remote.csb>

* feat: Support context switch for argocd-util (#19549)

* feat: Support context switch for argocd-util

Signed-off-by: Atsushi Neki <nekiaiken@gmail.com>

* execute codegen

Signed-off-by: pashakostohrys <pavel@codefresh.io>

---------

Signed-off-by: Atsushi Neki <nekiaiken@gmail.com>
Signed-off-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: pasha-codefresh <pavel@codefresh.io>
Signed-off-by: pashakostohrys <pavel@codefresh.io>
Co-authored-by: Atsushi Neki <nekiaiken@gmail.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>

* fix appset-in-any-namespace issue with git generators (#19553)

Signed-off-by: Ishita Sequeira <ishiseq29@gmail.com>

* chore: add e2e test for admin import & export (#19564)

* docs: fix typo (#19567)

Signed-off-by: Nolan Emirot <emirot.nolan@gmail.com>

* chore(deps): bump bitnami/kubectl from 1.30 to 1.31 in /test/container (#19541)

Bumps bitnami/kubectl from 1.30 to 1.31.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump github.com/prometheus/client_golang (#19544)

Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.19.1 to 1.20.0.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.19.1...v1.20.0)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jann Fischer <jann@mistrust.net>

* fix: 'argocd admin settings rbac can' - yaml loading problem(#19403) (#19575)

fixes: #19403

Signed-off-by: Eugene Kim <eugene70kim@gmail.com>

* docs: Added SecurityGroup for groups TokenIDClaims (#19591)

Signed-off-by: Joshua Ghali <jjghali@protonmail.ch>

* feat: add proxy to kustomize build operations (#18551)

Signed-off-by: Nathanael Liechti <technat@technat.ch>

* feat: allow no_proxy to be specified on repoCreds (#18526)

Signed-off-by: Nathanael Liechti <technat@technat.ch>

* ci: upload test results to codecov (#19476)

* feat(ci): upload test results to codecov

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* only run on master

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* chore(deps): bump github.com/prometheus/client_golang (#19609)

Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.20.0 to 1.20.1.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/v1.20.1/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.20.0...v1.20.1)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: appset register rollout progressing status and correct parametersgenerated status to prevent update loop (#19613)

* fix status and update loop

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* add tests

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* lint

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

---------

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* feat(dex): set logger based on argo config (#13191) (#19608)

* feat(dex): set logger based on argo config

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* add env config

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* organize import bug?

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

---------

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* mark multiple sources feature as stable (#19594)

Signed-off-by: Ishita Sequeira <ishiseq29@gmail.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>

* fix dark mode logs fullscreen display not properly (#19505)

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>
Co-authored-by: Jessie Teng <jessie.teng@fmr.com>

* docs: fix stable message (#19334)

* docs: fix stable message

Signed-off-by: Junseokee <weq156@naver.com>

* docs: fix stable message

Signed-off-by: Junseokee <weq156@naver.com>

---------

Signed-off-by: Junseokee <weq156@naver.com>

* improve filter component color contrast (#19468)

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>
Co-authored-by: Jessie Teng <jessie.teng@fmr.com>

* fix: cache helm-index in Redis cluster (#12314) (#19530)

* fix: cache helm-index in Redis cluster

Signed-off-by: JenTing Hsiao <hsiaoairplane@gmail.com>

* Update repository.go

Fix order

Signed-off-by: Dan Garfield <dan@codefresh.io>

---------

Signed-off-by: JenTing Hsiao <hsiaoairplane@gmail.com>
Signed-off-by: Dan Garfield <dan@codefresh.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>

* fix: Floating title content incorrect for multi-sources (#17274) (#19623)

Signed-off-by: Keith Chong <kykchong@redhat.com>

* doc: fix bullet rendering in config-management-plugin-v2.md (#19626)

Bullets need to start with blank line, otherwise they don't render on read the docs. GitHub markdown doesn't require them but read the docs does

Signed-off-by: Cornelius Roemer <cornelius.roemer@gmail.com>

* fix(appset): migrateStatus updates appset pointer after updating (#19619)

# Context:
  `migrateStatus` updates the status of the appset but after succeeding
  it does not update the in memory object which means that that new
  updates may fail due to conflict since it's comparing it to the
  object previous to updating it in `migrateStatus`.

  # What does this PR?
  - After updating the appset object in `migrateStatus` it gets the
    object again to reference it in the appset pointer of the
    reconciler.

Signed-off-by: Carlos Rejano <carlosrejanoromeu@gmail.com>

* fix(#16842): system level extensions not working properly (#19612)

* use event to notify extensions changes

Signed-off-by: Yiwei Gong <imwithye@gmail.com>

* use custom event target implementation

Signed-off-by: Yiwei Gong <imwithye@gmail.com>

---------

Signed-off-by: Yiwei Gong <imwithye@gmail.com>

* chore(deps): bump library/golang in /test/container (#19540)

Bumps library/golang from `a400dc7` to `8e529b6`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: Cleanup some timing checkpoints (#19517)

Adding same checkpoint in a loop would be misleading with multiple sources, also unmarshal checkpoint has a wrong name if there's a loop.
Remove checkpoints in the loop and rename the unmarshal checkpoint.

Signed-off-by: Andrii Korotkov <andrii.korotkov@verkada.com>

* fix(appset): informer is not a kubernetes informer (#18905) (#19618)

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* feat: Add EndpointSlice to resource icon (#19362)

- Add EndpointSlice to resourceIcons map

Signed-off-by: Mike <mike.kangaroo.world@gmail.com>
Co-authored-by: AS <11219262+ashutosh16@users.noreply.github.com>

* update the web based terminal docs (#19621)

add fixes for the docs



resolve minor fix

Signed-off-by: nitishfy <justnitish06@gmail.com>

* nit (#19639)

Signed-off-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com>

* fix: apps summary view health icon&name alignment (#19450)

* fix apps summary view health icon&name alignment

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>

* fix unit tests

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>

---------

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>
Co-authored-by: Jessie Teng <jessie.teng@fmr.com>

* chore: Clarify the meaning of secret exfiltration via ApplicationSet (issue #18560) (#19000)

* Chore: Clarify the meaning of secret exfiltration via ApplicationSet in any namespace

Signed-off-by: TheCoolDrop <vanio.begic123@gmail.com>
Signed-off-by: Vanio Begic <vanio.begic123@gmail.com>

* chore: Fix typo

Signed-off-by: Vanio Begic <vanio.begic123@gmail.com>

---------

Signed-off-by: TheCoolDrop <vanio.begic123@gmail.com>
Signed-off-by: Vanio Begic <vanio.begic123@gmail.com>

* feat: Implement cluster-api MachinePool CRD health checks (#19595)


Signed-off-by: afarbos <farbos.arnaud@gmail.com>

---------

Signed-off-by: Arnaud Farbos <farbos.arnaud@gmail.com>
Signed-off-by: afarbos <farbos.arnaud@gmail.com>

* fix: set GOMAXPROCS automatically with uber-go/automaxprocs (#16528)

Signed-off-by: Brightside56 <o.gumbar56@gmail.com>
Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>
Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* chore(deps): bump github.com/google/btree from 1.1.2 to 1.1.3 (#19633)

Bumps [github.com/google/btree](https://github.com/google/btree) from 1.1.2 to 1.1.3.
- [Commits](https://github.com/google/btree/compare/v1.1.2...v1.1.3)

---
updated-dependencies:
- dependency-name: github.com/google/btree
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(tests): speed up unit tests (#19617)

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix(appset): remove cache references (#19647)

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* chore: enable lint for deprecated symbols (#19651)

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* chore(deps): bump k8s libs from 0.29.6 to 0.30.4 (#19074)

* chore(deps): bump k8s libs from 0.29.6 to 0.30.2

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* latest commit

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* update known types

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump controller-runtime to a version that's compatible with go-client 0.30.x

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* update go-to-protobuf flag

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* handle new requirements for proto file locations

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump gitops-engine version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix openapigen

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* remove toolchain

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump gitops-engine version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* no need for replace now

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* chore: bump k8s to 1.31 (#19654)

* chore(deps): bump k8s libs from 0.29.6 to 0.30.2

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* latest commit

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* update known types

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump controller-runtime to a version that's compatible with go-client 0.30.x

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* update go-to-protobuf flag

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* handle new requirements for proto file locations

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump gitops-engine version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix openapigen

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* remove toolchain

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* bump gitops-engine version

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* chore: enable lint for deprecated symbols

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* chore: bump to k8s 1.31

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* codegen

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* don't be generic if you don't have to be

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* don't be generic if you don't have to be

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* new commit

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* use gitops-engine commit

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

---------

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* chore(deps): bump go.opentelemetry.io/otel/sdk from 1.28.0 to 1.29.0 (#19673)

Bumps [go.opentelemetry.io/otel/sdk](https://github.com/open-telemetry/opentelemetry-go) from 1.28.0 to 1.29.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.28.0...v1.29.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/otel/sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump micromatch from 4.0.5 to 4.0.8 in /ui (#19672)

Bumps [micromatch](https://github.com/micromatch/micromatch) from 4.0.5 to 4.0.8.
- [Release notes](https://github.com/micromatch/micromatch/releases)
- [Changelog](https://github.com/micromatch/micromatch/blob/4.0.8/CHANGELOG.md)
- [Commits](https://github.com/micromatch/micromatch/compare/4.0.5...4.0.8)

---
updated-dependencies:
- dependency-name: micromatch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix(ui): extension can crash outside of error boundary (#19667)

Signed-off-by: Remington Breeze <remington@breeze.software>

* test: skip flaky logs tests (#13398)


Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>
Co-authored-by: Blake Pettersson <blake.pettersson@gmail.com>

* [Bot] docs: Update Snyk reports (#19679)

Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>

* chore(deps): bump go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc (#19683)

Bumps [go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc](https://github.com/open-telemetry/opentelemetry-go-contrib) from 0.53.0 to 0.54.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go-contrib/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go-contrib/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go-contrib/compare/zpages/v0.53.0...zpages/v0.54.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump github.com/prometheus/client_golang (#19682)

Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.20.1 to 1.20.2.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.20.1...v1.20.2)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* docs: note cluster scoping changes in 2.12x (#19684)

* docs: note cluster scoping changes in 2.12x

Related to #18748,#19585 and #19587.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* docs: add note in projects doc.

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

---------

Signed-off-by: Blake Pettersson <blake.pettersson@gmail.com>

* feat: introduce health checks for MonoVertexRollouts (#19688)


Signed-off-by: Dillen Padhiar <dillen_padhiar@intuit.com>

* feat: Add applicationset metrics (#19691)

* add appset metrics

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* cleanup

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* cleanup

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* address comments and fix test parallelism issue

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* fix controller unit tests - add metrics to tests

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* lint

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* lint

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* Add FakeAppsetMetrics to clear up registry and create metrics structure for tests without causing collisions

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* Change fake metrics implementation

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

* Fix typo

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>

---------

Signed-off-by: Ilia Medvedev <ilia.medvedev@codefresh.io>
Co-authored-by: pashakostohrys <pavel@codefresh.io>

* chore(deps): bump chromedriver from 127.0.3 to 128.0.0 in /ui-test (#19635)

Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 127.0.3 to 128.0.0.
- [Commits](https://github.com/giggio/node-chromedriver/compare/127.0.3...128.0.0)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat: Allow disabling TLS from notifications controller and reposerver (#19630)

Signed-off-by: Matthew Wynn <matthew@matthewwynn.com>

* chore(deps-dev): bump @types/node from 22.3.0 to 22.5.1 in /ui-test (#19706)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.3.0 to 22.5.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump github.com/Masterminds/semver/v3 from 3.2.1 to 3.3.0 (#19705)

Bumps [github.com/Masterminds/semver/v3](https://github.com/Masterminds/semver) from 3.2.1 to 3.3.0.
- [Release notes](https://github.com/Masterminds/semver/releases)
- [Changelog](https://github.com/Masterminds/semver/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Masterminds/semver/compare/v3.2.1...v3.3.0)

---
updated-dependencies:
- dependency-name: github.com/Masterminds/semver/v3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: remove unnecessary 'replace' in go.mod (#19668)

Signed-off-by: Michael Crenshaw <350466+crenshaw-dev@users.noreply.github.com>

* fix clipboard copy duration issue (#19662)

Signed-off-by: Zhao, Olivia <xueming.zhao@fmr.com>

* fix: 'argocd admin settings rbac can' command should honor server.rbac.log.enforce.enable param in argocd-cm (#19264)

* feat: implement 'argocd admin appset generate' to troubeshoot appsets (#19518)

* feat: implement 'argocd appset generate' to troubeshoot appsets

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

* remove unnecessary ErrorLog field

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

* apply reviewer suggestions

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

---------

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

* fix background colore issue in dark theme (#19464)

Signed-off-by: Shi, Stone <jiadong.shi@fmr.com>

* fix: diffing should not fail if resource fail schema validation (#19714)

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

* fix: ApplicationSet e2e TestSyncPolicyCreateUpdate&TestSyncPolicyCreateOnly test race condition bug #19577 (#19578)

* fixed e2e TestSyncPolicyCreateUpdate&TestSyncPolicyCreateOnly bug

Signed-off-by: Li. Sparks <15156525868@163.com>

* format

Signed-off-by: Li. Sparks <15156525868@163.com>

* change the comment, explain why apps still exists

Signed-off-by: Li. Sparks <15156525868@163.com>

---------

Signed-off-by: Li. Sparks <15156525868@163.com>

* feat(ui): add extension the top-bar action menu (#19620)

* add topbar action menu  ext
Signed-off-by: AS <11219262+ashutosh16@users.noreply.github.com>
Co-authored-by: ashutosh16 <ashutosh_singh@intuit.com>
Co-authored-by: Anton Gilgur <4970083+agilgur5@users.noreply.github.com>

* feat: reduce redis traffic caused by app resource tree updates in redis (#19722)

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

* fix(ui): fix create app panel reappear after closed (#19717)

Signed-off-by: henry.liu <henry.liu@daocloud.io>

* fix(ui): container state (#18928)

Signed-off-by: ashutosh16 <ashutosh_singh@intuit.com>
Co-authored-by: ashutosh16 <ashutosh_singh@intuit.com>

* fix: open new tab for repo url (#19736)

* open new tab for repo url

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>

* fix yarn lint issue

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>

---------

Signed-off-by: Jessie Teng <jessie.teng@fmr.com>
Co-authored-by: Jessie Teng <jessie.teng@fmr.com>

* fix: Refine resource option evaluation for `argocd app sync` command (#17397) (#19579)

This update refactors the `IncludeResource` logic to improve accuracy in resource filtering.
Also, it includes new test cases to ensure the correctness of the changes.

Fixes: #17397

Changes:
- Rewritten `IncludeResource` function for better logic flow.
- Added unit tests to validate the new behavior.
- Found that two existing test cases were incorrect and fixed them. A closer review of this part is needed.

Signed-off-by: Eugene Kim <eugene70kim@gmail.com>

* chore(deps-dev): bump @types/node from 22.5.1 to 22.5.2 in /ui-test (#19749)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.5.1 to 22.5.2.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump library/busybox in /test/e2e/multiarch-container (#19752)

Bumps library/busybox from `9ae97d3` to `8274294`.

---
updated-dependencies:
- dependency-name: library/busybox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump github.com/mattn/go-zglob from 0.0.4 to 0.0.6 (#19755)

Bumps [github.com/mattn/go-zglob](https://github.com/mattn/go-zglob) from 0.0.4 to 0.0.6.
- [Commits](https://github.com/mattn/go-zglob/compare/v0.0.4...v0.0.6)

---
updated-dependencies:
- dependency-name: github.com/mattn/go-zglob
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump chromedriver from 128.0.0 to 128.0.1 in /ui-test (#19748)

Bumps [chromedriver](https://github.com/giggio/node-chromedriver) from 128.0.0 to 128.0.1.
- [Commits](https://github.com/giggio/node-chromedriver/compare/128.0.0...128.0.1)

---
updated-dependencies:
- dependency-name: chromedriver
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump github.com/casbin/casbin/v2 from 2.98.0 to 2.99.0 (#19754)

Bumps [github.com/casbin/casbin/v2](https://github.com/casbin/casbin) from 2.98.0 to 2.99.0.
- [Release notes](https://github.com/casbin/casbin/releases)
- [Changelog](https://github.com/casbin/casbin/blob/master/.releaserc.json)
- [Commits](https://github.com/casbin/casbin/compare/v2.98.0...v2.99.0)

---
updated-dependencies:
- dependency-name: github.com/casbin/casbin/v2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps-dev): bump webpack from 5.84.1 to 5.94.0 in /ui (#19713)

Bumps [webpack](https://github.com/webpack/webpack) from 5.84.1 to 5.94.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.84.1...v5.94.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump library/node from 22.3.0 to 22.7.0 (#19659)

Bumps library/node from 22.3.0 to 22.7.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump library/node from 22.5.1 to 22.7.0 in /test/container (#19658)

Bumps library/node from 22.5.1 to 22.7.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump library/node from 22.5.1 to 22.7.0 in /ui-test (#19656)

Bumps library/node from 22.5.1 to 22.7.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump github.com/xanzy/go-gitlab from 0.107.0 to 0.108.0 (#19690)

Bumps [github.com/xanzy/go-gitlab](https://github.com/xanzy/go-gitlab) from 0.107.0 to 0.108.0.
- [Release notes](https://github.com/xanzy/go-gitlab/releases)
- [Changelog](https://github.com/xanzy/go-gitlab/blob/main/releases_test.go)
- [Commits](https://github.com/xanzy/go-gitlab/compare/v0.107.0...v0.108.0)

---
updated-dependencies:
- dependency-name: github.com/xanzy/go-gitlab
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump github.com/Masterminds/sprig/v3 from 3.2.3 to 3.3.0 (#19737)

Bumps [github.com/Masterminds/sprig/v3](https://github.com/Masterminds/sprig) from 3.2.3 to 3.3.0.
- [Release notes](https://github.com/Masterminds/sprig/releases)
- [Changelog](https://github.com/Masterminds/sprig/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Masterminds/sprig/compare/v3.2.3...v3.3.0)

---
updated-dependencies:
- dependency-name: github.com/Masterminds/sprig/v3
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* [Bot] docs: Update Snyk reports (#19745)

Signed-off-by: CI <ci@argoproj.com>
Co-authored-by: CI <ci@argoproj.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>

* chore(deps): bump bitnami/kubectl in /test/container (#19753)

Bumps bitnami/kubectl from `44f99aa` to `96ef4d3`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>

* fix: pass the correct parameter for strict tls validation in applicationset controller (#19759)

Signed-off-by: ignas-kaziukenas_css <ignas.kaziukenas@cloudkitchens.com>
Co-authored-by: ignas-kaziukenas_css <ignas.kaziukenas@cloudkitchens.com>

* feat(util/notification): add duration and timestamp constants from stdlib time package (#10706)

* feat(util/notification): add duration and timestamp constants from stdlib time package

Signed-off-by: George MacRorie <me@georgemac.com>

* chore(docs): add details on new time constants

Signed-off-by: George MacRorie <me@georgemac.com>

* chore: run go mod tidy

Signed-off-by: George MacRorie <me@georgemac.com>

* chore(util/notification): use require.NoError instead of require.Nil

Signed-off-by: George MacRorie <me@georgemac.com>

* chore: go mod tidy

Signed-off-by: George MacRorie <me@georgemac.com>

---------

Signed-off-by: George MacRorie <me@georgemac.com>

* fix(ui): Added field bottom for Username and Passsword (#19762)

* auth-field

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* lint-fix

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

---------

Signed-off-by: Surajyadav <harrypotter1108@gmail.com>

* fix(ui): reload credential template list after refresh (#19764)

Signed-off-by: henry.liu <henry.liu@daocloud.io>

* fix: Fix semver resolution (#19644)

Signed-off-by: Pierre Lebrun <pierreyves.lebrun@gmail.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>

* fix(ui): fix first line log timestamp (#19724)

Signed-off-by: henry.liu <henry.liu@daocloud.io>
Co-authored-by: Dan Garfield <dan@codefresh.io>

* chore(deps): bump library/node from 22.7.0 to 22.8.0 (#19779)

Bumps library/node from 22.7.0 to 22.8.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump library/node from 22.7.0 to 22.8.0 in /test/container (#19778)

Bumps library/node from 22.7.0 to 22.8.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps-dev): bump @types/node from 22.5.2 to 22.5.3 in /ui-test (#19777)

Bumps [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) from 22.5.2 to 22.5.3.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump library/node from 22.7.0 to 22.8.0 in /ui-test (#19775)

Bumps library/node from 22.7.0 to 22.8.0.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump actions/upload-artifact from 4.3.6 to 4.4.0 (#19751)

Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 4.3.6 to 4.4.0.
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/834a144ee995460fba8ed112a2fc961b36a5ec5a...50769540e7f4bd5e21e526ee35c689e35e0d6874)

---
updated-dependencies:
- dependency-name: actions/upload-artifact
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* docs: update keycloak.md (#17684)

* Update keycloak.md

The documentation is excellent, but after following it, i'v experienced an issue 401, and the UI loop to login, to fix it i restarted the argocd-server pod then it' worked well.

Signed-off-by: abdaziz <abdazizg@gmail.com>

* Update keycloak.md

update the requested changes from @wanghong230

Signed-off-by: abdaziz <abdazizg@gmail.com>

* Update keycloak.md

Signed-off-by: abdaziz <abdazizg@gmail.com>

* Update keycloak.md

good format.

Signed-off-by: abdaziz <abdazizg@gmail.com>

---------

Signed-off-by: abdaziz <abdazizg@gmail.com>

* chore: add gcflags option when build in cli-local command (#19742)

Signed-off-by: daengdaengLee <gunho1020@gmail.com>

* chore(deps): bump peter-evans/create-pull-request from 6.1.0 to 7.0.0 (#19776)

Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 6.1.0 to 7.0.0.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/c5a7806660adbe173f04e3e038b0ccdcd758773c...4320041ed380b20e97d388d56a7fb4f9b8c20e79)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(lint): errors reported by golangci-lint: S1009: should omit nil check; printf: non-constant format string (#19773)

Signed-off-by: Cheng Fang <cfang@redhat.com>
Co-authored-by: pasha-codefresh <pavel@codefresh.io>

* Update pygments to 2.15.1 (#19782)

Signed-off-by: todaywasawesome <dan@codefresh.io>

* feat: Decoupling application sync using impersonation (#17403)

* Implementation of app sync with impersonation support

Signed-off-by: anandf <anjoseph@redhat.com>

* negation test

Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>

* Update doc comments to remove server name as its not supported.

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Signed-off-by: Anand Francis Joseph <anandfrancis.joseph@gmail.com>

* Update glob pattern check for matching destinations.

Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>
Signed-off-by: Anand Francis Joseph <anandfrancis.joseph@gmail.com>

* Corrected the code comments for namespace field and destination matching logic

Signed-off-by: anandf <anjoseph@redhat.com>

* Added missing generated files

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed golint errors caused due to to gofumpt validations

Signed-off-by: anandf <anjoseph@redhat.com>

* Fix golint errors with unit test code

Signed-off-by: anandf <anjoseph@redhat.com>

* Updated the go import ordering with local packages at the end

Signed-off-by: anandf <anjoseph@redhat.com>

* Addressed review comments

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed ES lint error caused due to missing class

Signed-off-by: anandf <anjoseph@redhat.com>

* Updated the documentation to address the review comments

Signed-off-by: anandf <anjoseph@redhat.com>

* Simplified the sync code and improved logs and error handling

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed E2E tests to fail when no sa is configured

Signed-off-by: anandf <anjoseph@redhat.com>

* Updated help message generated for CLI commands

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed failing tests due to default service account not used for sync operation

Signed-off-by: anandf <anjoseph@redhat.com>

* Fixed the error message when sync fails due to no matching sa

Signed-off-by: anandf <anjoseph@redhat.com>

* Removed repeating logs and added impersonation fields to logger

Signed-off-by: anandf <anjoseph@redhat.com>

* Made changes in the proposal to match the behaviour when no matching sa is found

Signed-off-by: Anand Francis Joseph <anjoseph@redhat.com>

---------

Signed-off-by: anandf <anjoseph@redhat.com>
Signed-off-by: Mangaal <angommeeteimangaal@gmail.com>
Signed-off-by: Anand Francis Joseph <anandfrancis.joseph@gmail.com>
Signed-off-by: Anand Francis Joseph <anjoseph@redhat.com>
Co-authored-by: Mangaal <angommeeteimangaal@gmail.com>
Co-authored-by: Ishita Sequeira <46771830+ishitasequeira@users.noreply.github.com>

* Fix local guide for building and testing docs (#19785)

Signed-off-by: todaywasawesome <dan@codefresh.io>

* Add links to index page (#19786)

Signed-off-by: todaywasawesome <dan@codefresh.io>

* fix: issue 19395 change delete icon color in dark model (#19747)

* fix-19395 change delete icon color in dark model

Signed-off-by: Esther Shen <xingtong.shen@fmr.com>

* fix-19395 revert formatting changes

Signed-off-by: Esther Shen <xingtong.shen@fmr.com>

* fix-19395 revert formatting changes

Signed-off-by: Esther Shen <xingtong.shen@fmr.com>

* fix-19395 revert formatting changes

Signed-off-by: Esther Shen <xingtong.shen@fmr.com>

---------

Signed-off-by: Esther Shen <xingtong.shen@fmr.com>

* chore(deps): bump google.golang.org/grpc from 1.65.0 to 1.66.0 (#19719)

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.65.0 to 1.66.0.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.65.0...v1.66.0)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Fixed go.mod to remove the replace construct added for gitops-engine (#19788)

Signed-off-by: anandf <anjoseph@redhat.com>

* fix(cli): `admin settings rbac can` has inconsistency among project resources (#17805)

* fix admin can inconsistency among resources

Signed-off-by: xiaopeng <hanxiaop8@outlook.com>

* revise logic and fix lint

Signed-off-by: xiaopeng <hanxiaop8@outlook.com>

---------

Signed-off-by: xiaopeng <hanxiaop8@outlook.com>

* fix(appset): allow for shorthand git refs in git generators #15427 (#19783)

* fix(appset): allow for shorthand git refs in git generators

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* Retrigger CI pipeline

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* attempt to fix goimports

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* attempt to fix goimports

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* remove redundant test

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

---------

Signed-off-by: rumstead <37445536+rumstead@users.noreply.github.com>

* chore(deps-dev): bump @types/node from 22.5.3 to 22.5.4 in /ui-test (#19794)

* feat: Add metric to expose Applications conditions (#19438)

Closes #13096

Implement a new metric exposing Applications conditions.
This is particularly useful for SRE teams to be able
to setup alerts on issues that aren't displayed via
"health_status" and "sync_status" in the metric "argocd_app_info".

Signed-off-by: Foyer Unix <foyerunix@foyer.lu>
Co-authored-by: Foyer Unix <foyerunix@foyer.lu>

* chore(deps): bump library/golang in /test/container (#19793)

Bumps library/golang from `613a108` to `1a6db32`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump bitnami/kubectl in /test/container (#19792)

Bumps bitnami/kubectl from `96ef4d3` to `664bf2a`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump library/busybox in /test/e2e/multiarch-container (#19791)

Bumps library/busybox from `8274294` to `34b191d`.

---
updated-dependencies:
- dependency-name: library/busybox
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump golang.org/x/term from 0.23.0 to 0.24.0 (#19789)

Bumps [golang.org/x/term](https://github.com/golang/term) from 0.23.0 to 0.24.0.
- [Commits](https://github.com/golang/term/compare/v0.23.0...v0.24.0)

---
updated-dependencies:
- dependency-name: golang.org/x/term
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: Delete button should be disabled when one source remains (#18804)

* docs: proposal to introduce 'Prune/Delete=confirm' sync option value (#19520)

* docs: proposal to introduce 'Prune/Delete=confirm' sync option value

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

* add clarifications

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>

---------

Signed-off-by: Alexander Matyushentsev <AMatyushentsev@gmail.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>

* docs: Add Mozilla to USERS.md (#19802)

Signed-off-by: Dustin Lactin <dlactin@mozilla.com>

* Fix broken link from overview, previous merge conflict (#19801)

Signed-off-by: todaywasawesome <dan@codefresh.io>

* chore(deps): bump golang.org/x/net from 0.28.0 to 0.29.0 (#19808)

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.28.0 to 0.29.0.
- [Commits](https://github.com/golang/net/compare/v0.28.0...v0.29.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump golang.org/x/oauth2 from 0.22.0 to 0.23.0 (#19790)

Bumps [golang.org/x/oauth2](https://github.com/golang/oauth2) from 0.22.0 to 0.23.0.
- [Commits](https://github.com/golang/oauth2/compare/v0.22.0...v0.23.0)

---
updated-dependencies:
- dependency-name: golang.org/x/oauth2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump peter-evans/create-pull-request from 7.0.0 to 7.0.1 (#19806)

Bumps [peter-evans/create-pull-request](https://github.com/peter-evans/create-pull-request) from 7.0.0 to 7.0.1.
- [Release notes](https://github.com/peter-evans/create-pull-request/releases)
- [Commits](https://github.com/peter-evans/create-pull-request/compare/4320041ed380b20e97d388d56a7fb4f9b8c20e79...8867c4aba1b742c39f8d0ba35429c2dfa4b6cb20)

---
updated-dependencies:
- dependency-name: peter-evans/create-pull-request
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump tj-actions/changed-files from 44.5.7 to 45.0.1 (#19750)

Bumps [tj-actions/changed-files](https://github.com/tj-actions/changed-files) from 44.5.7 to 45.0.1.
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](https://github.com/tj-actions/changed-files/compare/c65cd883420fd2eb864698a825fc4162dd94482c...e9772d140489982e0e3704fea5ee93d536f1e275)

---
updated-dependencies:
- dependency-name: tj-actions/changed-files
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump library/node from `8ec0232` to `bd00c03` (#19814)

Bumps library/node from `8ec0232` to `bd00c03`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump library/node in /test/container (#19813)

Bumps library/node from `8ec0232` to `bd00c03`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump bitnami/kubectl in /test/container (#19812)

Bumps bitnami/kubectl from `664bf2a` to `7779e58`.

---
updated-dependencies:
- dependency-name: bitnami/kubectl
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump library/golang in /test/container (#19811)

Bumps library/golang from `1a6db32` to `80cf6f9`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump github.com/prometheus/client_golang (#19810)

Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.20.2 to 1.20.3.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/v1.20.3/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.20.2...v1.20.3)

---
updated-dependencies:
- dependency-name: github.com/prometheus/client_golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump library/node from `8ec0232` to `c6add15` in /ui-test (#19807)

Bumps library/node from `8ec0232` to `c6add15`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: manifest-generate-paths with autosync causes an undesirable refresh sync (#19799)


Signed-off-by: pashakostohrys <pavel@codefresh.io>

* fix(appset): Retry on conflict when updating status (#19663)

* fix(appset): Retry on conflict when updating status

  # Context:
  When updating the status of the applicationset object it can happen
  that it fails due to a conflict since the resourceVersion has changed
  due to a different update. This makes the reconcile fails and we need
  to wait until the following reconcile loop until it updates the
  relevant status fields and hope that the update calls don't fail again
  due a conflict. It can even happen that it gets stuck constantly due
  to this erriors.

  A better approach I would say is retrying when there is a conflict
  error with the newest version of the object, so we make sure we update
  the object with the latest version always.

  This has been raised in issue #19535 that failing due to conflicts can
  make the reconcile not able to proceed.

  # What does this PR?
  - Wraps all the `Update().Status` calls inside a retry function that
    will retry when the update fails due a conflict.
  - Adds appset to fake client subresources, if not the client can not
    correctly determine the status subresource. Refer to:
    https://github.com/kubernetes-sigs/controller-runtime/issues/2386,
    and
    https://github.com/kubernetes-sigs/controller-runtime/issues/2362.

Signed-off-by: Carlos Rejano <carlos.rejano@adevinta.com>

* fixup! fix(appset): Retry on conflict when updating status

---------

Signed-off-by: Carlos Rejano <carlos.rejano@adevinta.com>
Signed-off-by: carlosrejano <59321132+carlosrejano@users.noreply.github.com>
Co-authored-by: Carlos Rejano <carlos.rejano@adevinta.com>

* always execute sync if at least for one revision we identify if it was changed or no (#19828)

Signed-off-by: pashakostohrys <pavel@codefresh.io>

* [Bot] docs: Update Snyk reports (#19831)

* feat: add a button to show parameter details (#12183) (#16871)

* chore(deps): bump library/registry in /test/container (#19842)

Bumps library/registry from `1212042` to `ac0192b`.

---
updated-dependencies:
- dependency-name: library/registry
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump library/node from `c6add15` to `bd00c03` in /ui-test (#19844)

Bumps library/node from `c6add15` to `bd00c03`.

---
updated-dependencies:
- dependency-name: library/node
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: bump go version to 1.22.7 (#19845)

Signed-off-by: Gergely Fábián <gergo.fb@gmail.com>

* Missing close ``` in kustomize documentation (#19850)

As per title: ```  is missing in the first object.

Signed-off-by: Andrea Cervesato <andrea.cervesato@gmail.com>

* feat(cli): ignore tracking annotation on backup restore (#18960)


Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* fix(ui): Container Selector in Pods doesn't work (#19856)

Signed-off-by: Rafal Pelczar <rafal@akuity.io>

* chore(deps-dev): bump typescript from 5.5.4 to 5.6.2 in /ui-test (#19857)

Bumps [typescript](https://github.com/microsoft/TypeScript) from 5.5.4 to 5.6.2.
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.5.4...v5.6.2)

---
updated-dependencies:
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump google.golang.org/grpc from 1.66.0 to 1.66.1 (#19860)

Bumps [google.golang.org/grpc](https://github.com/grpc/grpc-go) from 1.66.0 to 1.66.1.
- [Release notes](https://github.com/grpc/grpc-go/releases)
- [Commits](https://github.com/grpc/grpc-go/compare/v1.66.0...v1.66.1)

---
updated-dependencies:
- dependency-name: google.golang.org/grpc
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* docs: fix Helm --set-file example (#19864)

Signed-off-by: Marios Andreopoulos <opensource@andmarios.com>

* feat: Send user groups to proxy extensions (#19855)

* feat: Send user groups to proxy extensions

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* address review comments

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

---------

Signed-off-by: Leonardo Luz Almeida <leonardo_almeida@intuit.com>

* feat(lua actions): add a flag to Include builtin actions with  resource overrides  (#19708)

* feat: include prebuilt action with overrides

Signed-off-by: ashutosh16 <11219262+ashutosh16@users.noreply.github.com>


Signed-off-by: ashutosh16 <11219262+ashutosh16@users.noreply.github.com>
Signed-off-by: Ashu <11219262+ashutosh16@users.noreply.github.com>
Co-authored-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* fix(deeplinks): do not evaluate template when condition is false (#19625) (#19868)

Signed-off-by: Alexandre Gaudreault <alexandre_gaudreault@intuit.com>

* fix: proxy url arg for repocreds command. (#19805)

* Add proxy url arg for repocreds command.

Co-authored-by: Li Wang <li.wang3@fmr.com>
Signed-off-by: Miao Haoda <Haoda.Miao@fmr.com>

* commit the results of clidocsgen

Signed-off-by: Miao Haoda <Haoda.Miao@fmr.com>

---------

Signed-off-by: Miao Haoda <Haoda.Miao@fmr.com>
Co-authored-by: Li Wang <li.wang3@fmr.com>

* chore(deps): bump github.com/xanzy/go-gitlab from 0.108.0 to 0.109.0 (#19839)

Bumps [github.com/xanzy/go-gitlab](https://github.com/xanzy/go-gitlab) from 0.108.0 to 0.109.0.
- [Release notes](https://github.com/xanzy/go-gitlab/releases)
- [Changelog](https://github.com/xanzy/go-gitlab/blob/main/releases_test.go)
- [Commits](https://github.com/xanzy/go-gitlab/compare/v0.108.0...v0.109.0)

---
updated-dependencies:
- dependency-name: github.com/xanzy/go-gitlab
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Add Augury as part of argocd users (#19890)

Signed-off-by: mmuzh <96480964+MaxMuzh@users.noreply.github.com>

* chore(deps): bump go.opentelemetry.io/otel/sdk from 1.29.0 to 1.30.0 (#19878)

Bumps [go.opentelemetry.io/otel/sdk](https://github.com/open-telemetry/opentelemetry-go) from 1.29.0 to 1.30.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.29.0...v1.30.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/otel/sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore: improve error logs (#10592) (#19743)


Signed-off-by: KangManJoo <eogns47@konkuk.ac.kr>

* feat: add `--source-position` flag to `argocd get app` command to show parameter changes for multi-source application (#19887)


Signed-off-by: nitishfy <justnitish06@gmail.com>

* docs: mention information about where to set the `ARGOCD_SYNC_WAVE_DELAY` environment variable (#19879)

* Update sync-waves.md

Signed-off-by: Nitish Kumar <justnitish06@gmail.com>

* Update docs/user-guide/sync-waves.md

Co-authored-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: Nitish Kumar <justnitish06@gmail.com>

---------

Signed-off-by: Nitish Kumar <justnitish06@gmail.com>
Co-authored-by: Dan Garfield <dan@codefresh.io>

* chore(deps): bump go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc (#19877)

Bumps [go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc](https://github.com/open-telemetry/opentelemetry-go) from 1.27.0 to 1.30.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-go/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-go/blob/main/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-go/compare/v1.27.0...v1.30.0)

---
updated-dependencies:
- dependency-name: go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump library/golang in /test/container (#19841)

Bumps library/golang from `80cf6f9` to `4a3c2bc`.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump library/golang from 1.22.0 to 1.23.1 in /test/remote (#19840)

Bumps library/golang from 1.22.0 to 1.23.1.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* feat: Implement PodDisruptionBudget CRD health checks (#19826)

Signed-off-by: Arnaud Farbos <farbos.arnaud@gmail.com>

* chore(deps): bump library/golang from 1.22.6 to 1.23.1 (#19838)

Bumps library/golang from 1.22.6 to 1.23.1.

---
updated-dependencies:
- dependency-name: library/golang
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(deps): bump express from 4.19.2 to 4.20.0 in /ui (#19883)

Bumps [express](https://github.com/expressjs/express) from 4.19.2 to 4.20.0.
- [Release notes](https://github.com/expressjs/express/releases)
- [Changelog](https://github.com/expressjs/express/blob/master/History.md)
- [Commits](https://github.com/expressjs/express/compare/4.19.2...4.20.0)

---
updated-dependencies:
- dependency-name: express
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: openkruise health check npe error #19545 (#19660)

* test: add broken unit test data

Signed-off-by: Jingchao <alswlx@gmail.com>

* fix: npe error in kruise ds health-check

Signed-off-by: Jingchao <alswlx@gmail.com>

---------

Signed-off-by: Jingchao <alswlx@gmail.com>

* docs: Add Installation Warning and Kustomize Guide (#19874)

* Update installation docs: Add warning for ClusterRoleBinding and custom namespace

Signed-off-by: nueavv <nuguni@kakao.com>

* Add support for installing Argo CD in custom namespace using Kustomize

Signed-off-by: nueavv <nuguni@kakao.com>

* remove clusterrolebinding name

Signed-off-by: nueavv <nuguni@kakao.com>

---------

Signed-off-by: nueavv <nuguni@kakao.com>

* docs: Clarify AWS profile mounting locations for EKS cluster addition (#19853)

Signed-off-by: nueavv <nuguni@kakao.com>

* docs(sync windows): rename Sunday-Saturday (#19885) (#19886)

* fix(sync windows): rename Sunday-Saturday

Sunday-Saturday is ambiguous. It could mean:

- sunday and saturday ONLY
- from sunday to saturday (=every day of the week)

In order to disambiguate, we could change the label to one of the
following:

- Every Day of the Week
- Sunday to Saturday
- From Sunday to Saturday

Signed-off-by: Thiago Perrotta <tbperrotta@gmail.com>

* Update ui/src/app/settings/components/project-sync-windows-edit/project-sync-windows-edit.tsx

Co-authored-by: Dan Garfield <dan@codefresh.io>
Signed-off-by: Thiago Perrotta <tbperrotta@gmail.com>

----…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working component:api API bugs and enhancements type:bug
Projects
None yet
Development

Successfully merging a pull request may close this issue.