Skip to content

Update tooling with dellctl install powerstore#1698

Merged
alikdell merged 51 commits intomainfrom
usr/tyea/dellctl-install
Dec 5, 2025
Merged

Update tooling with dellctl install powerstore#1698
alikdell merged 51 commits intomainfrom
usr/tyea/dellctl-install

Conversation

@atye
Copy link
Copy Markdown
Collaborator

@atye atye commented Nov 14, 2025

Description

  • Adds dellctl install to CLI tooling.
  • Adds the latest csm version from hugo.toml to the table and collapse shortcodes.

GitHub Issues

List the GitHub issues impacted by this PR:

GitHub Issue #

Checklist:

  • Have you run a grammar and spell checks against your submission?
  • Have you tested the changes locally?
  • Have you tested whether the hyperlinks are working properly?
  • Did you add the examples wherever applicable?
  • Have you added high-resolution images?

@github-actions
Copy link
Copy Markdown

github-actions bot commented Nov 14, 2025

Test Results

79 tests  ±0   79 ✅ ±0   4s ⏱️ ±0s
 3 suites ±0    0 💤 ±0 
 1 files   ±0    0 ❌ ±0 

Results for commit 8f5926a. ± Comparison against base commit f6f26ac.

♻️ This comment has been updated with latest results.

> | reclaimPolicy | Delete |
> | volumeBindingMode | Immediate |
> | csi-volume-prefx | csivol |
> | csi-node-prefix | csi-node |
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image Left Alignment.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed.

@@ -83,6 +83,130 @@ Outputs help text

---

### dellctl install powerstore

Installs Dell CSI Powerstore
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This command deploys the CSI PowerStore driver and optional modules in your Kubernetes or OpenShift environment.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated.


Installs Dell CSI Powerstore

##### Flags
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Available Flags

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated.


```bash
--certified Optional. If set, the certified sample files pulling from registry.redhat.com are displayed instead of quay.io sample files.
--config-version string Optional version of Container Storage Modules to install. Defaults to the latest version.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated.

--certified Optional. If set, the certified sample files pulling from registry.redhat.com are displayed instead of quay.io sample files.
--config-version string Optional version of Container Storage Modules to install. Defaults to the latest version.
--csi-node-prefix string Optional param to set the prefix for all CSI nodes provisioned by the driver. Defaults to 'csi-node'.
--csi-volume-prefix string Optional param to set the prefix for all CSI volumes provisioned by the driver. Defaults to 'csivol'.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No description provided.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated.

--config-version string Optional version of Container Storage Modules to install. Defaults to the latest version.
--csi-node-prefix string Optional param to set the prefix for all CSI nodes provisioned by the driver. Defaults to 'csi-node'.
--csi-volume-prefix string Optional param to set the prefix for all CSI volumes provisioned by the driver. Defaults to 'csivol'.
--csm-authorization-proxy-hostname string Optional. If deploying CSM Authorization, this parameter will be used for the Authorization Proxy hostname in the Operator configuration.
Copy link
Copy Markdown
Collaborator

@anandrajak1 anandrajak1 Nov 14, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

<string>

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated for . Can you clarify what you mean by "No description provided."?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated.

-s, --storage stringArray Storage endpoint configuration in the form 'endpoint=<IP|hostname>,username=<user>[,otherKey=otherValue]'. Can be provided multiple times.
--tenant-token string Path to a YAML file containing Authorization tenant token (proxy-authz-token secret).
--validate-connectivity Optional. If set, run a DaemonSet on all nodes and verify connectivity to storage systems.
```
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image Can you get the tabular format.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated. Also moved these flags to the dellctl install command as they will be redundant for each platform.


```bash
--certified Optional. If set, the certified sample files pulling from registry.redhat.com are displayed instead of quay.io sample files.
--config-version string Optional version of Container Storage Modules to install. Defaults to the latest version.
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

image

@@ -11,6 +11,8 @@ This document outlines all dellctl commands, their intended use, options that ca
| Command | Description |
| - | - |
| [dellctl](../cli/#dellctl) | dellctl is used to interact with Container Storage Modules |
| [dellctl install](../cli/#dellctl-install) | Install a Dell CSI Driver |
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CSI Driver

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated.

@@ -11,6 +11,8 @@ This document outlines all dellctl commands, their intended use, options that ca
| Command | Description |
| - | - |
| [dellctl](../cli/#dellctl) | dellctl is used to interact with Container Storage Modules |
| [dellctl install](../cli/#dellctl-install) | Install a Dell CSI Driver |
| [dellctl install powerstore](../cli/#dellctl-install-powerstore) | Install Dell CSI Powerstore |
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CSI Driver

Copy link
Copy Markdown
Collaborator Author

@atye atye Nov 17, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

dellctl install powerstore is specific for Powerstore. I think this command should say Powerstore specifically.

Install CSI Powerstore?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the description, just remove the Dell. Install Dell CSI Powerstore > Install CSI Powerstore
dont change the command.

dellctl install powerstore --from-file=config.yaml
```

