diff --git a/pkg/downloader/chart_downloader.go b/pkg/downloader/chart_downloader.go index 67ec37e35..90645eba7 100644 --- a/pkg/downloader/chart_downloader.go +++ b/pkg/downloader/chart_downloader.go @@ -16,6 +16,7 @@ limitations under the License. package downloader import ( + "errors" "fmt" "io" "net/url" @@ -24,7 +25,7 @@ import ( "strings" "github.com/Masterminds/semver/v3" - "github.com/pkg/errors" + githubErrors "github.com/pkg/errors" "helm.sh/helm/v3/internal/fileutil" "helm.sh/helm/v3/internal/urlutil" @@ -281,12 +282,12 @@ func (c *ChartDownloader) ResolveChartVersion(ref, version string) (*url.URL, er idxFile := filepath.Join(c.RepositoryCache, helmpath.CacheIndexFile(r.Config.Name)) i, err := repo.LoadIndexFile(idxFile) if err != nil { - return u, errors.Wrap(err, "no cached repo found. (try 'helm repo update')") + return u, githubErrors.Wrap(err, "no cached repo found. (try 'helm repo update')") } cv, err := i.Get(chartName, version) if err != nil { - return u, errors.Wrapf(err, "chart %q matching %s not found in %s index. (try 'helm repo update')", chartName, version, r.Config.Name) + return u, githubErrors.Wrapf(err, "chart %q matching %s not found in %s index. (try 'helm repo update')", chartName, version, r.Config.Name) } if len(cv.URLs) == 0 { @@ -320,12 +321,12 @@ func VerifyChart(path, keyring string) (*provenance.Verification, error) { provfile := path + ".prov" if _, err := os.Stat(provfile); err != nil { - return nil, errors.Wrapf(err, "could not load provenance file %s", provfile) + return nil, githubErrors.Wrapf(err, "could not load provenance file %s", provfile) } sig, err := provenance.NewFromKeyring(keyring, "") if err != nil { - return nil, errors.Wrap(err, "failed to load keyring") + return nil, githubErrors.Wrap(err, "failed to load keyring") } return sig.Verify(path, provfile) } @@ -380,7 +381,7 @@ func (c *ChartDownloader) scanReposForURL(u string, rf *repo.File) (*repo.Entry, idxFile := filepath.Join(c.RepositoryCache, helmpath.CacheIndexFile(r.Config.Name)) i, err := repo.LoadIndexFile(idxFile) if err != nil { - return nil, errors.Wrap(err, "no cached repo found. (try 'helm repo update')") + return nil, githubErrors.Wrap(err, "no cached repo found. (try 'helm repo update')") } for _, entry := range i.Entries { @@ -399,7 +400,7 @@ func (c *ChartDownloader) scanReposForURL(u string, rf *repo.File) (*repo.Entry, func loadRepoConfig(file string) (*repo.File, error) { r, err := repo.LoadFile(file) - if err != nil && !os.IsNotExist(errors.Cause(err)) { + if err != nil && !os.IsNotExist(err) { return nil, err } return r, nil diff --git a/pkg/downloader/manager.go b/pkg/downloader/manager.go index 6a26c55c2..894bb4bb8 100644 --- a/pkg/downloader/manager.go +++ b/pkg/downloader/manager.go @@ -28,9 +28,10 @@ import ( "regexp" "strings" "sync" + "errors" "github.com/Masterminds/semver/v3" - "github.com/pkg/errors" + githubErrors "github.com/pkg/errors" "sigs.k8s.io/yaml" "helm.sh/helm/v3/internal/resolver" @@ -220,7 +221,7 @@ func (m *Manager) Update() error { func (m *Manager) loadChartDir() (*chart.Chart, error) { if fi, err := os.Stat(m.ChartPath); err != nil { - return nil, errors.Wrapf(err, "could not find %s", m.ChartPath) + return nil, githubErrors.Wrapf(err, "could not find %s", m.ChartPath) } else if !fi.IsDir() { return nil, errors.New("only unpacked charts can be updated") } @@ -314,7 +315,7 @@ func (m *Manager) downloadAll(deps []*chart.Dependency) error { // https://github.com/helm/helm/issues/1439 churl, username, password, insecureskiptlsverify, passcredentialsall, caFile, certFile, keyFile, err := m.findChartURL(dep.Name, dep.Version, dep.Repository, repos) if err != nil { - saveError = errors.Wrapf(err, "could not find %s", churl) + saveError = githubErrors.Wrapf(err, "could not find %s", churl) break } @@ -345,7 +346,7 @@ func (m *Manager) downloadAll(deps []*chart.Dependency) error { if registry.IsOCI(churl) { churl, version, err = parseOCIRef(churl) if err != nil { - return errors.Wrapf(err, "could not parse OCI reference") + return githubErrors.Wrapf(err, "could not parse OCI reference") } dl.Options = append(dl.Options, getter.WithRegistryClient(m.RegistryClient), @@ -353,7 +354,7 @@ func (m *Manager) downloadAll(deps []*chart.Dependency) error { } if _, _, err = dl.DownloadTo(churl, version, tmpPath); err != nil { - saveError = errors.Wrapf(err, "could not download %s", churl) + saveError = githubErrors.Wrapf(err, "could not download %s", churl) break } @@ -794,7 +795,7 @@ func normalizeURL(baseURL, urlOrPath string) (string, error) { } u2, err := url.Parse(baseURL) if err != nil { - return urlOrPath, errors.Wrap(err, "base URL failed to parse") + return urlOrPath, githubErrors.Wrap(err, "base URL failed to parse") } u2.RawPath = path.Join(u2.RawPath, urlOrPath) @@ -812,7 +813,7 @@ func (m *Manager) loadChartRepositories() (map[string]*repo.ChartRepository, err // Load repositories.yaml file rf, err := loadRepoConfig(m.RepositoryConfig) if err != nil { - return indices, errors.Wrapf(err, "failed to load %s", m.RepositoryConfig) + return indices, githubErrors.Wrapf(err, "failed to load %s", m.RepositoryConfig) } for _, re := range rf.Repositories { @@ -865,7 +866,7 @@ func tarFromLocalDir(chartpath, name, repo, version, destPath string) (string, e constraint, err := semver.NewConstraint(version) if err != nil { - return "", errors.Wrapf(err, "dependency %s has an invalid version/constraint format", name) + return "", githubErrors.Wrapf(err, "dependency %s has an invalid version/constraint format", name) } v, err := semver.NewVersion(ch.Metadata.Version)