Helm delete all releases

12/14/2017

I'm trying find a way to delete all deployed releases in Helm.

It appears that Helm does not support deleting all releases, with --all or otherwise.

Would there be another way to delete all Helm releases in one command?

-- grizzthedj
kubernetes-helm

5 Answers

4/30/2018

I regularly delete all releases in Helm too, so I thought it'd be useful to make a Helm plugin for it.

Install:

helm plugin install https://github.com/astronomerio/helm-delete-all-plugin --version 0.0.2

(You may be able to omit the --version x part on newer versions of Helm.)

Usage:

helm delete-all

https://github.com/astronomerio/helm-delete-all-plugin

-- Taylor Edmiston
Source: StackOverflow

12/14/2017

To delete all Helm releases(in Helm v2.X) with a single command, you can use some good old bash. Just pipe the output of helm ls --short to xargs, and run helm delete for each release.

helm ls --all --short | xargs -L1 helm delete

Adding --purge will delete the charts as well, as per @Yeasin Ar Rahman's comment.

helm ls --all --short | xargs -L1 helm delete --purge

-- grizzthedj
Source: StackOverflow

7/24/2018

This worked for me in a powershell cmd window:

helm del $(helm ls --all --short) --purge
-- Rod
Source: StackOverflow

6/14/2018

helm delete $(helm ls --short)

Description:

helm ls --short gives a list of releases ids.

helm delete id1 id2 id3 deletes realeses with ids: id1, id2, id3.

So combining them we get: helm delete $(helm ls --short)

-- imos
Source: StackOverflow

1/30/2020

For helm 3 you have to provide namespaces so there is an awk step before xargs :

helm ls -a --all-namespaces | awk 'NR > 1 { print "-n "$2, $1}' | xargs -L1 helm delete

This results in commands like:

helm delete -n my-namespace my-release

-- jhnclvr
Source: StackOverflow