Merge "[COMMON] Fix more array bashisms"
[oom.git] / kubernetes / helm / plugins / undeploy / undeploy.sh
1 #!/bin/sh
2
3 usage() {
4 cat << EOF
5 Delete an umbrella Helm Chart, and its subcharts, that was previously deployed using 'Helm deploy'.
6
7 Example of deleting all Releases that have the prefix 'demo'.
8   $ helm undeploy demo
9
10   $ helm undeploy demo --purge
11
12 Usage:
13   helm undeploy [RELEASE] [flags]
14
15 Flags:
16       --purge     remove the releases from the store and make its name free for later use
17 EOF
18 }
19
20 undeploy() {
21   RELEASE=$1
22   FLAGS=$2
23
24   reverse_list=
25   for item in $(helm ls -q --all | grep $RELEASE)
26   do
27     reverse_list="$item $reverse_list"
28   done
29   for item in $reverse_list
30   do
31     helm del $item $FLAGS
32   done
33 }
34
35 if [ -z "$1" ]; then
36   echo "Error: command 'undeploy' requires a release name"
37   exit 1
38 fi
39
40 case "${1:-"help"}" in
41   "help")
42     usage
43     ;;
44   "--help")
45     usage
46     ;;
47   "-h")
48     usage
49     ;;
50   *)
51     undeploy $1 $(echo ${@} | sed 's/^ *[^ ]* *//')
52     ;;
53 esac
54
55 exit 0