$ ROUTE=$(oc get route/openshift-cli-manager -n openshift-cli-manager-operator -o=jsonpath='{.spec.host}')
Krew always works with OpenShift CLI ( |
You can run the CLI Manager Operator in both connected and disconnected environments. In particular, it eases the installation and management of CLI plugins in disconnected environments. The CLI Manager Operator makes Krew compatible with the oc
CLI. Cluster administrators can use the CLI Manager Operator to add CLI plugin custom resources that can then be accessed in both connected and disconnected environments. Cluster administrators install and configure the CLI Manager Operator, and users then add the custom index to Krew and add CLI plugins to the CLI Manager Operator.
Using the CLI Manager Operator to install and manage plugins for the OpenShift CLI is a Technology Preview feature only. Technology Preview features are not supported with Red Hat production service level agreements (SLAs) and might not be functionally complete. Red Hat does not recommend using them in production. These features provide early access to upcoming product features, enabling customers to test functionality and provide feedback during the development process. For more information about the support scope of Red Hat Technology Preview features, see Technology Preview Features Support Scope. |
Install the CLI Manager Operator to facilitate adding CLI plugins in both connected and disconnected environments.
You are logged in to OKD as a user with the cluster-admin
role.
You have access to the OKD web console.
Log in to the OKD web console.
Create the required namespace for the CLI Manager Operator:
Navigate to Administration → Namespaces and click Create Namespace.
In the Name field, enter openshift-cli-manager-operator
and click Create.
Install the CLI Manager Operator:
Navigate to Operators → OperatorHub.
In the filter box, enter CLI Manager Operator.
Select the CLI Manager Operator and click Install.
On the Install Operator page, complete the following steps:
Ensure that the Update channel is set to tech preview, which installs the latest Technology Preview release of the CLI Manager Operator.
From the drop-down menu, select A specific namespace on the cluster and select openshift-cli-manager-operator.
Click Install.
Create the CliManager
resource by completing the following steps:
Navigate to Installed Operators.
Select CLI Manager Operator.
Select the CLI Manager tab.
Click Create CliManager.
Use the default Name.
Click Create.
The new CliManager
resource is listed in the CLI Manager tab.
Navigate to Operators → Installed Operators.
Verify that CLI Manager Operator is listed with a Status of Succeeded.
You can use the terminal to add the CLI manager custom index to Krew. This procedure is required for the CLI Manager Operator to function correctly and needs to be done only once.
The custom index connects Krew to the CLI Manager Operator binaries and enables the CLI Manager Operator to work in disconnected environments.
If you use self-signed certificates, mark the certificate as trusted on your local operating system to use Krew. |
The CLI Manager Operator is installed.
To establish the ROUTE
variable, enter the following command:
$ ROUTE=$(oc get route/openshift-cli-manager -n openshift-cli-manager-operator -o=jsonpath='{.spec.host}')
To add the custom index to Krew, enter the following command:
$ oc krew index add <custom_index_name> https://$ROUTE/cli-manager
To update Krew, enter the following command and check for any errors:
$ oc krew update
Updated the local copy of plugin index.
Updated the local copy of plugin index <custom_index_name>.
New plugins available:
* ocp/<plugin_name>
You can add a CLI plugin to the CLI Manager Operator by using the YAML View.
You are logged in to OKD as a user with the cluster-admin
role.
The CLI Manager Operator is installed.
Log in to the OKD web console.
Navigate to Operators → Installed Operators.
From the list, select CLI Manager Operator.
Select the CLI Plugin tab.
Click Create Plugin.
In the text box, enter the information for the plugin you are installing. See the following example YAML file.
apiVersion: config.openshift.io/v1alpha1
kind: Plugin
metadata:
name: <plugin_name> (1)
spec:
description: <description_of_plugin>
homepage: <plugin_homepage>
platforms:
- bin: (2)
files:
- from: <plugin_file_path>
to: .
image: <plugin_image>
imagePullSecret: (3)
platform: <platform> (4)
shortDescription: <short_description_of_plugin>
version: <version> (5)
1 | The name of the plugin you plan to use in commands. |
2 | Bin specifies the path to the plugin executable. |
3 | Optional: If the registry is not public, add a pull secret to access your plugin image. |
4 | Add the architecture for your system; for example, linux/amd64 , darwin/arm64 , windows/amd64 , or another architecture. |
5 | Version must be in v0.0.0 format. |
Click Save.
Enter the following command to see if the plugin is listed and has been added successfully:
$ oc get plugin/<plugin_name> -o yaml
<plugin_name> ready to be served.