From 91e4910a6f2e6d658bd05faeb2fc649edd11ac34 Mon Sep 17 00:00:00 2001
From: lewis <747342561@qq.com>
Date: Tue, 22 Mar 2022 17:36:10 +0800
Subject: [PATCH] show job
---
routers/repo/cloudbrain.go | 1 +
templates/repo/cloudbrain/trainjob/show.tmpl | 71 +++++++++++++++++++-
2 files changed, 69 insertions(+), 3 deletions(-)
diff --git a/routers/repo/cloudbrain.go b/routers/repo/cloudbrain.go
index ba79eb658..f17ac4026 100755
--- a/routers/repo/cloudbrain.go
+++ b/routers/repo/cloudbrain.go
@@ -483,6 +483,7 @@ func cloudBrainShow(ctx *context.Context, tpName base.TplName, jobType models.Jo
version_list_task = append(version_list_task, task)
ctx.Data["version_list_task"] = version_list_task
ctx.Data["debugListType"] = debugListType
+ ctx.Data["canDownload"] = cloudbrain.CanDeleteJob(ctx, task)
ctx.HTML(200, tpName)
}
diff --git a/templates/repo/cloudbrain/trainjob/show.tmpl b/templates/repo/cloudbrain/trainjob/show.tmpl
index b6a0eadc7..aeb0c6b5e 100755
--- a/templates/repo/cloudbrain/trainjob/show.tmpl
+++ b/templates/repo/cloudbrain/trainjob/show.tmpl
@@ -179,8 +179,8 @@ td, th {
{{.i18n.Tr "repo.cloudbrain"}}
/
-
- {{$.i18n.Tr "repo.modelarts.evaluate_job"}}
+
+ {{$.i18n.Tr "repo.modelarts.train_job"}}
/
{{.displayJobName}}
@@ -413,6 +413,8 @@ td, th {
let userName
let repoPath
let jobName
+ let downlaodFlag = {{$.canDownload}}
+ let taskID = {{$.task.ID}}
$(document).ready(function(){
let url = window.location.href;
let urlArr = url.split('/')
@@ -420,10 +422,20 @@ td, th {
repoPath = urlArr.slice(-4)[0]
jobName = urlArr.slice(-1)[0]
})
+ function stopBubbling(e) {
+ e = window.event || e;
+ if (e.stopPropagation) {
+ e.stopPropagation(); //阻止事件 冒泡传播
+ } else {
+ e.cancelBubble = true; //ie兼容
+ }
+ }
+ let timeid = window.setInterval(loadJobStatus, 30000);
+ $(document).ready(loadJobStatus);
function loadLog(version_name){
document.getElementById("mask").style.display = "block"
- $.get(`/api/v1/repos/${userName}/${repoPath}/cloudbrain/${jobName}/log?version_name=${version_name}&lines=50&order=asc`, (data) => {
+ $.get(`/api/v1/repos/${userName}/${repoPath}/cloudbrain/${taskID}/log?version_name=${version_name}&lines=50&order=asc`, (data) => {
$('input[name=end_line]').val(data.EndLine)
$('input[name=start_line]').val(data.StartLine)
$(`#log_file${version_name}`).text(data.Content)
@@ -548,5 +560,58 @@ td, th {
size=size.toFixed(0);//保留的小数位数
return size+unitArr[index];
}
+ function loadJobStatus() {
+ $(".ui.accordion.border-according").each((index, job) => {
+ const jobID = job.dataset.jobid;
+ const repoPath = job.dataset.repopath;
+ const versionname = job.dataset.version
+ // ['IMAGE_FAILED','SUBMIT_FAILED','DELETE_FAILED','KILLED','COMPLETED','FAILED','CANCELED','LOST','START_FAILED']
+ // if (job.textContent.trim() == 'IMAGE_FAILED' || job.textContent.trim() == 'SUBMIT_FAILED' || job.textContent.trim() == 'DELETE_FAILED'
+ // || job.textContent.trim() == 'KILLED' || job.textContent.trim() == 'COMPLETED' || job.textContent.trim() == 'FAILED'
+ // || job.textContent.trim() == 'CANCELED' || job.textContent.trim() == 'LOST') {
+ // return
+ // }
+ let status = $(`#${versionname}-status-span`).text()
+
+ if(['IMAGE_FAILED','SUBMIT_FAILED','DELETE_FAILED','KILLED','COMPLETED','FAILED','CANCELED','LOST','START_FAILED','SUCCEEDED'].includes(status)){
+ return
+ }
+ let stopArray=["KILLED","FAILED","START_FAILED","KILLING","COMPLETED","SUCCEEDED"]
+ $.get(`/api/v1/repos/${repoPath}/cloudbrain/${taskID}?version_name=${versionname}`, (data) => {
+ //$(`#${versionname}-duration-span`).text(data.JobDuration)
+ $(`#${versionname}-status-span span`).text(data.JobStatus)
+ $(`#${versionname}-status-span i`).attr("class",data.JobStatus)
+ // detail status and duration
+ //$('#'+versionname+'-duration').text(data.JobDuration)
+ $('#'+versionname+'-status').text(data.JobStatus)
+ if(stopArray.includes(data.JobStatus)){
+ $('#'+versionname+'-stop').addClass('disabled')
+ }
+ if(data.JobStatus==="COMPLETED"){
+ $('#'+versionname+'-create-model').removeClass('disabled').addClass('blue')
+ }
+ }).fail(function(err) {
+ console.log(err);
+ });
+ });
+ };
+
+ function refreshStatus(version_name){
+ $.get(`/api/v1/repos/${userName}/${repoPath}/cloudbrain/${taskID}?version_name=${versionname}`,(data)=>{
+ // header status and duration
+ //$(`#${version_name}-duration-span`).text(data.JobDuration)
+ $(`#${version_name}-status-span span`).text(data.JobStatus)
+ $(`#${version_name}-status-span i`).attr("class",data.JobStatus)
+ // detail status and duration
+ //$('#'+version_name+'-duration').text(data.JobDuration)
+ $('#'+version_name+'-status').text(data.JobStatus)
+ loadLog(version_name)
+
+
+ }).fail(function(err) {
+ console.log(err);
+ });
+ stopBubbling(arguments.callee.caller.arguments[0])
+ }
\ No newline at end of file