From 4a95ecb53a69de19497e6b40808d11f1a558170f Mon Sep 17 00:00:00 2001 From: Markus Wolf Date: Wed, 11 May 2022 14:13:20 +0200 Subject: [PATCH] fix: do not run post step if no step result is available Having no step result means we do not run any step (neither pre nor main) and we do not need to run post. --- pkg/runner/action.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkg/runner/action.go b/pkg/runner/action.go index 626619ed07c..dedb497eb6f 100644 --- a/pkg/runner/action.go +++ b/pkg/runner/action.go @@ -428,8 +428,14 @@ func shouldRunPostStep(step actionStep) common.Conditional { return func(ctx context.Context) bool { log := common.Logger(ctx) stepResults := step.getRunContext().getStepsContext() + stepResult := stepResults[step.getStepModel().ID] - if stepResults[step.getStepModel().ID].Conclusion == model.StepStatusSkipped { + if stepResult == nil { + log.Debugf("skip post step for '%s'; step was not executed", step.getStepModel()) + return false + } + + if stepResult.Conclusion == model.StepStatusSkipped { log.Debugf("skip post step for '%s'; main step was skipped", step.getStepModel()) return false }