From 93ec064640867f2642a293732ffb9b5f4602eb18 Mon Sep 17 00:00:00 2001 From: Terry Howe Date: Tue, 27 May 2025 11:39:35 -0600 Subject: [PATCH] fix: repo update cmd mutex Signed-off-by: Terry Howe --- pkg/cmd/repo_update.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pkg/cmd/repo_update.go b/pkg/cmd/repo_update.go index 9f4a603ae..6547446f0 100644 --- a/pkg/cmd/repo_update.go +++ b/pkg/cmd/repo_update.go @@ -113,14 +113,19 @@ func updateCharts(repos []*repo.ChartRepository, out io.Writer) error { var wg sync.WaitGroup failRepoURLChan := make(chan string, len(repos)) + writeMutex := sync.Mutex{} for _, re := range repos { wg.Add(1) go func(re *repo.ChartRepository) { defer wg.Done() if _, err := re.DownloadIndexFile(); err != nil { + writeMutex.Lock() + defer writeMutex.Unlock() fmt.Fprintf(out, "...Unable to get an update from the %q chart repository (%s):\n\t%s\n", re.Config.Name, re.Config.URL, err) failRepoURLChan <- re.Config.URL } else { + writeMutex.Lock() + defer writeMutex.Unlock() fmt.Fprintf(out, "...Successfully got an update from the %q chart repository\n", re.Config.Name) } }(re)