manage install-components

Install or upgrade the specified components. The command creates or updates the operators and custom resource objects with the appropriate settings.

Required role
Instance administrator You must be an administrator of the projects that are associated with an instance to run this command.

Extended description

Run the install-components to install or upgrade the appropriate components for your business needs. You can install the components in a batch by specifying a comma-separated list of components, or you can install components individually.

Syntax

cpd-cli manage install-components \
--license_acceptance=true|false \
--components=<comma-separated-list-of-component-names> \
--release=<version> \
--operator_ns=<project-name> \
--instance_ns=<project-name> \
[--tethered_instance_ns=<comma-separated-list-of-project-names>] \
[--block_storage_class=<RWO-storage-class>] \
[--file_storage_class=<RWX-storage-class>] \
[--storage_vendor=portworx] \
[--image_pull_prefix=<image-location>] \
[--image_pull_secret=<pull-secret-name>] \
[--upgrade=true|false] \
[--skip_components=<comma-separated-list-of-component-names>] \
[--catsrc=true|false] \
[--sub=true|false] \
[--param-file=<file-name>] \
[--run_storage_tests=true|false] \
[--preview=true|false]

Arguments

The install-components command has no arguments.

Options

Table 1: Command options
Option Description
--block_storage_class If the service requires block storage, specify the name of an existing storage class that supports ReadWriteOnce (RWO) access.
Status
Refer to the installation documentation for the specified components for guidance.

Required if the component requires RWO storage.

Important: If you are using the default Portworx storage classes, use the --storage_vendor option instead.
Syntax
--block_storage_class=<RWO-storage-class>
Default value
No default.
Valid values
The name of a storage class that supports RWO access.
--catsrc Specify whether to create the catalog source objects for the specified components.
Restriction: This option applies only to components that use the Operator Lifecycle Manager (OLM) for installation.

If a service uses OLM for installation, you must create the catalog source objects for any services that you plan to install.

Status
Optional.
Syntax
--catsrc=true|false
Default value
true

If you omit this option, the default value is used.

Valid values
false
Do not create the catalog source objects for the specified components.

For example, specify false if you already ran the apply-olm to create the catalog source objects.

true
Create the catalog source objects for the specified components.
--components A comma-separated list of the components that you want to install or upgrade.
Status
Required.
Syntax
--components=<comma-separated-list-of-component-names>
Default value
There is no default value. The list depends on which components you want to install or upgrade.
Valid values
For the list of components, see Component IDs.

You can specify individual components or a comma-separated list of components.

--file_storage_class If the service requires file storage, specify the name of an existing storage class that supports ReadWriteMany (RWX) access.
Status
Refer to the installation documentation for the specified components for guidance.

Required if the component requires RWX storage.

Important: If you are using the default Portworx storage classes, use the --storage_vendor option instead.
Syntax
--file_storage_class=<RWX-storage-class>
Default value
No default.
Valid values
The name of a storage class that supports RWX access.
--image_pull_prefix The location from which your cluster pulls images.
Status
Optional.
Syntax
--image_pull_prefix=<image-location>
Default value
icr.io

If you omit this option, the default value is used.

Valid values
icr.io
Specify this option if you want to pull images from the IBM Entitled Registry.
${PRIVATE_REGISTRY_LOCATION}
Specify the PRIVATE_REGISTRY_LOCATION environment variable if you want to pull images from a private container registry.

Ensure that you set the environment variable before you run the command. For more information, see Setting up installation environment variables.

--image_pull_secret The name of the image pull secret that you created for this instance of IBM Software Hub.
Status
Optional.
Syntax
--image_pull_secret=<pull-secret-name>
Default value
ibm-entitlement-key

If you omit this option, the default value is used.

Valid values
The name of the secret that you created.
--instance_ns The project for the IBM Software Hub control plane and services.
Status
Required.
Syntax
--instance_ns=<project-name>
Default value
No default. User-defined.
Valid values
The name of an existing project on the Red Hat® OpenShift® Container Platform cluster.
--license_acceptance Specify whether you accept the license terms. You must set this option to true to install the software.
Status
Required.
Syntax
--license_acceptance=true
Default value
false

If you omit this option, the default value is used.

Valid values
false
This value indicates that you do not accept the license terms.

If you specify --license_acceptance=false, the specified components will not be installed.

true
This value indicates that you accept the license terms.

You must specify --license_acceptance=true to install the specified components.

--operator_ns The project for the IBM Software Hub control plane operators and service operators.
Status
Required.
Syntax
--operator_ns=<project-name>
Default value
No default. User-defined.
Valid values
The name of an existing project on the Red Hat OpenShift Container Platform cluster.
--param-file The name of a YAML file that includes additional parameters.