Sample config.yaml to install pre-requisities and validate connectivity:
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggestion: Could we have a drop down here; one for a minimal config and the other showing all the options in the config?

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds Good

@anandrajak1
Copy link
Copy Markdown
Collaborator

During installation flow, how we are guiding customer to use the alternate method with dellctl installation?

@atye
Copy link
Copy Markdown
Collaborator Author

atye commented Nov 17, 2025

During installation flow, how we are guiding customer to use the alternate method with dellctl installation?

Updating the installation flow pages will be another PR.

##### Examples:

```bash
dellctl install powerstore --machineconfig --validate-connectivity \
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

--namespace is required

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed.

@atye atye requested a review from hoppea2 November 17, 2025 21:17

This command deploys the CSI PowerStore driver and optional modules in your Kubernetes or OpenShift environment.

##### Examples:
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

question: should we add a small piece about which flags are only allowed to be used through --from-file? Just looking through the sample config.yaml might result in some users not knowing about the existence of some options.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added this section to dellctl install.

reclaimPolicy: Delete
volumeBindingMode: WaitForFirstConsumer
allowVolumeExpansion: true
allowedTopologies:
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

question: is this legal formatting for the topologies? I have been using something like

allowedTopologies:
  - key: csi-powerstore.dellemc.com/<IP>
     values:
       - true

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Formatting it correctly for the storge class is handled in generation/creation.


>**NOTE:** `--machineconfig` is applicable for both OpenShift and Kubernetes.
>
> **DEFAULTS**:
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we add all defaults here?

Setting Value
nfs-acls 0777
skip-certificate-validation false
config-version latest version of CSM

There are also more default values in the storage class configurations, but it might be too much here if we only want CLI/from-file specific defaults here.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added more defaults.

| csm-authorization-proxy-hostname <string> | If deploying CSM Authorization, the hostname of the Authorization Proxy Server. | No |
| force | The existing Container Storage Module resources are deleted and then recreated. | No |
| from-file <string> | Path to a YAML file containing configuration details for installing the CSM. | No |
| machineconfig | Configure pre-requisities based on the provided block-protocol parameter. | No |
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might be nice to mention what prerequisites are being installed here. There isn't much clarity on what this flag is doing. I think part of the reason is it's used for both K8s and OCP, but for now, maybe link one of the prerequisites pages:

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated the description with a link to the installation page for the user to navigate to the relevant orchestrator and platform.

We only support Powerstore right now but that will change and I thought it was ok.

```bash
dellctl install powerstore --from-file=config.yaml
```

Copy link
Copy Markdown
Collaborator

@anandrajak1 anandrajak1 Nov 18, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Config file examples

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The examples are in the dropdowns just below this.

dellctl install powerstore --from-file=config.yaml
```

{{< collapse id="1" title="Sample config.yaml to install pre-requisities and validate connectivity" card="false" >}}
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Check prerequisites and connectivity

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It doesn't check, it installs. There is a separate option to check connectivity.

```
{{< /collapse >}}

{{< collapse id="2" title="Sample config.yaml to to output yaml" card="false" >}}
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Specify output format to yaml.

```
{{< /collapse >}}

{{< collapse id="3" title="Sample config.yaml with all configuration options" card="false" >}}
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Full config


##### Output

Outputs help text
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Outputs help text ?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This phrase is used elsewhere for other commands so I followed that pattern. For dellctl install, it will only output help text which isn't shown here as it's long.


> **NOTE:** `--machineconfig` is applicable for both OpenShift and Kubernetes.
>
> **DEFAULTS**:
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can this added to existing table? and have one more column as default value?

> - skip-certificate-validation
> - storage-class
> - metro-replication
> - primary
Copy link
Copy Markdown
Collaborator

@anandrajak1 anandrajak1 Nov 18, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

primary? - some explanation about it? no examples on primary or secondary.

@atye atye force-pushed the usr/tyea/dellctl-install branch from 5e0ec53 to 5f54093 Compare November 21, 2025 21:41
santhoshatdell
santhoshatdell previously approved these changes Nov 21, 2025
santhoshatdell
santhoshatdell previously approved these changes Nov 21, 2025
@alikdell alikdell merged commit 1f88049 into main Dec 5, 2025
8 checks passed
@alikdell alikdell deleted the usr/tyea/dellctl-install branch December 5, 2025 18:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants