From a88a6f3e178c0b259be700911661909fd1cc6bd5 Mon Sep 17 00:00:00 2001 From: Boming Zhang Date: Tue, 12 Nov 2024 21:34:42 -0500 Subject: [PATCH] feat(parser/diff): extra field in log parser summary --- internal/parser/diff/parser.go | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/internal/parser/diff/parser.go b/internal/parser/diff/parser.go index 898cc38..8630018 100644 --- a/internal/parser/diff/parser.go +++ b/internal/parser/diff/parser.go @@ -37,10 +37,12 @@ type Conf struct { } type DiffParserSummary struct { - Status stage.Status - Time uint64 - Memory uint64 - RunTime uint64 + Status stage.Status + ExitStatus int + Error string + Time uint64 + Memory uint64 + RunTime uint64 } type Diff struct{} @@ -68,6 +70,12 @@ func (*Diff) Run(results []stage.ExecutorResult, confAny any) ( summary.Status == stage.Status(envexec.StatusAccepted) { summary.Status = result.Status } + if result.ExitStatus != 0 && summary.ExitStatus == 0 { + summary.ExitStatus = result.ExitStatus + } + if result.Error != "" && summary.Error == "" { + summary.Error = result.Error + } summary.Time += result.Time summary.Memory += result.Memory summary.RunTime += result.RunTime