认识
Host your own Helm Chart Repository. ChartMuseum is an open-source, easy to deploy, Helm Chart Repository server.
ChartMuseum is an open-source Helm Chart Repository server written in Go (Golang), with support for cloud storage backends, including Google Cloud Storage, Amazon S3, Microsoft Azure Blob Storage, Alibaba Cloud OSS Storage and Openstack Object Storage.
ChartMuseum is a child project under the Helm umbrella.
官网:https://chartmuseum.com/
文档:https://chartmuseum.com/docs/#
仓库:https://github.com/helm/chartmuseum
组成
ChartMuseum | https://helm.sh/docs/topics/chart_repository/
helm cm-push plugin | https://github.com/chartmuseum/helm-push
构建
在线安装 cm-push 插件
helm plugin install https://github.com/chartmuseum/helm-push
离线安装 cm-push 插件
下载并直接执行 helm-cm-push 命令即可。
该下代码供 Jenkins Custom Tools 使用:
if [ ! -e ./linux-amd64/helm ] then rm -rf ./helm-v3.13.3-linux-amd64.tar.gz ./linux-amd64/ wget https://mirrors.huaweicloud.com/helm/v3.13.3/helm-v3.13.3-linux-amd64.tar.gz tar -xf ./helm-v3.13.3-linux-amd64.tar.gz chmod u+x ./linux-amd64/helm fi if ! ./linux-amd64/helm-cm-push 1>/dev/null 2>&1 then wget https://package.devops.d3rm.org/repository/static-resources/helm/helm-push_0.10.4_linux_amd64.tar.gz tar -xvf helm-push_0.10.4_linux_amd64.tar.gz cp bin/helm-cm-push ./linux-amd64/ chmod u+x ./linux-amd64/helm-cm-push fi
性质
强制推送 | … Repository does not allow updating assets: …
–disable-force-overwrite do not allow chart versions to be re-uploaded, even with ?force querystring [$DISABLE_FORCE_OVERWRITE]
helm cm-push –force mychart-0.3.2.tgz chartmuseum
应用
在 Harbor 2.7 中,及之前部分版本,其内置 Chart Museum 模块。
在 Nexus 中,提供 Chart Repository 功能,其通过 Chart Museum 实现。