From 19b8c7f427dbac57c8a8208e7d38236d0c28d931 Mon Sep 17 00:00:00 2001 From: Simone Gotti Date: Thu, 27 Feb 2020 11:57:00 +0100 Subject: [PATCH] executor: fix reporting of stopped tasks and steps In executeTask set the executor task and step phase to stop if task spec Stop is true. --- internal/services/executor/executor.go | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/internal/services/executor/executor.go b/internal/services/executor/executor.go index 0bfa469..58ef8c6 100644 --- a/internal/services/executor/executor.go +++ b/internal/services/executor/executor.go @@ -822,7 +822,11 @@ func (e *Executor) executeTask(ctx context.Context, et *types.ExecutorTask) { rt.Lock() if err != nil { log.Errorf("err: %+v", err) - et.Status.Phase = types.ExecutorTaskPhaseFailed + if rt.et.Spec.Stop { + et.Status.Phase = types.ExecutorTaskPhaseStopped + } else { + et.Status.Phase = types.ExecutorTaskPhaseFailed + } } else { et.Status.Phase = types.ExecutorTaskPhaseSuccess } @@ -997,7 +1001,11 @@ func (e *Executor) executeTaskSteps(ctx context.Context, rt *runningTask, pod dr } serr = errors.Errorf("failed to execute step %s: %w", util.Dump(step), err) } else if exitCode != 0 { - rt.et.Status.Steps[i].Phase = types.ExecutorTaskPhaseFailed + if rt.et.Spec.Stop { + rt.et.Status.Steps[i].Phase = types.ExecutorTaskPhaseStopped + } else { + rt.et.Status.Steps[i].Phase = types.ExecutorTaskPhaseFailed + } rt.et.Status.Steps[i].ExitStatus = util.IntP(exitCode) serr = errors.Errorf("step %q failed with exitcode %d", stepName, exitCode) } else if exitCode == 0 {