Skip to content

fix: convert namespace labels to a label Set instead of merging the map with itself#607

Open
AruneshDwivedi wants to merge 2 commits into
FairwindsOps:masterfrom
AruneshDwivedi:fix/namespace-labels-to-set
Open

fix: convert namespace labels to a label Set instead of merging the map with itself#607
AruneshDwivedi wants to merge 2 commits into
FairwindsOps:masterfrom
AruneshDwivedi:fix/namespace-labels-to-set

Conversation

@AruneshDwivedi

Copy link
Copy Markdown

parseRoleBinding built the label selector match by calling labels.Merge(namespace.Labels, namespace.Labels), merging the namespace label map with a copy of itself. That is a confused artifact, not a real merge, and the second argument exists only to satisfy the helper signature. labels.Set converts a map directly to a labels.Set, which is the documented way to build the Set that selector.Matches expects. Behavior is unchanged for the existing namespace-selector tests; the call just says what it means.

…ap with itself

Signed-off-by: Arunesh Dwivedi <arunesh.devops@gmail.com>
…pace

A namespace with a nil Labels map converts to an empty label Set, which
must fail the selector match so the namespace is skipped rather than
matched or panicking on the conversion. Assert that an unlabeled namespace
is left out while a labeled one still receives the binding.

Signed-off-by: Arunesh Dwivedi <arunesh.devops@gmail.com>
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.

1 participant