🐛 Re-wire additional indexers into informers creation #45
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.
While trying to use
controller-runtime
, I ran into the issue that I couldn't doList
calls when the logical cluster was set in myctx
. The error I got wasNow I'm not an expert with those kube internals, but I spent some significant time delving into this and I discovered the following: In #10, kcp specific indexers were added. These were wired up properly. It seems we might have lost that in #42 (or maybe before), where the
cache.Options
fieldIndexers
still exists but it is unused and therefore does not reach the part of the code where informers are created.This PR re-wires the additional indexers and it solved the problem with calling
List
, but I have honestly no idea if it's the best way to do it or if there is some way to pass it already that i missed. The indexers inaddInformerToMap
looked pretty hardcoded to me, but again, limited knowledge.I hope someone has a good enough understanding of controller-runtime's
cache
package that they can review this properly.