From 0adc91367d807db8c9cf2e6f51ec3a0b36aa5c6c Mon Sep 17 00:00:00 2001 From: saisrikark Date: Sun, 21 Jul 2024 14:33:58 +0530 Subject: [PATCH] precheck to fail for a cancelled context Signed-off-by: saisrikark --- pkg/action/upgrade.go | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pkg/action/upgrade.go b/pkg/action/upgrade.go index 6d60fd7dd..6bcf73c51 100644 --- a/pkg/action/upgrade.go +++ b/pkg/action/upgrade.go @@ -394,6 +394,13 @@ func (u *Upgrade) reportToPerformUpgrade(c chan<- resultMessage, rel *release.Re func (u *Upgrade) releasingUpgrade(ctx context.Context, c chan<- resultMessage, upgradedRelease *release.Release, current kube.ResourceList, target kube.ResourceList, originalRelease *release.Release) { // pre-upgrade hooks + select { + case <-ctx.Done(): + u.reportToPerformUpgrade(c, upgradedRelease, kube.ResourceList{}, ctx.Err()) + return + default: + } + if !u.DisableHooks { if err := u.cfg.execHook(upgradedRelease, release.HookPreUpgrade, u.Timeout); err != nil { u.reportToPerformUpgrade(c, upgradedRelease, kube.ResourceList{}, fmt.Errorf("pre-upgrade hooks failed: %s", err))