helman
v1.1.1
Published
The package manager layer on top of Helm and Kubernetes. Allows for helm chart based kustomizations. I hope functionality described in this cli tool will be a part of `helm` cli in future. In the meantime, this cli tool provides an essential complexity ma
Downloads
27
Readme
Helman: Kubernetes Kustomize <> Helm
The package manager layer on top of Helm and Kubernetes. Allows for helm chart based kustomizations.
I hope functionality described in this cli tool will be a part of helm
cli in future.
In the meantime, this cli tool provides an essential complexity management to helm and kustomize workflows.
System Requirements
- helm
- kubectl
Installation
npm install -g helman
helman help
Usage
helman init
# -> creates npm/package.json like helm.json, helm_charts folder and k8s folder for kustomize
helman install jetstack/cert-manager
# -> saves latest cert-manager chart to helm_charts folder
# -> saves the installed version to helm.json
# -> creates k8s/bases/cert-manager/kustomization.yaml folder and links it to k8s/bases/kustomization.yaml
# -> builds the jetstack/cert-manager helm chart and creates k8s/bases/cert-manager/helm.yaml
# -> links k8s/bases/cert-manager/helm.yaml to k8s/bases/cert-manager/kustomization.yaml
# jetstack/cert-manager is a custom helm chart that isnt in stable repos, in case if jetstack isnt in your local helm repo:
helm repo add jetstack https://charts.jetstack.io && helman install jetstack/cert-manager
helman install stable/prometheus v0.8.1
# -> saves v0.8.1 prometheus chart to helm_charts folder
# -> saves the installed version to helm.json
# -> creates k8s/bases/prometheus/kustomization.yaml folder and links it to k8s/bases/kustomization.yaml
# -> builds the stable/prometheus helm chart and creates k8s/bases/prometheus/helm.yaml
# -> links k8s/bases/prometheus/helm.yaml to k8s/bases/prometheus/kustomization.yaml
helman build
# -> reads all the helm charts on helm.json and starts building their helm template outputs:
# -> rebuilds jetstack/cert-manager to k8s/bases/cert-manager/helm.yaml
# -> rebuilds stable/prometheus to k8s/bases/prometheus/helm.yaml
helman uninstall jetstack/cert-manager
# -> removes jetstack/cert-manager from helm_charts
# -> removes jetstack/cert-manager from helm.json
# -> removes k8s/bases/cert-manager
rm -rf helm_charts && helman install
# -> resets/reinstalls helm_charts folder with defined charts on helm.json and rebuilds them