-
Notifications
You must be signed in to change notification settings - Fork 67
Description
A/C:
- Detail minimal search API to list contents of all catalogs in cluster.
- Evaluate methods of exposing the catalogd search API off cluster. (port-forwarding, nodeport, gateway)
Background:
The kubectl-operator v1 subcommands do not have a subcommand to search catalog contents currently. The simplest implementation of this command involves:
- accessing catalog contents
- querying available catalogs for their entire contents, dumping returned bundles and associated metadata as parseable json/yaml.
- optional: limit query result to a single search term, which should match a package name if provided.
To access catalog contents, the catalog either needs to be queried directly via catalogd apis, or by unpacking catalog images on cluster locally for querying the constituent FBC.
Following an earlier proposal to have kubectl-operator and openshift console provide identical workflows by using the same APIs, unpacking or rendering catalogs locally may not be feasible, but this method provides a way to query a catalog without having to access the on-cluster catalogd service.
Querying the catalogd service directly requires exposing the catalogd service to the external kubectl-operator client by either
- port-forwarding (Note: portforwarding connection can fail/timeout when transmitting large catalogs)
- setting up a gateway
- exposing the catalogd service via a nodeport.
An RFC for the minimal search API for package discovery will detail these different approaches and any relevant alternative means to implementing a way of listing all contents of every catalog in a cluster.
See #1424