-
Notifications
You must be signed in to change notification settings - Fork 5.6k
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
Diff on Endpoint confused by IP sorting #1816
Diff on Endpoint confused by IP sorting #1816
Comments
Interesting. Can you work around by making sure the Git repo has the ASCII ordered list, rather than the (and admittedly nicer) dictionary order. |
This is the same problem that HPA has. The only real workaround is to order the list in the same way that Kubernetes orders this list. It's unlikely that Argo CD can do anything about this because we have no way to understand if list order is significant or not for all types of objects. |
The workaround works as a solution, albeit one that needs a little twiddling if changes are made. Could there perhaps be a whitelist of known sortable elements for both HPA and endpoints for instance? |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
+1, really annoying for endpoint resources with lots of addresses |
This doesn't seem to work for ascii ordered list. Kubernetes seems to sort the list like this, which is not ascii ordered:
|
Currently, the IPs in endpoints are sorted lexicographically In argo-cd, how about sorting the manifest values using this function before comparing them for diffing? To solve this more generally, is it a good idea to introduce a "normalizing" step before diffing which takes care of such intricacies based on a global mapping of |
I think a special case for Endpoints to lexographically sort the endpoints before diffing would be ok. |
/assign @wtam2018 |
argoproj/gitops-engine#160 has been submitted to gitops-engine. |
Describe the bug
When using an Endpoint object with a set of IP addresses explicitally declared, when comparing the state against the intention the diff appears to sort the IP addresses Alphanumerically whilst Kubernetes sorts by octet resulting in a mistaken diff output.
To Reproduce
Provide a configuration as shown;
Expected behavior
State in kubernetes is applied and no diff errors are shown.
** Actual Behaviour **
The diff triggers an out-of-sync warning as the IP list gets changed by some part of the system.
Screenshots
Version
The text was updated successfully, but these errors were encountered: