ARTIFACTORY: How to pull JFrog Charts using Helm remote repository
This article is to guide you in configuring the Artifactory Helm repository to cache the JFrog charts. This will be useful in a restricted environment to use the JFrog charts.
Steps to Configure the Helm Repository- Create a Helm remote repository ‘helmremote’ with the URL https://charts.jfrog.io and keep the “Chart Base URL” field blank.
- Create a new Helm virtual repository ‘helmvirtual’ and add the remote repository ‘helmremote’ to the virtual repository.
- Download the index.yaml from UI → Application → Artifactory → Artifacts → helmvirtual and verify that index.yaml has all the URL fields rewritten by Artifactory URL.
- Configure the ‘helmvirtual’ to the Helm client and run the helm commands to fetch the charts.
To add the repo:
helm repo add helmvirtual http://ARTIFACTORY_HOST/artifactory/api/helm/helmvirtual --username username --password <encoded_password>
To find the available charts:
helm search repo helmvirtual
To download the charts:
helm fetch helmvirtual/artifactory helm fetch helmvirtual/postgresql helm fetch helmvirtual/jfrog-platform
Snippets for Reference
Remote repository:
A snippet of the Index.yaml:
artifactory-ha: - apiVersion: v2 created: 2023-05-08T13:54:29.413875269Z description: "Universal Repository Manager supporting all major packaging formats, build tools and CI servers." digest: 65880ead6e7b70a97b96f99f7c337840fd54d5a03fddab3395781448086d8ae8 home: https://www.jfrog.com/artifactory/ icon: https://raw.githubusercontent.com/jfrog/charts/master/stable/artifactory-ha/logo/artifactory-logo.png keywords: - artifactory - jfrog - devops maintainers: - email: installers@jfrog.com name: Chart Maintainers at JFrog name: artifactory-ha sources: - https://github.com/jfrog/charts urls: - https://localhost/artifactory/api/helm/helmvirtual/artifactory/api/helm/jfrog-charts/artifactory-ha-107.55.13.tgz type: application kubeVersion: '>= 1.14.0-0' dependencies: - name: postgresql repository: https://charts.jfrog.io/ version: 10.3.18 appVersion: "7.55.13" version: "107.55.13"
Helm Commands:
$ helm repo add helmvirtual http://localhost/artifactory/api/helm/helmvirtual --username admin Password: "helmvirtual" has been added to your repositories $ helm search repo helmvirtual|head -10 NAME CHART VERSION APP VERSION DESCRIPTION helmvirtual/artifactory 107.55.13 7.55.13 Universal Repository Manager supporting all maj... helmvirtual/artifactory-cpp-ce 107.55.13 7.55.13 JFrog Artifactory CE for C++ helmvirtual/artifactory-ha 107.55.13 7.55.13 Universal Repository Manager supporting all maj... helmvirtual/artifactory-jcr 107.55.13 7.55.13 JFrog Container Registry helmvirtual/artifactory-oss 107.55.13 7.55.13 JFrog Artifactory OSS helmvirtual/common 0.0.4 0.0.4 A Library Helm Chart for grouping common logic ... helmvirtual/distribution 102.17.0 2.17.0 A Helm chart for JFrog Distribution helmvirtual/helm-hub-sync 0.1.3 0.1.3 DEPRECATED - helm-hub-sync Helm chart helmvirtual/ingress-nginx 4.5.2 1.6.4 Ingress controller for Kubernetes using NGINX a… $ helm fetch helmvirtual/artifactory $ helm fetch helmvirtual/postgresql $ helm fetch helmvirtual/jfrog-platform $ ls -1 artifactory-107.55.13.tgz jfrog-platform-10.12.2.tgz postgresql-10.3.18.tgz
Cached Charts:
Ref:
https://jfrog.com/help/r/jfrog-artifactory-documentation/kubernetes-helm-chart-repositories