vmware-tanzu / kubeapps

A web-based UI for deploying and managing applications in Kubernetes clusters
Other
4.95k stars 707 forks source link

[fluxcd] Kubeapps does not support fetching older versions using relative paths. #7740

Open kvaps opened 5 months ago

kvaps commented 5 months ago

Describe the bug

Kubeapps does not support fetching older versions with relative paths

To Reproduce Steps to reproduce the behavior:

  1. Create Helm repository with few version of the same package, eg tcp-balancer-0.1.0.tgz and tcp-balancer-0.2.0.tgz
  2. Create index using helm repo index command, and do not specify --url parameter, so any paths will be relative
  3. Publish this repository using some HTTP-server
  4. Connect it to kubeapps using FluxCD
  5. Try installing older version. Also try upgrade some installed package from older version to newer one

Expected behavior Older versions available to install and upgrade from

Screenshots

изображение

изображение

изображение

Desktop (please complete the following information):

Additional context

logs:

I0425 15:57:08.005584       1 chart_cache.go:451] Redis [EXISTS helmcharts:cozy-public:cozystack-apps/tcp-balancer:0.1.0]: 0
I0425 15:57:08.005660       1 chart_cache.go:459] -syncHandler(chartCache-worker-1, helmcharts:cozy-public:cozystack-apps/tcp-balancer:0.1.0)
E0425 15:57:08.005682       1 chart_cache.go:254] Error processing helmcharts:cozy-public:cozystack-apps/tcp-balancer:0.1.0 (giving up): Get "tcp-balancer-0.1.0.tgz": unsupported protocol sc
heme ""
E0425 15:57:08.005739       1 chart_cache.go:258] error deleting key [helmcharts:cozy-public:cozystack-apps/tcp-balancer:0.1.0] due to: couldn't create key for object helmcharts:cozy-public:
cozystack-apps/tcp-balancer:0.1.0: unexpected object in chartCacheKeyFunc: [string]
E0425 15:57:08.005776       1 chart_cache.go:260] error syncing key [helmcharts:cozy-public:cozystack-apps/tcp-balancer:0.1.0] due to: Get "tcp-balancer-0.1.0.tgz": unsupported protocol sche
me ""
I0425 15:57:08.006887       1 chart_cache.go:262] -processNextWorkItem(chartCache-worker-1)
I0425 15:57:08.007015       1 chart_cache.go:207] +processNextWorkItem(chartCache-worker-1)
I0425 15:57:08.006904       1 chart_cache.go:480] +Fetch(helmcharts:cozy-public:cozystack-apps/tcp-balancer:0.1.0)
I0425 15:57:08.007268       1 chart_cache.go:489] Redis [GET helmcharts:cozy-public:cozystack-apps/tcp-balancer:0.1.0]: Nil
I0425 15:57:08.007286       1 server.go:253] -fluxv2 GetAvailablePackageDetail
I0425 15:57:08.113822       1 server.go:208] "+resources GetResources " cluster="default" namespace="tenant-root"
I0425 15:57:08.114470       1 packages.go:248] "+core GetInstalledPackageResourceRefs" cluster="default" namespace="tenant-root" identifier="tcp-balancer-ghfgh"
I0425 15:57:08.114999       1 server.go:466] "+fluxv2 GetInstalledPackageResourceRefs" cluster="default" namespace="tenant-root" id="tcp-balancer-ghfgh"
I0425 15:57:08.137275       1 resourcerefs.go:96] "+resourcerefs GetInstalledPackageResourceRefs" helmReleaseName="tenant-root/tcp-balancer-ghfgh"
E0425 15:57:08.147227       1 server.go:301] Unable to watch resource api_version:"apps/v1" kind:"Deployment" name:"tcp-balancer-ghfgh-haproxy" namespace:"tenant-root": unknown