helm-acr icon indicating copy to clipboard operation
helm-acr copied to clipboard

Alibaba Cloud's Helm plugin to push chart package to ChartMuseum.

trafficstars

helm acr

CircleCI Go Report Card

Helm plugin to push chart package to ChartMuseum.

This project is forked from chartmuseum/helm-push.

Some modifications has been made to meet the security requirements on Alibaba Cloud:

  • the plugin is able to talk to auth server to gain a Bearer Token.
  • the plugin is able to use the Bearer Token to download/upload charts to Chartmuseum.
  • the plugin registers acr(short for Alibaba Cloud Container Registry) as protocol name in plugin.yaml.

Installation

# make sure you have git installed
yum install -y git

# install plugin
helm plugin install https://github.com/AliyunContainerService/helm-acr

Usage

Before you use Alibaba Cloud Container Registry's hosted Helm charts service, you should:

  • purchase an ACR Enterprise Edition instance and activate its Helm charts service
  • have a Kubernetes cluster and have helm init done
  • make sure you have Internet access to GitHub to download plugin
  • create a Helm chart namespace in your ACR Enterprise Edition
# add namespace/repo to your local repository
# please change username/password/namespace/repo/url below
export HELM_REPO_USERNAME=username; export HELM_REPO_PASSWORD=password;
helm repo add demo acr://hello-acr-helm.cn-hangzhou.cr.aliyuncs.com/foo/bar --username ${HELM_REPO_USERNAME} --password ${HELM_REPO_PASSWORD}

# create an empty chart locally
helm create hello-acr

# push the chart
helm cm-push hello-acr demo

# delete local chart
rm -r hello-acr

# update charts index from remote
helm repo update

# show all remote charts
helm search

# fetch the chart we uploaded
helm fetch demo/hello-acr

# delete local repository
helm repo remove demo