-
Notifications
You must be signed in to change notification settings - Fork 115
Support unpropagated labels #321
Support unpropagated labels #321
Conversation
By default ArgoCD use labels to understand which objects it controls. When HNC propagates those resources ArgoCD assumes ownership of those resources and attempts to reconcile it with current state, usually leading to deletion of those resources. This causes a feedback loop where ArgoCD requests a deletion of an object, that is blocked by the HNC webhook, and HNC no longer is able to properly manage the resource due to the deletion finaliser set on the resource. This is similar behaviour to ConfigSync with annotations. This commit adds an unpropagated-labels command line argument following the implementation of the unpropagated-annotations argument. This allows cluster operators to disable propagation of labels owned by systems like ArgoCD. Tested: * Implemented additional e2e test matching unpropagated-annotations tests. * Manually validated that configured labels were not propogated as expected and ArgoCD did not adopt propgated resources.
Welcome @timbyr! |
Hi @timbyr. Thanks for your PR. I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry to leave this so long, but this is a great change, no notes! Thanks for the submission :)
/lgtm
/approve
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: adrianludwin, timbyr The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
By default ArgoCD use labels to understand which objects it controls.
When HNC propagates those resources ArgoCD assumes ownership of those
resources and attempts to reconcile it with current state, usually
leading to deletion of those resources.
This causes a feedback loop where ArgoCD requests a deletion of an
object, that is blocked by the HNC webhook, and HNC no longer is able to
properly manage the resource due to the deletion finaliser set on the
resource.
This is similar behaviour to ConfigSync with annotations.
This commit adds an unpropagated-labels command line argument following the
implementation of the unpropagated-annotations argument. This allows
cluster operators to disable propagation of labels owned by systems like
ArgoCD.
Tested:
and ArgoCD did not adopt propgated resources.