As a user, I want a CLI manager for various CLIs available for OpenShift and related services so that I can simply discover, install and upgrade them
As an example, if openshift-cli were to be the plugin manager, the following shows the usage:
As more services are created on top of OpenShift, more and more CLIs are introduced to simplify interaction with these services (e.g. istio, knative, developer, etc) while at the same time making it difficult for users to discover which CLIs exist, where to download them from and which version they should download. As an example, there at least 5 CLI tools for interacting with various parts of OpenShift, which is not immediately obvious even to avid superusers.
provide a single CLI manager that knows all the other CLIs that exist for OpenShift and services that run on top of OpenShift, and enables downloading, upgrading and removing these plugins via simple commands.
Prioritized epics + deliverables (in scope / not in scope):
- R&D on a CLI manager for OpenShift
- List available CLI plugins, their latest version and the installed version
- Install the appropriate version of the CLI for a given cluster
- Update my installed version of a given CLI if updates are available
- kubectl plugin manager
- "Uc" (PoC by Hiram)
Why It is important:
- In order to drive adoption, we need to simplify interaction with services on OpenShift. Building on primitives implemented upstream in SIG-CLI allows us to have a broader scope of supported platforms and tools we will be able to deliver to customers.