pull/31271/merge
Payal Godhani 1 day ago committed by GitHub
commit 84eb817ce6
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

@ -246,22 +246,31 @@ func (c *ChartDownloader) DownloadToCache(ref, version string) (string, *provena
if len(digest) == 0 || err != nil {
slog.Debug("attempting to download chart", "ref", ref, "version", version)
if err != nil && !os.IsNotExist(err) {
slog.Debug("failed to access chart cache", "error", err, "ref", ref, "version", version)
return "", nil, err
}
// Get file not in the cache
data, gerr := g.Get(u.String(), c.Options...)
if gerr != nil {
slog.Debug("failed to download chart from remote", "error", gerr, "url", u.String(), "ref", ref, "version", version)
return "", nil, gerr
}
// Generate the digest
if len(digest) == 0 {
digest32 = sha256.Sum256(data.Bytes())
// Defensive: check data.Bytes() is not nil/empty
bytes := data.Bytes()
if len(bytes) == 0 {
slog.Debug("downloaded chart data is empty", "url", u.String(), "ref", ref, "version", version)
return "", nil, errors.New("downloaded chart data is empty")
}
digest32 = sha256.Sum256(bytes)
}
pth, err = c.Cache.Put(digest32, data, CacheChart)
if err != nil {
slog.Debug("failed to put chart in cache", "error", err, "cache_id", hex.EncodeToString(digest32[:]))
return "", nil, err
}
slog.Debug("put downloaded chart in cache", "id", hex.EncodeToString(digest32[:]))

Loading…
Cancel
Save