Skip to content

swardlincoln/helmenv

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 

Repository files navigation

helmenv

DISCLAIMER This project is discontinued, but there's a better version here. You may check the reasons behind that decision here. And you can see how to migrate to the new project here.

Helm version manager inspired by tfenv. It also manages the plugins, charts and others. It basically assigns the variable HELM_HOME, which by default points to $HOME/.helm/, to the path $HOME/.helm/$version.

Support

Currently helmenv supports the following OSes

  • macOS (64bit)
  • Linux
    • 32bit
    • 64bit
    • Arm
    • Arm64

Installation

  1. Check out helmenv into any path (${HOME}/.helm in the example)
git clone https://github.com/alexppg/helmenv.git ~/.helm
  1. Add ~/.helm to your $PATH
echo 'export PATH="$HOME/.helm:$PATH"' >> ~/.bashrc
# Or
echo 'export PATH="$HOME/.helm:$PATH"' >> ~/.zshrc
  1. Source the script
echo 'source $HOME/.helm/helmenv.sh' >> ~/.bashrc
# Or
echo 'source $HOME/.helm/helmenv.sh' >> ~/.zshrc

Usage

helmenv help

$ helmenv help
Usage: helmenv <command> [<options>]
Commands:
    list-remote   List all installable versions
    list          List all installed versions
    install       Install a specific version
    use           Switch to specific version
    uninstall     Uninstall a specific version

helmenv list-remote

List installable versions:

$ helmenv list-remote
Fetching versions...
v1.2.1
v2.0.0
v2.0.1
v2.0.2
...

helmenv list

List installed versions, and show an asterisk after the currently active version:

$ helmenv list
v2.10.0
v2.11.0
v2.12.3 *

helmenv install

Install a specific version:

$ helmenv install v2.10.0
Creating $HOME/.helm/v2.10.0
Creating $HOME/.helm/v2.10.0/repository
Creating $HOME/.helm/v2.10.0/repository/cache
Creating $HOME/.helm/v2.10.0/repository/local
Creating $HOME/.helm/v2.10.0/plugins
Creating $HOME/.helm/v2.10.0/starters
Creating $HOME/.helm/v2.10.0/cache/archive
Creating $HOME/.helm/v2.10.0/repository/repositories.yaml
Adding stable repo with URL: https://kubernetes-charts.storage.googleapis.com
Adding local repo with URL: http://127.0.0.1:8879/charts
$HELM_HOME has been configured at $HOME/.helm/v2.10.0.
Not installing Tiller due to 'client-only' flag having been set
Happy Helming!

helmenv use

Switch to specific version:

$ helmenv use
Done! Now helm points to the v2.11.0 version

helmenv uninstall

Uninstall a specific version:

$ helmenv uninstall 0.7.0
The version v2.12.3 is uninstalled!

Related Projects

There's a similar project for managing kubectl versions.

License

GPL3

About

Helm version manager

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 100.0%