diff --git a/models/cloudbrain_static.go b/models/cloudbrain_static.go index 7239c5d89..e582af829 100644 --- a/models/cloudbrain_static.go +++ b/models/cloudbrain_static.go @@ -8,9 +8,6 @@ import ( "code.gitea.io/gitea/modules/timeutil" ) -type AllTask struct { - List []TaskDetail `json:"list"` -} type TaskDetail struct { ID int64 `json:"ID"` JobName string `json:"JobName"` @@ -24,7 +21,8 @@ type TaskDetail struct { EndTime timeutil.TimeStamp `json:"EndTime"` ComputeResource string `json:"ComputeResource"` Type int `json:"Type"` - UserID int64 `json:"UserID"` + UserName string `json:"UserName"` + RepoName string `json:"RepoName"` RepoID int64 `json:"RepoID"` } diff --git a/routers/api/v1/repo/cloudbrain_dashboard.go b/routers/api/v1/repo/cloudbrain_dashboard.go index f2ff3b5b8..417f1de87 100644 --- a/routers/api/v1/repo/cloudbrain_dashboard.go +++ b/routers/api/v1/repo/cloudbrain_dashboard.go @@ -481,16 +481,34 @@ func GetCloudbrainsDetailData(ctx *context.Context) { ctx.ServerError("Get job failed:", err) return } - res := &models.AllTask{} - res.List = []models.TaskDetail{} + // res := &models.AllTask{} + tasks := []models.TaskDetail{} for i, task := range ciTasks { - ciTasks[i].CanDebug = true - ciTasks[i].CanDel = true ciTasks[i].Cloudbrain.ComputeResource = task.ComputeResource - var dataOne models.TaskDetail - dataOne.DisplayJobName = ciTasks[i].DisplayJobName - res.List = append(res.List, dataOne) + var taskDetail models.TaskDetail + taskDetail.ID = ciTasks[i].Cloudbrain.ID + taskDetail.JobName = ciTasks[i].JobName + taskDetail.DisplayJobName = ciTasks[i].DisplayJobName + taskDetail.Status = ciTasks[i].Status + taskDetail.JobType = ciTasks[i].JobType + taskDetail.CreatedUnix = ciTasks[i].Cloudbrain.CreatedUnix + taskDetail.RunTime = ciTasks[i].EndTime - ciTasks[i].StartTime + taskDetail.StartTime = ciTasks[i].StartTime + taskDetail.EndTime = ciTasks[i].EndTime + taskDetail.ComputeResource = ciTasks[i].ComputeResource + taskDetail.Type = ciTasks[i].Cloudbrain.Type + taskDetail.UserName = ciTasks[i].User.Name + taskDetail.RepoID = ciTasks[i].RepoID + if ciTasks[i].Repo != nil { + taskDetail.RepoName = ciTasks[i].Repo.OwnerName + "/" + ciTasks[i].Repo.Name + } + taskDetail.WaitTime = ciTasks[i].StartTime - ciTasks[i].Cloudbrain.CreatedUnix + if taskDetail.WaitTime < 0 { + taskDetail.WaitTime = 0 + } + + tasks = append(tasks, taskDetail) } pager := context.NewPagination(int(count), setting.UI.IssuePagingNum, page, getTotalPage(count, setting.UI.IssuePagingNum)) @@ -498,10 +516,9 @@ func GetCloudbrainsDetailData(ctx *context.Context) { pager.AddParam(ctx, "listType", "ListType") ctx.JSON(http.StatusOK, map[string]interface{}{ - "Title": ctx.Tr("kanban.cloudBrains"), - "Tasks": ciTasks, - "CanCreate": true, - "Keyword": keyword, + "Title": ctx.Tr("kanban.cloudBrains"), + "Tasks": tasks, + "Keyword": keyword, }) }