This repository has been archived by the owner on Nov 1, 2022. It is now read-only.
Restore missing namespaces to workload IDs #2539
Merged
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.
The commit 852a02c5a194efb68182b9b3fcf85b13 changed handling of the
"all namespace" case in kubernetes.go, such that instead of
enumerating all namespaces then asking for the resources in each, a
special value is used (
meta_v1.NamespaceAll
) that signifies to theAPI to look in all namespaces.
Before the change, the namespace-valued loop var was used as the
namespace in each resource's ID as it was added to the
result. However, since this code now deals with the "all namespaces"
case too, it can take the value of the special signifier -- which
results in invalid resource IDs.
To correct this, the namespace reported by the fetched resource itself
is used.
Similarly, we can no longer compare the loop var to the requested
namespace -- if all namespaces are allowed, it will never be
equal. Instead of doing that, just make the namespaces looped over the
intersection of the allowed namespaces and the requested namespace.