From fdda4a4e1407c3026bf3a791cd8ba95aaceda8c0 Mon Sep 17 00:00:00 2001 From: Nick Freyaldenhoven Date: Thu, 10 Nov 2022 13:47:14 -0600 Subject: [PATCH] Reloading release info before saving the results. Signed-off-by: Nick Freyaldenhoven --- pkg/action/release_testing.go | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/pkg/action/release_testing.go b/pkg/action/release_testing.go index ecaeaf59f..9d3cbcbe3 100644 --- a/pkg/action/release_testing.go +++ b/pkg/action/release_testing.go @@ -89,13 +89,22 @@ func (r *ReleaseTesting) Run(name string) (*release.Release, error) { } if err := r.cfg.execHook(rel, release.HookTest, r.Timeout); err != nil { - rel.Hooks = append(skippedHooks, rel.Hooks...) - r.cfg.Releases.Update(rel) + rel, _ = r.updateHooks(rel, append(skippedHooks, rel.Hooks...)) return rel, err } - rel.Hooks = append(skippedHooks, rel.Hooks...) - return rel, r.cfg.Releases.Update(rel) + return r.updateHooks(rel, append(skippedHooks, rel.Hooks...)) +} + +func (r *ReleaseTesting) updateHooks(rel *release.Release, hooks []*release.Hook) (*release.Release, error) { + rel, err := r.cfg.Releases.Get(rel.Name, rel.Version) + if err != nil { + return rel, err + } + + rel.Hooks = hooks + err = r.cfg.Releases.Update(rel) + return rel, err } // GetPodLogs will write the logs for all test pods in the given release into