fix: ensure repo update only runs when repositories are configured

This fixes CI issues where tests fail with 'no repositories found' error.

The PR #2378 adds a single helm.UpdateRepo() call before running helm dep
build commands. However, when no repositories are configured, this call
fails. The fix adds a check for len(st.Repositories) > 0 before calling
UpdateRepo().

Additionally, updated snapshot files to reflect the new output ordering
where repo update happens before building dependencies.

Signed-off-by: yxxhero <aiopsclub@163.com>
This commit is contained in:
yxxhero 2026-01-23 12:10:39 +08:00 committed by yxxhero
parent dbd5ffb0b7
commit b94c960fc4
4 changed files with 13 additions and 3 deletions

View File

@ -1851,7 +1851,8 @@ func (st *HelmState) runHelmDepBuilds(helm helmexec.Interface, concurrency int,
// Perform an update of repos once before running `helm dep build` so that we
// can safely pass --skip-refresh to the command to avoid doing a repo update
// for every iteration of the loop where charts have external dependencies.
if len(builds) > 0 && !opts.SkipRefresh {
// Only do this if there are repositories configured.
if len(builds) > 0 && !opts.SkipRefresh && len(st.Repositories) > 0 {
if err := helm.UpdateRepo(); err != nil {
return fmt.Errorf("updating repo: %w", err)
}

View File

@ -1,10 +1,12 @@
Adding repo myrepo http://localhost:18080/
"myrepo" has been added to your repositories
Building dependency release=foo, chart=$WD/temp1/foo
Updating repo
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "myrepo" chart repository
Update Complete. ⎈Happy Helming!⎈
Building dependency release=foo, chart=$WD/temp1/foo
Saving 1 charts
Downloading raw from repo http://localhost:18080/
Deleting outdated charts

View File

@ -2,10 +2,12 @@ Live output is enabled
Adding repo myrepo http://localhost:18081/
"myrepo" has been added to your repositories
Building dependency release=foo, chart=$WD/temp1/foo
Updating repo
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "myrepo" chart repository
Update Complete. ⎈Happy Helming!⎈
Building dependency release=foo, chart=$WD/temp1/foo
Saving 1 charts
Downloading raw from repo http://localhost:18081/
Deleting outdated charts

View File

@ -1,6 +1,11 @@
Adding repo myrepo http://localhost:18084/
"myrepo" has been added to your repositories
Updating repo
Hang tight while we grab the latest from your chart repositories...
...Successfully got an update from the "myrepo" chart repository
Update Complete. ⎈Happy Helming!⎈
Building dependency release=foo1, chart=../../charts/raw-0.1.0
Building dependency release=foo2, chart=../../charts/raw-0.1.0
Templating release=foo1, chart=../../charts/raw-0.1.0