From 258de0fa37429b55139d2968caed583d69570e89 Mon Sep 17 00:00:00 2001 From: ChristopherHX Date: Sat, 26 Apr 2025 16:41:04 +0200 Subject: [PATCH] fix: container cleanup error is not a job execution error (#97) --- pkg/runner/job_executor.go | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/pkg/runner/job_executor.go b/pkg/runner/job_executor.go index 2ed7da69..bf8db520 100644 --- a/pkg/runner/job_executor.go +++ b/pkg/runner/job_executor.go @@ -103,19 +103,19 @@ func newJobExecutor(info jobInfo, sf stepFactory, rc *RunContext) common.Executo var stopContainerExecutor common.Executor = func(ctx context.Context) error { jobError := common.JobError(ctx) - var err error if rc.Config.AutoRemove || jobError == nil { - // always allow 1 min for stopping and removing the runner, even if we were cancelled - ctx, cancel := context.WithTimeout(common.WithLogger(context.Background(), common.Logger(ctx)), time.Minute) - defer cancel() - + timeout := time.Minute logger := common.Logger(ctx) - logger.Infof("Cleaning up container for job %s", rc.JobName) - if err = info.stopContainer()(ctx); err != nil { - logger.Errorf("error while stop job container: %v", err) + logger.Infof("Stopping and removing Container... (waiting for %s)", timeout.String()) + // always allow 1 min for stopping and removing the runner, even if we were cancelled + ctx, cancel := context.WithTimeout(common.WithLogger(context.Background(), common.Logger(ctx)), timeout) + defer cancel() + warn := info.stopContainer()(ctx) + if warn != nil { + logger.Warnf("Stopping and removing Container failed after %s with error: ", timeout.String(), warn.Error()) } } - return err + return nil } var setJobResultExecutor common.Executor = func(ctx context.Context) error {