From 11d5c4fbeb3ea40ba6c505a59625e37fd3364430 Mon Sep 17 00:00:00 2001 From: Sebastien Plisson Date: Thu, 1 Feb 2018 13:23:22 -0800 Subject: [PATCH] fix(helm): When waiting for a release to be ready fails and in debug mode, output the release content Closes #3020 --- cmd/helm/upgrade.go | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/cmd/helm/upgrade.go b/cmd/helm/upgrade.go index 4dd433a39..751f30ac9 100644 --- a/cmd/helm/upgrade.go +++ b/cmd/helm/upgrade.go @@ -225,12 +225,22 @@ func (u *upgradeCmd) run() error { helm.ResetValues(u.resetValues), helm.ReuseValues(u.reuseValues), helm.UpgradeWait(u.wait)) - if err != nil { - return fmt.Errorf("UPGRADE FAILED: %v", prettyError(err)) - } if settings.Debug { - printRelease(u.out, resp.Release) + // If there is an error while waiting, make a call without waiting to get the updated release content + if (resp == nil || resp.Release == nil) && u.wait { + if res, e := u.client.ReleaseContent(u.release); e != nil { + fmt.Fprintf(u.out, "Error reading release content: %v", prettyError(e)) + } else { + printRelease(u.out, res.Release) + } + } else { + printRelease(u.out, resp.Release) + } + } + + if err != nil { + return fmt.Errorf("UPGRADE FAILED: %v", prettyError(err)) } fmt.Fprintf(u.out, "Release %q has been upgraded. Happy Helming!\n", u.release)