[RTFACT-19515] Remote Helm repository does not work when hosted on google cloud storage Created: 01/Jul/19  Updated: 09/Jul/19  Resolved: 09/Jul/19

Status: Resolved
Project: Artifactory Binary Repository
Component/s: Helm, Remote Repository
Affects Version/s: 6.10.0
Fix Version/s: None

Type: Bug Priority: High
Reporter: Stefan Lengauer Assignee: Unassigned
Resolution: Not a Bug Votes: 0
Labels: artifactory, helm, remote

Artifactory Pro 6.10.4

CentOS 7.6


Reproduction is quite simple as the official stable helm repository is hosted on google cloud storage:

  1. Create a new remote helm repository with the default url (https://storage.googleapis.com/kubernetes-charts)
  2. Create a virtual helm repo and include the repo from above
  3. Look at the artifacts tree and observe that only the first few chart *.tgz are displayed (currently up until drupal)

The cause of this is that google limits the results for the bucket list query to a maximum of 1000 items (https://cloud.google.com/storage/docs/xml-api/get-bucket-list). 

When visiting the repo url in the browser the following can be seen:

<ListBucketResult xmlns="http://doc.s3.amazonaws.com/2006-03-01">

The IsTruncated property is set and the NextMarker point to the last element. This is the pagination as defined in the above mentioned google API docs.

Artifactory needs to support this for remote helm charts to work that are hosted on google cloud storage. It is especially critical as the default "stable" repo is hosted this way.

Comment by Stefan Lengauer [ 08/Jul/19 ]

This can be closed!

In our case the issue was caused by a missing "deploy/cache" permission for the user.

This prevents the download of the remote repos index.yaml. In this case the virtual repo is generating an empty index and therefore the resolution fails.

After adding the missing permission helm started to work as expected but the tree view remains limited.

Generated at Tue Sep 22 14:04:29 UTC 2020 using Jira 8.5.3#805003-sha1:b4933e02eaff29a49114274fe59e1f99d9d963d7.