Skip to content

remove preserveUnknownFields from CRDs - #10

Merged
james-callahan merged 1 commit into
mainfrom
crds-remove-preserveUnknownFields-false
Jul 28, 2026
Merged

remove preserveUnknownFields from CRDs#10
james-callahan merged 1 commit into
mainfrom
crds-remove-preserveUnknownFields-false

Conversation

@benturnkey

Copy link
Copy Markdown
Contributor

As detailed in ArgoCD docs, we're seeing the calico app showing a sync diff for the preserveUnknownFields field

This PR removes the field from the CRDs. Another option is adding an ignore in ArgoCD (see the link).

https://argo-cd.readthedocs.io/en/stable/operator-manual/upgrading/2.14-3.0/#removing-default-ignores-of-preserveunknownfields-for-crd

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Removes the explicit spec.preserveUnknownFields: false setting from Calico CRD manifests to eliminate Argo CD sync diffs caused by that field being defaulted/ignored during newer Argo CD upgrade behavior.

Changes:

  • Removed spec.preserveUnknownFields: false from all Calico apiextensions.k8s.io/v1 CRDs in crds/.

Reviewed changes

Copilot reviewed 22 out of 22 changed files in this pull request and generated no comments.

Show a summary per file
File Description
crds/crd.projectcalico.org_tiers.yaml Drops preserveUnknownFields from Tier CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_stagednetworkpolicies.yaml Drops preserveUnknownFields from StagedNetworkPolicy CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_stagedkubernetesnetworkpolicies.yaml Drops preserveUnknownFields from StagedKubernetesNetworkPolicy CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_stagedglobalnetworkpolicies.yaml Drops preserveUnknownFields from StagedGlobalNetworkPolicy CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_networksets.yaml Drops preserveUnknownFields from NetworkSet CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_networkpolicies.yaml Drops preserveUnknownFields from NetworkPolicy CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_kubecontrollersconfigurations.yaml Drops preserveUnknownFields from KubeControllersConfiguration CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_ipreservations.yaml Drops preserveUnknownFields from IPReservation CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_ippools.yaml Drops preserveUnknownFields from IPPool CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_ipamhandles.yaml Drops preserveUnknownFields from IPAMHandle CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_ipamconfigs.yaml Drops preserveUnknownFields from IPAMConfig CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_ipamblocks.yaml Drops preserveUnknownFields from IPAMBlock CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_hostendpoints.yaml Drops preserveUnknownFields from HostEndpoint CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_globalnetworksets.yaml Drops preserveUnknownFields from GlobalNetworkSet CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_globalnetworkpolicies.yaml Drops preserveUnknownFields from GlobalNetworkPolicy CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_felixconfigurations.yaml Drops preserveUnknownFields from FelixConfiguration CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_clusterinformations.yaml Drops preserveUnknownFields from ClusterInformation CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_caliconodestatuses.yaml Drops preserveUnknownFields from CalicoNodeStatus CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_blockaffinities.yaml Drops preserveUnknownFields from BlockAffinity CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_bgppeers.yaml Drops preserveUnknownFields from BGPPeer CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_bgpfilters.yaml Drops preserveUnknownFields from BGPFilter CRD spec to avoid Argo CD diff.
crds/crd.projectcalico.org_bgpconfigurations.yaml Drops preserveUnknownFields from BGPConfiguration CRD spec to avoid Argo CD diff.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@james-callahan james-callahan left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

This is essentially a backport of projectcalico/calico#13081

@james-callahan
james-callahan merged commit 06a5d90 into main Jul 28, 2026
3 checks passed
@james-callahan
james-callahan deleted the crds-remove-preserveUnknownFields-false branch July 28, 2026 04:57
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