kubernetes-sigs / cli-utils

This repo contains binaries that built from libraries in cli-runtime.
Apache License 2.0
155 stars 77 forks source link

fix: objects flagged by CurrentUIDFilter should be removed from the inventory #614

Closed manfredlift closed 1 year ago

manfredlift commented 1 year ago

Fixes https://github.com/kubernetes-sigs/cli-utils/issues/613

Description

During pruning the code is filtering objects with CurrentUIDFilter:

// CurrentUIDFilter implements ValidationFilter interface to determine // if an object should not be pruned (deleted) because it has recently // been applied.

This must mean that the object has ended up being tracked in the inventory by more than one reference and the one that was flagged by the filter should be removed from the inventory. Otherwise, it gets stuck in the inventory indefinitely and during every invocation of prune it'll be logged as skipped.

A good example of this is Ingress kind existing in both groups extensions and networking.k8s.io in k8s 1.19 & 1.20. This means when you rename the apiGroup in your local yaml to the new recommended group, then the reference with the old group name gets permastuck in the inventory.

k8s-ci-robot commented 1 year ago

Hi @manfredlift. 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 /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md). If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes/test-infra](https://github.com/kubernetes/test-infra/issues/new?title=Prow%20issue:) repository.
seans3 commented 1 year ago

/ok-to-test

pwittrock commented 1 year ago

/ok-to-test

manfredlift commented 1 year ago

/retest

manfredlift commented 1 year ago

/retest

manfredlift commented 1 year ago

/retest

manfredlift commented 1 year ago

/retest

manfredlift commented 1 year ago

/retest

k8s-ci-robot commented 1 year ago

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: karlkfi, manfredlift, seans3

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: - ~~[OWNERS](https://github.com/kubernetes-sigs/cli-utils/blob/master/OWNERS)~~ [karlkfi,seans3] Approvers can indicate their approval by writing `/approve` in a comment Approvers can cancel approval by writing `/approve cancel` in a comment