/helm-acr

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

Primary LanguageGoApache License 2.0Apache-2.0

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