ChartMuseum deployed (from Library) - spinning wheel and no version


#1

Hi All,

I have couple of issues with the Rancher private catalog functionality:

  1. Rancher admin can see and select all the catalog names in the catalog names combobox on the apps/catalog page. Everybody else have just ‘All Catalogs’ option. I.e. there is no option to show apps just from the private catalog for not admins

  2. I have deployed ChartMuseum from the Library (v2.1.1) and it seems to be working using curl i.e. i can upload chart and they appear in the api/charts response, but there is some problem using charts from the Rancher.

The app appears in the Catalog page that’s good. However, after i select the chart (click on the ‘View Details’) the spinning wheel on the next page is spinning forever and there is no template version available in the Choose version… combo-box.

Is ChartMuseum supposed to work as a Chart catalog with Rancher? If not, what is the recommended way to use private catalog?


#2

Hi all,

I am facing a similar problem. I found out that my versionLinks object from the server call when I clicked refresh is empty, however I am able to access the index.yaml file as well as the tar file that is linked.


#3

I am having the same issue with Rancher 2.1.1, 2.1.3, and 2.1.4.

Further details available in this thread on Slack: https://rancher-users.slack.com/archives/C3ASABBD1/p1544638349076000

Attached is a picture illustrating the issue.


#4

Hi all,

I also encountered this issue and could resolve it by adding the environment variable CHART_URL to my docker run command of chartmuseum. So i did not install chartmuseum with the library.

The issue is, that rancher cannot pull the .tgz files in the chartmuseum because the index.yaml file of chartmuseum only contains a relativ path to the tgz files.
The logs of rancher show something simmilar like this:

2018/12/18 09:04:24 [ERROR] CatalogController chartmuseum [catalog] failed with : failed to sync templates. Resetting commit. Multiple error occurred: [Error in HTTP GET of [charts/eocs-liquibase-0.1.2.tgz], error: Get charts/eocs-liquibase-0.1.2.tgz: unsupported protocol scheme “”]

This environment variable ensures that the index.yaml of chartmuseum prefixes the url path of the .tgz with the chart url and therefore rancher can pull those files.


#5

Right, so the option to set the absolute path is there when the Chart is provisioned, but the absolute URL is not available (yet) if the hostname is automatically generated:


#6

I tried to set the absolute path to something like http://charts.myserver.test but it didn’t help, still see the same behavior, not sure what is expected there.


#7

@Dmitry_Shultz Did you try to download the index.yaml file from the root and verify whether the charts are referenced with an absolute path?
I myself tried to host my chart on a web-server (Apache httpd) and making sure the chart download link is absolute, as per @tfritzenwallner suggestion. The integration in Rancher worked fine once I changed relative paths to absolute ones, so it’s definitely the right track.


#8

@luigidifraia yes, the http://charts.myserver.test/index.yaml brings the yaml file and there is a chart entry with valid chart.tgz file url inside (i can download it using curl or browser).
Are you still on v2.1.1?

UPDATE: Not sure what i did, but it seems to be working now.


#9

The chartmuseum helm chart has a env.open.CHART_URL property, that can be set to the full URL. With this option the index.yaml file contains the path with the URL. I’m not sure when chartmuseum regenerates the index.yaml file. But if I redeploy a chart, chartmuseum adds the full URL for this single chart. Now I have the issue that Rancher doesn’t reload the index.yaml from chartmuseum. Instead I must remove the catalog from rancher and add it again.