From 9ab05e3d6ab1897fb5a757720a94d3598e46299f Mon Sep 17 00:00:00 2001 From: Christopher Homberger Date: Fri, 20 Feb 2026 15:26:11 +0100 Subject: [PATCH] retry log upload and result independently --- internal/pkg/report/reporter.go | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/internal/pkg/report/reporter.go b/internal/pkg/report/reporter.go index 102db85..91e9c0a 100644 --- a/internal/pkg/report/reporter.go +++ b/internal/pkg/report/reporter.go @@ -5,6 +5,7 @@ package report import ( "context" + "errors" "fmt" "regexp" "strings" @@ -263,12 +264,15 @@ func (r *Reporter) Close(lastWords string) error { log.Error("No Response from RunDaemon for 60s, continue best effort") } - return retry.Do(func() error { - if err := r.ReportLog(true); err != nil { - return err - } - return r.ReportState(true) - }, retry.Context(r.ctx)) + // Report the job outcome even when all log‑retry attempts have been exhausted + return errors.Join( + retry.Do(func() error { + return r.ReportLog(true) + }, retry.Context(r.ctx)), + retry.Do(func() error { + return r.ReportState(true) + }, retry.Context(r.ctx)), + ) } func (r *Reporter) ReportLog(noMore bool) error {