Remove hardcoded references to the registry gRPC API from the resolver packages. #2340
+1,219
−1,191
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 resolver component does not care whether a given cache entry was
populated by use of the registry gRPC API, so it should ultimately be
possible to drop the "Bundle" field from cache entries altogether. For
now, catalog-operator's "step resolver" still depends on a Bundle
proto field in order to unpack inline (as opposed to image-based)
packages.
NewOperatorForBundle and NewOperatorFromV1Alpha1CSV couple the
resolver cache package to the registry gRPC API and the
operators/v1alpha1 CSV API, respectively. They're effectively used
only by the resolver package, so they can be moved there and
unexported. The remaining calls to NewOperatorFromV1Alpha1CSV can be
extracted from core resolver logic into a Source implementation that
is responsible for the conversion from ClusterServiceVersion to
cache.Snapshot entry, and the remaining call to NewOperatorFromBundle
is used only by the Source implementation based on the registry gRPC
API.