[cherry-pick: release-v0.3.x] fix: selector-based pruning for label and annotation selectors #145
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a cherry-pick of #142
Changes
This PR fixes a bug in selector-based pruning where PipelineRuns were not being grouped correctly when using
matchLabelsormatchAnnotationsin namespace-level ConfigMaps.Problem
Label selectors: When a ConfigMap specified
matchLabels: {env: test}, the pruner was using ALL labels from the PipelineRun to list resources, including Tekton-generated labels liketekton.dev/pipeline. This meant each PipelineRun was treated as its own unique group.Annotation selectors: When a ConfigMap specified only
matchAnnotations, the list selector became empty, causing all the resources in the namespace to be listed and the configuration to be applied incorrectly to unrelated PipelineRuns.Solution
GetMatchingSelector()method to retrieve the exact selector from the ConfigMap that matched the resourcedoResourceCleanup()to use only the ConfigMap'smatchLabels/kind bug
Submitter Checklist
As the author of this PR, please check off the items in this checklist:
/kind <type>. Valid types are bug, cleanup, design, documentation, feature, flake, misc, question, tepRelease Notes