From 42e61546f4d49b241217291be1573146901a7ed1 Mon Sep 17 00:00:00 2001 From: Muvaffak Onus Date: Tue, 27 Sep 2022 01:39:42 +0300 Subject: [PATCH] Add error handling for the filesystem operations of cache and index files Signed-off-by: Muvaffak Onus --- pkg/repo/chartrepo.go | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/pkg/repo/chartrepo.go b/pkg/repo/chartrepo.go index 956997cc9..4228a1893 100644 --- a/pkg/repo/chartrepo.go +++ b/pkg/repo/chartrepo.go @@ -152,12 +152,18 @@ func (r *ChartRepository) DownloadIndexFile() (string, error) { fmt.Fprintln(&charts, name) } chartsFile := filepath.Join(r.CachePath, helmpath.CacheChartsFile(r.Config.Name)) - os.MkdirAll(filepath.Dir(chartsFile), 0755) - ioutil.WriteFile(chartsFile, []byte(charts.String()), 0644) + if err := os.MkdirAll(filepath.Dir(chartsFile), 0755); err != nil { + return "", err + } + if err := ioutil.WriteFile(chartsFile, []byte(charts.String()), 0644); err != nil { + return "", err + } // Create the index file in the cache directory fname := filepath.Join(r.CachePath, helmpath.CacheIndexFile(r.Config.Name)) - os.MkdirAll(filepath.Dir(fname), 0755) + if err := os.MkdirAll(filepath.Dir(fname), 0755); err != nil { + return "", err + } return fname, ioutil.WriteFile(fname, index, 0644) }