Artifacthub.io not pulling from JFrog Artifactory Helm repo - kubernetes-helm

"error getting repository remote digest" from my local installation of Artifacthub.io
The Helm package "my-app" is in a virtual Helm repo in JFrog's Artifactory which is one of the options listed at https://helm.sh/docs/topics/chart_repository/#jfrog-artifactory.
.

Related

Jfrog Artifactory with Rancher and Helm Integration

I have:
JFROG Artifactory Docker repository - Pro On-Prem version.
Rancher server - v2.6.8
Kubernetes cluster installed on-prem with RKE1 provider - on premise.
I have 2 questions:
how do I work with (or add) my own JFROG Artifactory Docker repository from the Rancher Gui server?
In GUI I saw there are 2 options:
HTTP URL
Git repository
how do I deploy microservices applications using Helm with my JFROG Artifactory Docker repository from Rancher?

install helm chart package without public container registry (offline,locally)

My problem is when i want to install a package in kubernetes cluster with helm chart, for example install gitlab with helm, during installation there is need to download docker image from a public registry and i don't access internet and i ran nexus repository in my local environment but in helm chart i can't set my local nexus docker image repository as a registry to helm and helm try to download docker image from internet not my local repository.
how can i set my local nexus repository as a primary docker registry for helm chart?
in helm chart this is difficult to change instruction of a ready to use helm chart, for example gitlab helm chart, and you can only download docker images independently and if PullPolicyImage set to IfNotPresent image does not download again.
you can change helm chart ready to use repo, to download images from you local repo with adding your local_registryIP:Port in front of a docker image address. but as i said this difficult for large helm chart like gitlab.

unable to push helm package archive to artifactory using Helm Push Artifactory Plugin

I have been trying to publish an artifact created by helm package command to artifactory.
I setup the environment on my local Windows 10 laptop by installing the helm client.
I am able to create chart archives through helm package command.
After the package creation I tried to publish the package to a artifactory repo(local artifactory pro instance).
It is required by Helm that the repository where the package needs to be pushed be added as a repo via helm repo add command. But before executing the helm repo add command, the artifactory repo should be configured as a Helm Chart Repository at the time of repo creation.
After the successful execution of helm repo add I tried to push the archive to that artifactory location.
https://github.com/belitre/helm-push-artifactory-plugin is the plugin I am using to publish the archive to artifactory. However, I keep getting error once I execute command helm push-artifactory :
Error: 400: could not properly parse response JSON:
HTTP Status 400 – Bad Request
Type Status Report
Message Invalid URI
Description The server cannot or will not process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing).
Please guide. let me know in case I missed out on any important details.
EDIT 1 : START
Command for adding repo :
helm repo add helm-chart-artifcatory-repo http://localhost:8081/artifactory/helm-chart-artifactory-repo/ --username myadminusername --password myadminpass
"helm-chart-artifcatory-repo" has been added to your repositories
Command for pushing to artifactory :
helm push-artifactory xyz-demofile-0.1.1.tgz http://localhost:8081/artifactory/helm-chart-artifactory-repo --username myadminusername --password myadminpass
EDIT 1 : END

Docker for windows kubernetes helm - add public repo and get mailhog

I am using Windows 10 with docker for windows.
I have acitve kubernetes.
I've downloaded helm from https://github.com/helm/helm/releases and added files to Windows PATH.
Now i want to execute:
helm install stable/mailhog --generate-name
but i get
Error: failed to download "stable/mailhog" (hint: running 'helm repo update' may help
I am not sure how to add public repo for it.
I tried adding it with:
helm repo add mailhog https://kubernetes-charts-incubator.storage.googleapis.com/
"mailhog" has been added to your repositories
helm repo update
but the output from helm install stable/mailhog --generate-name gives me still the same error.
How can i get stable/mailhog this way?
Using https://kubernetes-charts.storage.googleapis.com as the helm repo works for me:
helm init
helm repo add stable https://kubernetes-charts.storage.googleapis.com
$ helm repo list
NAME URL
stable https://kubernetes-charts.storage.googleapis.com
helm install stable/mailhog --generate-name

Add Helm Hub as a remote repository on Artifactory

I have been serving Helm Stable as a remote repository in Artifactory for a few months now with no issue, however one of the charts I use has recently moved on to Helm hub. Try as I may, I cannot seem to get Artifactory to recognise this as a remote repo.I have tried adding both https://hub.helm.sh/ and https://charts.jetstack.io (The chart in question is Jetstack's cert-manager) to no avail. It just shows up as empty in Artifactory.
Does anyone have any experience getting Artifactory remote repos working with Helm Hub?
In Artifactory, to create a remote Helm repository for https://charts.jetstack.io content, "Bypass HEAD Requests" in the advanced settings must be enabled. This is because Artifactory first makes a HEAD request for /index.yaml, to which charts.jetstack.io responds with a 404:
$ curl -siXHEAD https://charts.jetstack.io/index.yaml
HTTP/1.1 404 Not Found
Server: nginx/1.15.6
...
You need to add jetstack repo with below command.
helm repo add jetstack https://charts.jetstack.io
if this helm repo is already added, we can update with
helm update
then if you run helm search jetstack you'll find your chart as below:
NAME CHART VERSION APP VERSION DESCRIPTION
jetstack/cert-manager v0.7.0 v0.7.0 A Helm chart for cert-manager
jetstack/tor-proxy 0.1.1 A Helm chart for Kubernetes
Note
For successful deployment, you should install CRDs before helm install
kubectl apply \
-f https://raw.githubusercontent.com/jetstack/cert-manager/release-0.7/deploy/manifests/00-crds.yaml
If you're installing helm chart in some XX namespace which is already existed, you should label this XX namespace with certmanager.k8s.io/disable-validation="true"
kubectl label namespace XX certmanager.k8s.io/disable-validation="true"
Last
to install run below command
helm install --name my-release --namespace XX jetstack/cert-manager