nutellinoit / kubenvz

Kubectl, Kustomize, Helm and Helmfile version manager
MIT License
38 stars 3 forks source link
helm helmfile kubectl kustomize version-manager

This project has been deprecated

Actions Status

Actions Status

Kubenvz

kubectl & kustomize & helm & helmfile version manager

Inspired by terraenv https://github.com/aaratn/terraenv

Installation

Automatic

Install via Homebrew on OSx

$ brew tap nutellinoit/kubenvz
$ brew install kubenvz

Upgrade

via Homebrew on OSx

$ brew upgrade kubenvz

On Linux

Download and install with:

wget https://github.com/nutellinoit/kubenvz/releases/download/v0.4.0/kubenvz_linux_x64_v0.4.0.tar.gz -O kubenvz.tar.gz
tar -zxvf kubenvz.tar.gz
sudo mv kubenvz /usr/local/bin/

Usage

kubenvz <kubectl / kustomize / helm / helmfile> install [remote_version]

Install a specific version of kubectl/kustomize/helm/helmfile , list available remote versions with kubenvz kustomize list remote :

kustomize has lot of release, kubenvz filter all releases that are not cli executable

$ kubenvz kubectl install 1.16.0
$ kubenvz kustomize install 1.0.10
$ kubenvz helm install v3.1.0
$ kubenvz helmfile install v0.100.1

kubenvz <kubectl / kustomize / helm / helmfile> list <remote / local>

To list local installed version use:

kubenvz kustomize list local

kubenvz <kubectl / kustomize / helm / helmfile> use [local_version]

To use a local installed version:

kubenvz kustomize use 1.0.10

Fast switcher

To have a faster switch between version, install the kbnvz tool (working on macos and linux):

sudo wget https://github.com/nutellinoit/kubenvz/releases/download/v0.4.0/kbnvz_v0.4.0 -O /usr/local/bin/kbnvz
sudo chmod +x /usr/local/bin/kbnvz

kbnvz <kubectl / kustomize / helm / helmfile> [local_version]

To use the fast switcher script:

kbnvz kustomize 1.0.10

Develop

Create a virtualenv:

python3 -m venv .

Start virtualenv:

source bin/activate

Install requirements:

pip install -r requirements.txt

LICENSE

Inspiration