-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
chore(breaking)!: Switch to use annotation based resource tracking as the default method. Closes #13981 #18961
base: master
Are you sure you want to change the base?
chore(breaking)!: Switch to use annotation based resource tracking as the default method. Closes #13981 #18961
Conversation
…the default method. Closes argoproj#13981 Signed-off-by: Yuan Tang <terrytangyuan@gmail.com>
🔴 Preview Environment stopped on BunnyshellSee: Environment Details | Pipeline Logs Available commands (reply to this comment):
|
✅ Preview Environment created on Bunnyshell but will not be auto-deployedSee: Environment Details Available commands (reply to this comment):
|
@argoproj/argocd-approvers Are there concerns over this change for v3.0? If so, please comment here so that we can discuss earlier. Thank you! |
It'll mean some work for Intuit, since we're using a very old tracking method for some instances. But that's okay, this is a good change in default. |
👋🏻 @ironashram You had a thumb down for this PR. Would you mind clarifying? We'd love to hear more inputs from the community. |
a few weeks ago I tried to switch to annotation tracking in one of my clusters and I had tons of issues and out of sync resources, which I was able to solve in a few hours re deploying some apps so the thumbs down was more related to the heat of the moment and my personal dislike for annotations in general since they are kind of messy to understand by humans compared to labels (maybe I'm alone in this) Anyway I get the reasons and I've been using annotation tracking in argo for a while now without other issues. |
@ironashram Thanks! |
Please, rebase and fix the tests. I also think it may be better to support two methods in parallel as suggested on the issue. |
We should seriously consider the implications if we change the default tracking method to annotations. While I would love to see wider adoption of the annotation-based tracking, what we see as a bug in the label-based tracking (that other apps can create resources that match the label), is actually a feature for a lot of downstream apps. Let me lay out a case for label tracking:
Of course this is also the biggest drawback, because if we used the annotation approach, we could almost guarantee that if a resource has a valid tracking annotation, that ArgoCD created it at some point, and so if it no longer exists in the source, it probably does require pruning. We want to make the migration to Argo CD 3.0 as smooth as possible for users, but doing an in-place migration from labels to only annotations is not safe for most users. If we are dead-set on doing this, we should probably do a staged change:
|
Closes #13981. This is a draft PR for now to prevent from getting merged accidentally. This breaking change is intended for v3.0 but we'd like to open up an early discussion.
cc @jannfis and other @argoproj/argocd-approvers
Checklist: