jfrog / chartcenter

The Central Helm Repository for the Community
https://chartcenter.io
Apache License 2.0
41 stars 16 forks source link

Wrong URLs in namespaced index.yamls #18

Closed weltschraet closed 4 years ago

weltschraet commented 4 years ago

Describe the bug When downloading the index.yaml for a namespace (e.g. https://repo.chartcenter.io/jfrog/) the download URLs contain an additional "/empty". For example: https://repo.chartcenter.io/empty/jfrog/artifactory-10.0.12.tgz

To Reproduce Steps to reproduce the behavior:

  1. Download any namespaced index.yaml (e.g. https://repo.chartcenter.io/jfrog/index.yaml)
  2. check the download URLs (e.g. entries.artifactory[].urls)

Expected behavior Get download URLs like https://repo.chartcenter.io/jfrog/artifactory-oss-2.5.1.tgz instead of https://repo.chartcenter.io/empty/jfrog/artifactory-oss-2.5.1.tgz

Additional context In my case i tried to deploy Artifactory with FluxCD. Flux needs namespaced repos referenced directly (e.g. https://repo.chartcenter.io/jfrog). Referencing the main repository and using the namespace in the artifact doesn't work with flux (e.g. jfrog/artifactory-oss instead of artifactoy-oss). So currently there is no way to deploy a helm chart from chartcenter.io with FluxCD.

elioengcomp commented 4 years ago

HI @weltschraet ,

Thank you for your message.

One of the main goals for a central repository like ChartCenter is to avoid having to deal with multiple sources and resolve all your requirements from a trusted central one that is implementing all the best practices related to dependency management. That is why we would like to encourage you to reach out to FluxCD and work with them to add the missing features to support ChartCenter central repo so you don't need to add each namespace as a repo individually.

We understand that this may take some time and that users may need to rely on the namespace repo for a while so we are investigating the issue you pointed out.

Meanwhile, as a workaround, please add the /artifactory context path before the namespace. So if you want to add jfrog namespace as a helm repository use https://repo.chartcenter.io/artifactory/jfrog and it should work as intended. We are going to work to make that context path optional so https://repo.chartcenter.io/jfrog will eventually work as well.

Let us know if you have additional issues.

weltschraet commented 4 years ago

Hi @elioengcomp ,

Thank you for your help. Your workaround works fine.

As much as I would like to have one trusted source for helm charts, my experience tells me, that especially corporate companies only want to allow specific sources and everything available needs to be verified. Basically IT would need to check every chart, that is whitelisted (Or the maintainer is verified.).

This can be closed from my standpoint.

Thank you again.