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

fix(appset): dont requeue appsets on status change #21364

Merged

Conversation

rumstead
Copy link
Member

@rumstead rumstead commented Jan 3, 2025

When an applicationset is requeued and there are no changes to the child application's spec but there is a change to their sync status, eg progressing, healthy, outofsync, the applicationset will be requeued twice because the applicationset's status is patched with the sync status of the underlying applications.

Before changes

updating an applicationset when an underlying application has changed status

time="2025-01-02T16:55:06-05:00" level=debug msg="received update event" applicationset=argocd/cluster requeue=true
time="2025-01-02T16:55:06-05:00" level=debug msg="received update event" applicationset=argocd/cluster requeue=true

After changes

updating an applicationset when an underlying application has changed status

time="2025-01-03T14:46:00-05:00" level=debug msg="received update event" applicationset=argocd/cluster requeue=true
time="2025-01-03T14:46:00-05:00" level=debug msg="received update event" applicationset=argocd/cluster requeue=false

It would be great if this could be cherry-picked into 2.14

Checklist:

  • Either (a) I've created an enhancement proposal and discussed it with the community, (b) this is a bug fix, or (c) this does not need to be in the release notes.
  • The title of the PR states what changed and the related issues number (used for the release note).
  • The title of the PR conforms to the Toolchain Guide
  • I've included "Closes [ISSUE #]" or "Fixes [ISSUE #]" in the description to automatically close the associated issue.
  • I've updated both the CLI and UI to expose my feature, or I plan to submit a second PR with them.
  • Does this PR require documentation updates?
  • I've updated documentation as required by this PR.
  • I have signed off all my commits as required by DCO
  • I have written unit and/or e2e tests for my change. PRs without these are unlikely to be merged.
  • My build is green (troubleshooting builds).
  • My new feature complies with the feature status guidelines.
  • I have added a brief description of why this PR is necessary and/or what this PR solves.
  • Optional. My organization is added to USERS.md.
  • Optional. For bug fixes, I've indicated what older releases this fix should be cherry-picked into (this may or may not happen depending on risk/complexity).

@rumstead rumstead requested a review from a team as a code owner January 3, 2025 20:23
Copy link

bunnyshell bot commented Jan 3, 2025

❌ Preview Environment deleted from Bunnyshell

Available commands (reply to this comment):

  • 🚀 /bns:deploy to deploy the environment

Co-authored-by: Michael Crenshaw <[email protected]>
Signed-off-by: rumstead <[email protected]>
@rumstead rumstead requested a review from crenshaw-dev January 3, 2025 20:42
…appsets-on-status-change

# Conflicts:
#	applicationset/controllers/applicationset_controller.go
#	applicationset/controllers/applicationset_controller_test.go
…m:rumstead/argo-cd into fix/dont-requeue-appsets-on-status-change
Copy link

codecov bot commented Jan 13, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 52.96%. Comparing base (d4d6713) to head (59100bd).
Report is 5 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master   #21364      +/-   ##
==========================================
- Coverage   55.31%   52.96%   -2.35%     
==========================================
  Files         337      337              
  Lines       56824    56863      +39     
==========================================
- Hits        31430    30116    -1314     
- Misses      22710    24094    +1384     
+ Partials     2684     2653      -31     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Member

@ishitasequeira ishitasequeira left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall code looks good!! Just a suggestion for rephrasing the comments.

applicationset/controllers/applicationset_controller.go Outdated Show resolved Hide resolved
@crenshaw-dev crenshaw-dev merged commit f3509d2 into argoproj:master Jan 17, 2025
26 checks passed
@rumstead rumstead deleted the fix/dont-requeue-appsets-on-status-change branch January 17, 2025 17:03
dudo pushed a commit to dudo/argo-cd that referenced this pull request Jan 18, 2025
* e2e

Signed-off-by: rumstead <[email protected]>

* fix(appset): don't requeue on status changes

Signed-off-by: rumstead <[email protected]>

* fix spelling

Co-authored-by: Michael Crenshaw <[email protected]>
Signed-off-by: rumstead <[email protected]>

* merge in annotation changes

Signed-off-by: rumstead <[email protected]>

* merge in annotation changes

Signed-off-by: rumstead <[email protected]>

* add more tests

Signed-off-by: rumstead <[email protected]>

* lint fix

Signed-off-by: rumstead <[email protected]>

* Update applicationset/controllers/applicationset_controller.go

Co-authored-by: Ishita Sequeira <[email protected]>
Signed-off-by: rumstead <[email protected]>

* fix linting

Signed-off-by: rumstead <[email protected]>

* fix linting

Signed-off-by: rumstead <[email protected]>

---------

Signed-off-by: rumstead <[email protected]>
Co-authored-by: Michael Crenshaw <[email protected]>
Co-authored-by: Ishita Sequeira <[email protected]>
Signed-off-by: Brett C. Dudo <[email protected]>
revitalbarletz pushed a commit to revitalbarletz/argo-cd that referenced this pull request Jan 20, 2025
* e2e

Signed-off-by: rumstead <[email protected]>

* fix(appset): don't requeue on status changes

Signed-off-by: rumstead <[email protected]>

* fix spelling

Co-authored-by: Michael Crenshaw <[email protected]>
Signed-off-by: rumstead <[email protected]>

* merge in annotation changes

Signed-off-by: rumstead <[email protected]>

* merge in annotation changes

Signed-off-by: rumstead <[email protected]>

* add more tests

Signed-off-by: rumstead <[email protected]>

* lint fix

Signed-off-by: rumstead <[email protected]>

* Update applicationset/controllers/applicationset_controller.go

Co-authored-by: Ishita Sequeira <[email protected]>
Signed-off-by: rumstead <[email protected]>

* fix linting

Signed-off-by: rumstead <[email protected]>

* fix linting

Signed-off-by: rumstead <[email protected]>

---------

Signed-off-by: rumstead <[email protected]>
Co-authored-by: Michael Crenshaw <[email protected]>
Co-authored-by: Ishita Sequeira <[email protected]>
flbla pushed a commit to flbla/argo-cd that referenced this pull request Jan 20, 2025
* e2e

Signed-off-by: rumstead <[email protected]>

* fix(appset): don't requeue on status changes

Signed-off-by: rumstead <[email protected]>

* fix spelling

Co-authored-by: Michael Crenshaw <[email protected]>
Signed-off-by: rumstead <[email protected]>

* merge in annotation changes

Signed-off-by: rumstead <[email protected]>

* merge in annotation changes

Signed-off-by: rumstead <[email protected]>

* add more tests

Signed-off-by: rumstead <[email protected]>

* lint fix

Signed-off-by: rumstead <[email protected]>

* Update applicationset/controllers/applicationset_controller.go

Co-authored-by: Ishita Sequeira <[email protected]>
Signed-off-by: rumstead <[email protected]>

* fix linting

Signed-off-by: rumstead <[email protected]>

* fix linting

Signed-off-by: rumstead <[email protected]>

---------

Signed-off-by: rumstead <[email protected]>
Co-authored-by: Michael Crenshaw <[email protected]>
Co-authored-by: Ishita Sequeira <[email protected]>
Signed-off-by: flbla <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants