Skip to content
forked from aslafy-z/helm-git

Helm plugin to fetch charts from Git repositories

License

Notifications You must be signed in to change notification settings

ctas582/helm-git

 
 

Repository files navigation

helm-git

CircleCI License MIT GitHub release

The Helm downloader plugin that provides GIT protocol support.

This fits multiple use cases:

  • Need to keep charts private
  • Doesn't want to package charts before installing
  • Charts in a sub-path, or with another ref than master

Install

The installation itself is simple as:

$ helm plugin install https://github.com/aslafy-z/helm-git.git

You can install a specific release version:

$ helm plugin install https://github.com/aslafy-z/helm-git.git --version 0.4.0

To use the plugin, you only need git. If you want to build the plugin from source, or you want to contribute to the plugin, please see these instructions.

Uninstall

$ helm plugin remove helm-git

Usage

helm-git will package any chart that is not so you can directly reference paths to original charts.

Here's the Git urls format, followed by examples:

git+https://[provider.com]/[user]/[repo]@[path/to/charts][?[ref=git-ref]&[sparse=0]]
git+ssh://git@[provider.com]/[user]/[repo]@[path/to/charts][?[ref=git-ref]&[sparse=0]]
git+file://[path/to/repo]@[path/to/charts][?[ref=git-ref]&[sparse=0]]

git+https://github.com/jetstack/cert-manager@deploy/charts?ref=v0.6.2&sparse=0
git+ssh://git@github.com/jetstack/cert-manager@deploy/charts?ref=v0.6.2&sparse=1
git+ssh://git@github.com/jetstack/cert-manager@deploy/charts?ref=v0.6.2

Add your repository:

$ helm repo add cert-manager git+https://github.com/jetstack/cert-manager@deploy/charts?ref=v0.6.2

You can use it as any other Helm chart repository. Try:

$ helm search cert-manager
NAME                                    CHART VERSION   APP VERSION     DESCRIPTION                  
cert-manager/cert-manager               v0.6.6          v0.6.2          A Helm chart for cert-manager

$ helm install cert-manager/cert-manager --version "0.6.6"

Fetching also works:

$ helm fetch cert-manager/cert-manager --version "0.6.6"
$ helm fetch git+https://github.com/jetstack/cert-manager@deploy/charts/cert-manager-v0.6.2.tgz?ref=v0.6.2

Arguments

name description default
ref Set git ref to a branch or tag. Works also for commits with sparse=0 master
sparse Set git strategy to sparse. Will try to fetch only the needed commits for the target path. 1

Note on Git authentication

As this plugin uses git CLI to clone repos. You can configure private access in the same manner that with any git repo.

Contributing

Contributions are welcome! Please see these instructions that will help you to develop the plugin.

Alternatives

License

MIT

About

Helm plugin to fetch charts from Git repositories

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 100.0%