|
|
|
@@ -103,7 +103,7 @@ func GetAllCloudbrainsOverview(ctx *context.Context) { |
|
|
|
|
|
|
|
ctx.JSON(http.StatusOK, map[string]interface{}{ |
|
|
|
"recordBeginTime": recordCloudbrain[0].Cloudbrain.CreatedUnix, |
|
|
|
"updateTime": now, |
|
|
|
"updateTime": now.Unix(), |
|
|
|
"cloudBrainNum": cloudBrainNum, |
|
|
|
"cloudBrainOneDuration": cloudBrainOneDuration, |
|
|
|
"cloudBrainTwoDuration": cloudBrainTwoDuration, |
|
|
|
@@ -632,12 +632,88 @@ func GetCloudbrainsCreateHoursData(ctx *context.Context) { |
|
|
|
} |
|
|
|
ctx.JSON(http.StatusOK, map[string]interface{}{ |
|
|
|
"recordBeginTime": recordCloudbrain[0].Cloudbrain.CreatedUnix, |
|
|
|
"updateTime": now, |
|
|
|
"updateTime": now.Unix(), |
|
|
|
"createHourPeriodCount": createHourPeriodCount, |
|
|
|
"runHourPeriodCount": runHourPeriodCount, |
|
|
|
}) |
|
|
|
|
|
|
|
} |
|
|
|
func GetWaittingTop(ctx *context.Context) { |
|
|
|
ciTasks, err := models.GetWaittingTop() |
|
|
|
if err != nil { |
|
|
|
log.Error("Can not get record begin time", err) |
|
|
|
ctx.Error(http.StatusBadRequest, ctx.Tr("repo.record_begintime_get_err")) |
|
|
|
return |
|
|
|
} |
|
|
|
tasks := []models.TaskDetail{} |
|
|
|
for i, task := range ciTasks { |
|
|
|
ciTasks[i].Cloudbrain.ComputeResource = task.ComputeResource |
|
|
|
|
|
|
|
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) |
|
|
|
} |
|
|
|
ctx.JSON(http.StatusOK, map[string]interface{}{ |
|
|
|
"tasks": tasks, |
|
|
|
}) |
|
|
|
} |
|
|
|
func GetRunningTop(ctx *context.Context) { |
|
|
|
ciTasks, err := models.GetRunningTop() |
|
|
|
if err != nil { |
|
|
|
log.Error("Can not get record begin time", err) |
|
|
|
ctx.Error(http.StatusBadRequest, ctx.Tr("repo.record_begintime_get_err")) |
|
|
|
return |
|
|
|
} |
|
|
|
tasks := []models.TaskDetail{} |
|
|
|
for i, task := range ciTasks { |
|
|
|
ciTasks[i].Cloudbrain.ComputeResource = task.ComputeResource |
|
|
|
|
|
|
|
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) |
|
|
|
} |
|
|
|
ctx.JSON(http.StatusOK, map[string]interface{}{ |
|
|
|
"tasks": tasks, |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
|
func getCloudbrainCount(beginTime time.Time, endTime time.Time, cloudbrains []*models.CloudbrainInfo) (map[string]int, map[string]int, map[string]int, map[int]int, map[string]int) { |
|
|
|
|
|
|
|
|