diff --git a/db_lib/TerraformApp.go b/db_lib/TerraformApp.go index b08b10b43..6d7c1f17c 100644 --- a/db_lib/TerraformApp.go +++ b/db_lib/TerraformApp.go @@ -374,7 +374,8 @@ func (t *TerraformApp) Run(args LocalAppRunningArgs) error { time.Sleep(time.Second * 3) if t.reader.status.IsFinished() || t.reader.status == task_logger.TaskConfirmed || - t.reader.status == task_logger.TaskRejected { + t.reader.status == task_logger.TaskRejected || + t.reader.status == task_logger.TaskStoppingStatus { break } } diff --git a/services/runners/job_pool.go b/services/runners/job_pool.go index 843b58193..61028f926 100644 --- a/services/runners/job_pool.go +++ b/services/runners/job_pool.go @@ -208,7 +208,11 @@ func (p *JobPool) Run() { runningJob.SetStatus(task_logger.TaskFailStatus) } } else { - runningJob.SetStatus(task_logger.TaskSuccessStatus) + if runningJob.status == task_logger.TaskStoppingStatus { + runningJob.SetStatus(task_logger.TaskStoppedStatus) + } else { + runningJob.SetStatus(task_logger.TaskSuccessStatus) + } } logger.TaskInfo("Task finished", runningJob.job.Task.ID, string(runningJob.status)) diff --git a/services/tasks/TaskRunner_logging.go b/services/tasks/TaskRunner_logging.go index 0dca84e7d..3c03fe973 100644 --- a/services/tasks/TaskRunner_logging.go +++ b/services/tasks/TaskRunner_logging.go @@ -94,7 +94,7 @@ func (t *TaskRunner) SetStatus(status task_logger.TaskStatus) { return } case task_logger.TaskStoppingStatus: - if status == task_logger.TaskWaitingStatus || status == task_logger.TaskRunningStatus { + if status == task_logger.TaskWaitingStatus || status == task_logger.TaskRunningStatus || status == task_logger.TaskWaitingConfirmation { //panic("stopping TaskRunner cannot be " + status) return }