For some reason, I have trouble installing binderhub via helm v3 (I'm using v3.0.3). The error message is Error: failed to download "jupyterhub/binderhub" (hint: running helm repo update may help).. The issue is, however, not related to helm repo update.
Steps to reproduce:
Add the helm repo and update it:
helm repo add jupyterhub https://jupyterhub.github.io/helm-chart
helm repo update
Run helm repo list. Output on my computer:
NAME URL
stable https://kubernetes-charts.storage.googleapis.com
jetstack https://charts.jetstack.io
pfisterer-knox https://pfisterer.github.io/apache-knox-helm/
jupyterhub https://jupyterhub.github.io/helm-chart
Run helm search repo -l jupyterhub/binderhub to list available versions. Output on my computer:
NAME CHART VERSION APP VERSION DESCRIPTION
jupyterhub/binderhub 0.2.0-001.00f7197 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-013.dace2ee A helm chart to install Binder
jupyterhub/binderhub 0.2.0-049.8a0cee8 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-024.1820a10 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-021.66516e5 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-072.544c0b1 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-065.f0e541b A helm chart to install Binder
jupyterhub/binderhub 0.2.0-037.c81a986 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-059.78bfbcd A helm chart to install Binder
jupyterhub/binderhub 0.2.0-028.9ba1fc3 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-039.58fb2a0 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-061.4221738 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-018.0c62683 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-056.8c51534 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-051.99305a6 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-0216360 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-068.0b5080a A helm chart to install Binder
jupyterhub/binderhub 0.2.0-045.089702b A helm chart to install Binder
jupyterhub/binderhub 0.2.0-026.7c50358 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-004.9756642 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-017.5aa671c A helm chart to install Binder
jupyterhub/binderhub 0.2.0-069.dbffec6 A helm chart to install Binder
When trying to install version 0.2.0-068.0b5080a using helm install '--version=0.2.0-068.0b5080a' '--namespace=cert-manager' -f '/var/folders/_k/g6547cr924b2vw4b_w61lfym0000gn/T/ansible.fzu39_4jbinderhub-config.yaml' 'hub' 'jupyterhub/binderhub', I get
Error: failed to download "jupyterhub/binderhub" (hint: runninghelm repo updatemay help).
When trying to install version 0.2.0-9994a92, everything works as expected. But anything using a different format (e.g., '--version=0.2.0-068.0b5080a') does not work.
When NOT specifying a --version but --devel, it installs the chart w/o error message but helm list --all-namespaces does not show an app version:
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION
hub cert-manager 1 2020-02-02 10:57:58.486209 +0100 CET deployed binderhub-0.2.0-n079.h351d336
What puzzles me is that binderhub-0.2.0-n079.h351d336 is not listed in the above list of versions.
Running helm install '--version=0.2.0-n079.h351d336' '--namespace=cert-manager' -f '/var/folders/_k/g6547cr924b2vw4b_w61lfym0000gn/T/ansible.fzu39_4jbinderhub-config.yaml' 'hub' 'jupyterhub/binderhub' works...
Any ideas? Am I missing something obvious?
I know about this issue, it relates to Helm3 not accepting to work with any helm chart that doesnt have a version according to the SemVer 2 standard.
I think it will work if you try to use a version that is, and we recently made binderhub releases with valid versions, i think. Or we may be waiting for an update on a bot that does it.
An issue with the version is the 001 section for example, it is not allowed to be purely numerical and start with a zero. So, we added a n character before it.
/cc: @henchc @betatim
@consideRatio Thanks a lot for your fast reply... Do you know why helm search repo -l jupyterhub/binderhub does not show these versions?
Should we close this issue then?
I think they are not yet available as you didnt see them, and i think it requires an update by our bot made by @henchc.
This is a very relevant issue and you have provided an excellent description of the symptoms when running into this.
@pfisterer, I'm now on a computer and had the ability to look around myself better.
I note that there is released versions of the binderhub helm chart that allows Helm 3 to work as it should I think: https://jupyterhub.github.io/helm-chart/#development-releases-binderhub
helm repo add jupyterhub https://jupyterhub.github.io/helm-chart
helm repo update
helm search jupyterhub/binderhub --devel
# the latest version, a development version, is valid!
$ helm search jupyterhub/binderhub --devel
NAME CHART VERSION APP VERSION DESCRIPTION
jupyterhub/binderhub 0.2.0-n079.h351d336 A helm chart to install Binder
I consider this issue resolved technically, but there is work to be done with regards to making it easier to not end up with this issue.
Thanks for leading the way by using helm 3 @pfisterer, this is very helpful to ensure we get this helm chart helm 3 compliant!
Great, tnx a lot! Have a nice day!
@consideRatio just for your reference: using helm v3, the command is helm search repo jupyterhub/binderhub --devel -l.
For me helm search repo jupyterhub/binderhub --devel -l | grep "\\-n" yields the following output:
jupyterhub/binderhub 0.2.0-n079.h351d336 A helm chart to install Binder
jupyterhub/binderhub 0.2.0-n077.hef338bc A helm chart to install Binder
jupyterhub/binderhub 0.2.0-n075.hb369d46 A helm chart to install Binder
Now, this makes sense to me.
Ah thanks for the clarification of the difference between helm2/helm3, I've not used helm 3 yet!
@pfisterer does the issue you experienced go away when specifying one of these versions?
@consideRatio This is the case. Running helm install '--version=0.2.0-n079.h351d336' '--namespace=cert-manager' -f '/var/folders/_k/g6547cr924b2vw4b_w61lfym0000gn/T/ansible.fzu39_4jbinderhub-config.yaml' 'hub' 'jupyterhub/binderhub' works...
Most helpful comment
@consideRatio This is the case. Running
helm install '--version=0.2.0-n079.h351d336' '--namespace=cert-manager' -f '/var/folders/_k/g6547cr924b2vw4b_w61lfym0000gn/T/ansible.fzu39_4jbinderhub-config.yaml' 'hub' 'jupyterhub/binderhub'works...