The file must be in the work directory on the client workstation.

Status
Optional.

Refer to the installation documentation for the specified components for guidance.

Syntax
--param-file=tmp/work/<file-name>
Default value
No default. User-defined.
Valid values
The name of a YAML file that includes additional parameters.
--preview Preview the commands that run when you issue this CLI command.

The command issues a series of oc commands. You can see the list of oc commands that are associated with the command.

The oc commands are saved to the preview.sh file in the work directory.

Status
Optional.
Syntax
--preview=true|false
Default value
false

If you omit this option, the default value is used.

Valid values
false
Run the commands to apply the changes to your cluster.
true
Preview the commands without running them.

You can copy the oc commands from the output and run them yourself. However, this method is not recommended. When you run the commands manually, you do not have access to the additional helper scripts that are included in the underlying Ansible® playbook.

--release The release that you want to install or upgrade to.
Status
Required.
Syntax
--release=<version>
Default value
No default. You must specify the release.
Valid values
  • 5.4.0
--run_storage_tests Specify whether to validate the performance and functionality of your storage.
Status
Optional
Syntax
--run_storage_tests=true|false
Default value
false
Valid values
false
Do not run the storage performance test.
true
Run the storage performance test.
--skip_components A comma-separated list of component IDs that are already have cluster-scoped operators.

If you have a cluster-scoped operator for a component, use this option to prevent the cpd-cli from creating a namespace-scoped instance of the operator. For example, if you have a cluster-scoped instance of the Cloud Native PostgreSQL operator, you can prevent the cpd-cli from creating a namespace-scoped operator if another component has a dependency on Cloud Native PostgreSQL.

Status
Optional.
Syntax
--skip_components=<comma-separated-list-of-component-names>
Default value
No default.
Valid values
For the list of components, see Component IDs.

You can specify individual components or a comma-separated list of components.

--storage_vendor The type of storage that you are using. This setting uses the recommended storage class when provisioning storage during installation.
Status
Required if you use Portworx storage with the recommended storage class names.
Remember: Using custom storage class names is not recommended if you use Portworx storage.
Syntax
--storage_vendor=portworx
Default value
No default.
Valid values
portworx
Specify portworx if you use the recommended storage class names for Portworx.

Refer to the installation documentation for the specified components for guidance.

--sub Specify whether to create the operator subscriptions for the specified components.
Restriction: This option applies only to components that use the Operator Lifecycle Manager (OLM) for installation.

If a service uses OLM for installation, you must create the operator subscriptions for any services that you plan to install.

Status
Optional.
Syntax
--sub=true|false
Default value
true

If you omit this option, the default value is used.

Valid values
false
Do not create the operator subscriptions for the specified components.

For example, specify false if you want to create and validate the catalog source objects before you create the operator subscriptions.

true
Create the operator subscriptions for the specified components.
--tethered_instance_ns A project (namespace) that is tethered to the project where IBM Software Hub is installed.
Important: You must the setup-tethered-ns command before you run the install-components command with this option.
Status
Optional. Specify this option if you want to create a service instance in the tethered project.
Restriction: Not all services that support service instances in tethered projects can use the install-components command to create service instances.

Refer to the service documentation to determine whether you can use the install-components command to create service instances.

Syntax
--tethered_instance_ns=<project-name>
Default value
No default. User-defined.
Valid values
The name of the project that is tethered to the project where IBM® Software Hub is installed.
--upgrade Specify whether you are upgrading an existing installation. You must set this option to true to upgrade the software.
Status
Required when you run an upgrade.
Syntax
--upgrade=true|false
Default value
false

If you omit this option, the default value is used.

Valid values
false
Install the software.
true
Upgrade the software

Examples

Note: The following example uses the recommended installation environment variables.

It is strongly recommended that you use a script to create environment variables with the correct values for your environment. For details, see Setting up installation environment variables.

Install the specified components
cpd-cli manage install-components \
--license_acceptance=true \
--components=${COMPONENTS} \
--release=${VERSION} \
--operator_ns=${PROJECT_CPD_INST_OPERATORS} \
--instance_ns=${PROJECT_CPD_INST_OPERANDS} \
--file_storage_class=${STG_CLASS_FILE} \
--block_storage_class=${STG_CLASS_BLOCK}
Preview the commands to install the specified components on a cluster that uses Portworx storage
cpd-cli manage install-components \
--license_acceptance=true \
--components=${COMPONENTS} \
--release=${VERSION} \
--operator_ns=${PROJECT_CPD_INST_OPERATORS} \
--instance_ns=${PROJECT_CPD_INST_OPERANDS} \
--storage_vendor=portworx \
--preview=true