diff --git a/routers/repo/modelarts.go b/routers/repo/modelarts.go index ce6011514..02a46b492 100755 --- a/routers/repo/modelarts.go +++ b/routers/repo/modelarts.go @@ -411,36 +411,21 @@ func NotebookManage(ctx *context.Context) { } task.Status = res.Status - if task.EndTime == 0 && models.IsModelArtsDebugJobTerminal(task.Status) { - task.EndTime = timeutil.TimeStampNow() - } - task.ComputeAndSetDuration() - err = models.UpdateJob(task) - if err != nil { - log.Error("UpdateJob(%s) failed:%v", task.JobName, err.Error(), ctx.Data["MsgID"]) - resultCode = "-1" - errorMsg = "system error" - break - } - status = task.Status - if action == models.ActionRestart { - //todo: add a record + if action == models.ActionStart { newTask := &models.Cloudbrain{ - Status: string(models.JobWaiting), + Status: status, UserID: task.UserID, RepoID: task.RepoID, JobID: task.JobID, JobName: task.JobName, DisplayJobName: task.DisplayJobName, - SubTaskName: task.SubTaskName, JobType: task.JobType, Type: task.Type, Uuid: task.Uuid, Image: task.Image, - GpuQueue: task.GpuQueue, - ResourceSpecId: task.ResourceSpecId, ComputeResource: task.ComputeResource, + Description: task.Description, } err = models.RestartCloudbrain(task, newTask) @@ -450,6 +435,18 @@ func NotebookManage(ctx *context.Context) { errorMsg = "system error" break } + } else { + if task.EndTime == 0 && models.IsModelArtsDebugJobTerminal(task.Status) { + task.EndTime = timeutil.TimeStampNow() + } + task.ComputeAndSetDuration() + err = models.UpdateJob(task) + if err != nil { + log.Error("UpdateJob(%s) failed:%v", task.JobName, err.Error(), ctx.Data["MsgID"]) + resultCode = "-1" + errorMsg = "system error" + break + } } break