Skip to content

Conversation

banjoh
Copy link
Member

@banjoh banjoh commented Oct 9, 2025

DO NOT MERGE Helm v4 is not GA yet

What this PR does / why we need it:

Adds hidden <installer>** helm subcommand. This uses a feature part of Helm v4 which is not yet GA. The command will be exposed as a helm command in the EC shell

Test results showing the command launched in EC shell like we do kubectl

banjoh@ae7f5f2b:~$ sudo ./embedded-cluster-smoke-test-staging-app version
+-----------------------------------------+----------------------------+
| COMPONENT                               | VERSION                    |
+-----------------------------------------+----------------------------+
| embedded-cluster-smoke-test-staging-app | appver-dev-c3efca5         |
| Installer                               | 2.11.3+k8s-1.33-70-g2a8fa  |
| Kubernetes                              | v1.33.4+k0s.0              |
| AdminConsole                            | v1.128.2-ec.1              |
| EmbeddedClusterOperator                 | v2.11.3+k8s-1.33-70-g2a8fa |
| OpenEBS                                 | v4.3.3                     |
| Registry                                | v3.0.0                     |
| SeaweedFS                               | v4.0.393                   |
| Velero                                  | v11.1.0                    |
| goldpinger                              | v6.1.2                     |
| ingress-nginx                           | v4.11.3                    |
+-----------------------------------------+----------------------------+

banjoh@ae7f5f2b:~$ sudo ./embedded-cluster-smoke-test-staging-app shell

    __4___
 _  \ \ \ \   Welcome to embedded-cluster-smoke-test-staging-app debug shell.
<'\ /_/_/_/   This terminal is now configured to access your cluster.
 ((____!___/) Type 'exit' (or Ctrl+D) to exit.
  \0\0\0\0\/
 ~~~~~~~~~~~
root@ae7f5f2b:/home/banjoh# export KUBECONFIG="/var/lib/embedded-cluster/k0s/pki/admin.conf"
root@ae7f5f2b:/home/banjoh# export PATH="$PATH:/var/lib/embedded-cluster/bin"

root@ae7f5f2b:/home/banjoh# helm version
version.BuildInfo{Version:"v4.0", GitCommit:"", GitTreeState:"", GoVersion:"go1.25.2"}

root@ae7f5f2b:/home/banjoh# helm ls -A
NAME                            NAMESPACE               REVISION        UPDATED                                 STATUS          CHART                                                   APP VERSION
embedded-cluster-operator       embedded-cluster        1               2025-10-16 18:06:36.476864611 +0000 UTC pending-install embedded-cluster-operator-2.11.3+k8s-1.33-70-g2a8fa            
openebs                         openebs                 1               2025-10-16 18:06:12.000591745 +0000 UTC deployed        openebs-4.3.3                                           4.3.3  
root@ae7f5f2b:/home/banjoh#

helm subcommand is hidden from help output

banjoh@ae7f5f2b:~$ sudo ./embedded-cluster-smoke-test-staging-app help
embedded-cluster-smoke-test-staging-app

Usage:
  embedded-cluster-smoke-test-staging-app [flags]
  embedded-cluster-smoke-test-staging-app [command]

Available Commands:
  admin-console  Manage the Embedded Cluster Smoke Test Staging App Admin Console
  completion     Generate the autocompletion script for the specified shell
  enable-ha      Enable high availability for the Embedded Cluster Smoke Test Staging App cluster
  help           Help about any command
  install        Install Embedded Cluster Smoke Test Staging App
  join           Join a node to the Embedded Cluster Smoke Test Staging App cluster
  reset          Remove Embedded Cluster Smoke Test Staging App from the current node
  restore        Restore Embedded Cluster Smoke Test Staging App from a backup
  shell          Start a shell with access to the Embedded Cluster Smoke Test Staging App cluster
  support-bundle Generate a support bundle
  update         Update Embedded Cluster Smoke Test Staging App with a new air gap bundle
  version        Show the Embedded Cluster Smoke Test Staging App component versions

Flags:
  -h, --help   help for embedded-cluster-smoke-test-staging-app

Use "embedded-cluster-smoke-test-staging-app [command] --help" for more information about a command.

Which issue(s) this PR fixes:

https://app.shortcut.com/replicated/story/120214/expose-the-helm-command-via-the-ec-shell

Does this PR require a test?

Manually testing helm commands

Does this PR require a release note?

Add helm subcommand to EC installer binary

Does this PR require documentation?

@banjoh banjoh marked this pull request as draft October 9, 2025 15:26
if err != nil {
slog.Warn("command failed", slog.Any("error", err))
os.Exit(1)
}

This comment was marked as resolved.

Copy link

github-actions bot commented Oct 9, 2025

This PR has been released (on staging) and is available for download with a embedded-cluster-smoke-test-staging-app license ID.

Online Installer:

curl "https://staging.replicated.app/embedded/embedded-cluster-smoke-test-staging-app/ci/appver-dev-c3efca5" -H "Authorization: $EC_SMOKE_TEST_LICENSE_ID" -o embedded-cluster-smoke-test-staging-app-ci.tgz

Airgap Installer (may take a few minutes before the airgap bundle is built):

curl "https://staging.replicated.app/embedded/embedded-cluster-smoke-test-staging-app/ci-airgap/appver-dev-c3efca5?airgap=true" -H "Authorization: $EC_SMOKE_TEST_LICENSE_ID" -o embedded-cluster-smoke-test-staging-app-ci.tgz

Happy debugging!

@banjoh banjoh changed the title WIP feat: expose the helm command via the ec shell WIP feat: expose the helm command via the installer binary Oct 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant