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

[BUG] Extra fields in CRDs trigger OutOfSync on ArgoCD #4817

Open
SkalaNetworks opened this issue Dec 11, 2024 · 1 comment
Open

[BUG] Extra fields in CRDs trigger OutOfSync on ArgoCD #4817

SkalaNetworks opened this issue Dec 11, 2024 · 1 comment
Labels
bug Something isn't working

Comments

@SkalaNetworks
Copy link
Contributor

Kube-OVN Version

v1.13-v1.14

Kubernetes Version

1.31

Operation-system/Kernel Version

/

Description

image

ArgoCD shows a desync between the LiveManifest and the desired manifest.

The VPC NAT GW CRD has a bunch of fields like this in the properties:

 x-kubernetes-patch-merge-key: key
 x-kubernetes-patch-strategy: merge

Is there a reason for the presence of these fields? They don't seem to exist in CR definitions anymore (at least in my version of K8S)

Steps To Reproduce

  1. Deploy Kube-OVN using Helm/ArgoCD
  2. Witness the desync on VPC NAT GWs

Current Behavior

Out of Sync on VPC NAT GWs CRDs

Expected Behavior

Synced VPC NAT GWs CRDs

@SkalaNetworks SkalaNetworks added the bug Something isn't working label Dec 11, 2024
Copy link

dosubot bot commented Dec 11, 2024

The x-kubernetes-patch-merge-key and x-kubernetes-patch-strategy annotations in the Kube-OVN CRDs are used to define how Kubernetes should handle strategic merge patches. These annotations are typically used to specify how lists should be merged when applying patches, which is particularly useful for managing complex configurations in Kubernetes.

In the Kube-OVN project, these fields are indeed present in the VPC NAT Gateway CRDs, specifically under properties like matchExpressions in the podAffinity, podAntiAffinity, and nodeAffinity sections [1].

The issue you're encountering with ArgoCD showing a desync might be due to differences in how these annotations are handled or expected between different versions of Kubernetes or ArgoCD. If these fields are not present in your version of Kubernetes CRD definitions, it could be causing the discrepancy.

To resolve this, you might consider:

  1. Verifying if your Kubernetes version supports these annotations. If not, you may need to adjust the CRDs to align with your Kubernetes version's expectations.
  2. Checking if there are any updates or patches in the Kube-OVN repository that address compatibility with Kubernetes 1.31 or ArgoCD, as this might be a known issue that has been resolved in newer versions or patches.

To continue talking to Dosu, mention @dosu.


Help Dosu learn! Give it feedback: Great Response | Irrelevant Answer | Incorrect Sources | Too Verbose | Hallucination | Other

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant