Skip to content

[backport v2.13] [SURE-10888] Mitigate Fleet CLI fetching the same Helm repo index multiple times #4597

@rancherbot

Description

@rancherbot

This is a backport issue for #4343, automatically created via GitHub Actions workflow initiated by @kkaempf

Original issue body:

Is your feature request related to a problem?

#3742 introduced parallelism in the Fleet CLI.
However, when a fleet.yaml specifies helm repo, chart name and version, it will individually fetch the index from that repo and lookup the specified chart. This can become expensive on repositories with many entries.
Also, it's common for users of a private Helm repository to make all/most of their fleet.yaml point to the same repository, increasing the chances of repeatedly retrieving the same index.

Solution you'd like

Fleet CLI minimizes fetching the same index.yaml (for the same combination of URL and auth) for a single run.
There are techniques that allow aggregating concurrent code into a single call.
This solution is compatible with caching, which must be done carefully, in case the fleet controller also makes use of the code fetching this index.

Alternatives you've considered

Users can workaround this behaviour by:

  • Using OCI chart registries instead of (legacy) Helm repositories.
  • Use absolute download URLs in helm.chart to completely get rid of the lookup step.

Anything else?

No response

Metadata

Metadata

Type

Projects

Status

✅ Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions