Helm (selm)
The selm subcommand group wraps Helm operations for chart management, deployment, and release lifecycle in Kubernetes clusters.
Synopsis
Commands
| Command | Description |
|---|---|
create |
Create a new Helm chart |
install |
Install a chart into a cluster |
upgrade |
Upgrade (or install) a release |
uninstall |
Remove a release |
rollback |
Roll back to a previous revision |
status |
Show release status |
list |
List all releases |
history |
Show revision history for a release |
lint |
Lint a chart |
template |
Render chart templates locally |
pull |
Download a chart from a repository |
provision |
Run install → upgrade → lint → template |
repo add |
Add a chart repository |
repo update |
Update chart repositories |
repo debug |
Show debug information about Helm repository configuration |
plugin install |
Install a Helm plugin |
plugin list |
List installed plugins |
plugin uninstall |
Remove a Helm plugin |
init |
Generate Helm-focused smurf.yaml |
install
Install a Helm chart into a Kubernetes cluster.
Common flags:
| Flag | Description |
|---|---|
-n, --namespace |
Target namespace |
-f, --values |
Values file(s) |
--set |
Set values on the command line |
--atomic |
Roll back on failure |
--timeout |
Operation timeout in seconds |
--debug |
Enable debug output |
upgrade
Upgrade an existing release or install if not present.
Common flags:
| Flag | Description |
|---|---|
--install |
Install if release does not exist |
--atomic |
Roll back on failure |
--wait |
Wait for resources to be ready |
--force |
Force resource updates |
--history-max |
Maximum revision history to retain |
-n, --namespace |
Target namespace |
-f, --values |
Values file(s) |
--set |
Set values on the command line |
--timeout |
Operation timeout in seconds |
--debug |
Enable debug output |
Multi-threading
As of v0.1.2+, smurf selm upgrade supports multi-threaded monitoring for faster readiness checks.
provision
Run a full Helm workflow: install, upgrade, lint, and template in one command.
smurf selm provision my-release ./charts/my-app -n production
smurf selm provision # reads from smurf.yaml
lint
Validate a chart against best practices.
template
Render chart templates locally without installing.
rollback
Roll back a release to a previous revision.
history
Show revision history for a release.
Use --history-max on upgrade to control how many revisions are retained.
pull
Download a chart from a remote repository.
Supports OCI registries and traditional Helm repositories.
repo
Manage Helm chart repositories.
plugin
Manage Helm plugins.
Using smurf.yaml
Generate a Helm config:
Then run commands without positional arguments:
GitHub Actions example
jobs:
helm-deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- name: Setup Smurf
uses: clouddrove/[email protected]
with:
version: v1.1.9
- name: Lint chart
run: smurf selm lint ./charts/my-app
- name: Render templates
run: smurf selm template my-app ./charts/my-app
- name: Deploy
run: |
smurf selm upgrade my-app ./charts/my-app \
--install --atomic --wait \
-n production \
-f ./charts/my-app/values.yaml
See Configuration for the full smurf.yaml reference.