From 869a9df6e90ffbf02bc6669f91b8f1b84c6ee29c Mon Sep 17 00:00:00 2001 From: Sunny Date: Mon, 19 Dec 2022 08:57:00 +0000 Subject: [PATCH] helm: return ErrExternal when loading index fails Loading index can fail due to network error. Return ErrExternal typed error for it. Signed-off-by: Sunny --- internal/helm/repository/chart_repository.go | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/internal/helm/repository/chart_repository.go b/internal/helm/repository/chart_repository.go index 201d9d0d..83e200a4 100644 --- a/internal/helm/repository/chart_repository.go +++ b/internal/helm/repository/chart_repository.go @@ -156,6 +156,11 @@ func newChartRepository() *ChartRepository { // to be a semver.Constraints compatible string. If version is empty, the latest // stable version will be returned and prerelease versions will be ignored. func (r *ChartRepository) GetChartVersion(name, ver string) (*repo.ChartVersion, error) { + // See if we already have the index in cache or try to load it. + if err := r.StrategicallyLoadIndex(); err != nil { + return nil, &ErrExternal{Err: err} + } + cv, err := r.getChartVersion(name, ver) if err != nil { return nil, &ErrReference{Err: err} @@ -164,11 +169,6 @@ func (r *ChartRepository) GetChartVersion(name, ver string) (*repo.ChartVersion, } func (r *ChartRepository) getChartVersion(name, ver string) (*repo.ChartVersion, error) { - // See if we already have the index in cache or try to load it. - if err := r.StrategicallyLoadIndex(); err != nil { - return nil, err - } - r.RLock() defer r.RUnlock()