| @@ -755,6 +755,15 @@ unit_disabled = The site administrator has disabled this repository section. | |||||
| language_other = Other | language_other = Other | ||||
| datasets = Datasets | datasets = Datasets | ||||
| datasets.desc = Enable Dataset | datasets.desc = Enable Dataset | ||||
| debug=Debug | |||||
| stop=Stop | |||||
| delete=Delete | |||||
| model_download=Model Download | |||||
| submit_image=Submit Image | |||||
| download=Download | |||||
| cloudbrain=cloudbrain | cloudbrain=cloudbrain | ||||
| cloudbrain.new=New cloudbrain | cloudbrain.new=New cloudbrain | ||||
| cloudbrain.desc=cloudbrain | cloudbrain.desc=cloudbrain | ||||
| @@ -777,9 +786,13 @@ cloudbrain_status_createtime = Status/Createtime | |||||
| cloudbrain_status_runtime = Running Time | cloudbrain_status_runtime = Running Time | ||||
| modelarts.notebook=Debug Job | |||||
| modelarts.train_job=Create Job | |||||
| modelarts.train_job.new=New Job | |||||
| modelarts.notebook=Debug Task | |||||
| modelarts.train_job=Create Task | |||||
| modelarts.train_job.new_debug= New Debug Task | |||||
| modelarts.train_job.new_train=New Train Task | |||||
| modelarts.train_job.basic_info=Basic Info | modelarts.train_job.basic_info=Basic Info | ||||
| modelarts.train_job.job_status=Job Status | modelarts.train_job.job_status=Job Status | ||||
| modelarts.train_job.job_name=Job Name | modelarts.train_job.job_name=Job Name | ||||
| @@ -757,6 +757,14 @@ unit_disabled=站点管理员已禁用此项目单元。 | |||||
| language_other=其它 | language_other=其它 | ||||
| datasets=数据集 | datasets=数据集 | ||||
| datasets.desc=数据集功能 | datasets.desc=数据集功能 | ||||
| debug=调试 | |||||
| stop=停止 | |||||
| delete=删除 | |||||
| model_download=模型下载 | |||||
| submit_image=提交镜像 | |||||
| download=模型下载 | |||||
| cloudbrain=云脑 | cloudbrain=云脑 | ||||
| cloudbrain.new=新建任务 | cloudbrain.new=新建任务 | ||||
| cloudbrain.desc=云脑功能 | cloudbrain.desc=云脑功能 | ||||
| @@ -779,9 +787,12 @@ cloudbrain_status_createtime=状态/创建时间 | |||||
| cloudbrain_status_runtime = 运行时长 | cloudbrain_status_runtime = 运行时长 | ||||
| cloudbrain_jobname_err=只能以小写字母或数字开头且只包含小写字母、数字、_和-,不能以_结尾,最长36个字符。 | cloudbrain_jobname_err=只能以小写字母或数字开头且只包含小写字母、数字、_和-,不能以_结尾,最长36个字符。 | ||||
| modelarts.notebook=调试作业 | |||||
| modelarts.train_job=训练作业 | |||||
| modelarts.train_job.new=新建作业 | |||||
| modelarts.notebook=调试任务 | |||||
| modelarts.train_job=训练任务 | |||||
| modelarts.train_job.new_debug=新建调试任务 | |||||
| modelarts.train_job.new_train=新建训练任务 | |||||
| modelarts.train_job.basic_info=基本信息 | modelarts.train_job.basic_info=基本信息 | ||||
| modelarts.train_job.job_status=作业状态 | modelarts.train_job.job_status=作业状态 | ||||
| modelarts.train_job.job_name=作业名称 | modelarts.train_job.job_name=作业名称 | ||||
| @@ -74,6 +74,7 @@ func GetModelArtsTrainJob(ctx *context.APIContext) { | |||||
| ctx.JSON(http.StatusOK, map[string]interface{}{ | ctx.JSON(http.StatusOK, map[string]interface{}{ | ||||
| "JobID": jobID, | "JobID": jobID, | ||||
| "JobStatus": job.Status, | "JobStatus": job.Status, | ||||
| "JobDuration": job.Duration, | |||||
| }) | }) | ||||
| } | } | ||||
| @@ -239,7 +239,7 @@ | |||||
| <div class="column"> | <div class="column"> | ||||
| <div class="ui blue small menu compact selectcloudbrain"> | <div class="ui blue small menu compact selectcloudbrain"> | ||||
| <a class="active item">调试任务</a> | |||||
| <a class="active item">{{$.i18n.Tr "repo.modelarts.notebook"}}</a> | |||||
| <!-- <a class="item" href="{{.RepoLink}}/modelarts">训练任务</a> --> | <!-- <a class="item" href="{{.RepoLink}}/modelarts">训练任务</a> --> | ||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| @@ -255,7 +255,7 @@ | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <a class="ui green button" href="{{.RepoLink}}/cloudbrain/create">新建调试任务</a> | |||||
| <a class="ui green button" href="{{.RepoLink}}/cloudbrain/create">{{$.i18n.Tr "repo.modelarts.train_job.new_debug"}}</a> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| @@ -358,25 +358,25 @@ | |||||
| <!-- 调试 --> | <!-- 调试 --> | ||||
| <a id="model-debug-{{.JobID}}" class="ui basic {{if not .CanDebug}}disabled {{else}}blue {{end}}button" href="{{$.Link}}/{{.JobID}}/debug" target="_blank"> | <a id="model-debug-{{.JobID}}" class="ui basic {{if not .CanDebug}}disabled {{else}}blue {{end}}button" href="{{$.Link}}/{{.JobID}}/debug" target="_blank"> | ||||
| 调试 | |||||
| {{$.i18n.Tr "repo.debug"}} | |||||
| </a> | </a> | ||||
| <form id="stopForm-{{.JobID}}" action="{{$.Link}}/{{.JobID}}/stop" method="post" style="margin-left:-1px;"> | <form id="stopForm-{{.JobID}}" action="{{$.Link}}/{{.JobID}}/stop" method="post" style="margin-left:-1px;"> | ||||
| {{$.CsrfTokenHtml}} | {{$.CsrfTokenHtml}} | ||||
| <a id="stop-model-debug-{{.JobID}}" class="ui basic {{if or (eq .Status "STOPPED") (eq .Status "FAILED")}}disabled {{else}}blue {{end}}button" onclick="document.getElementById('stopForm-{{.JobID}}').submit();"> | <a id="stop-model-debug-{{.JobID}}" class="ui basic {{if or (eq .Status "STOPPED") (eq .Status "FAILED")}}disabled {{else}}blue {{end}}button" onclick="document.getElementById('stopForm-{{.JobID}}').submit();"> | ||||
| 停止 | |||||
| {{$.i18n.Tr "repo.stop"}} | |||||
| </a> | </a> | ||||
| </form> | </form> | ||||
| </div> | </div> | ||||
| <div class="ui compact buttons" style="margin-right:10px;"> | <div class="ui compact buttons" style="margin-right:10px;"> | ||||
| <!-- 模型下载 --> | <!-- 模型下载 --> | ||||
| <a class="ui basic blue button" href="{{$.Link}}/{{.JobID}}/models" target="_blank"> | <a class="ui basic blue button" href="{{$.Link}}/{{.JobID}}/models" target="_blank"> | ||||
| 模型下载 | |||||
| {{$.i18n.Tr "repo.download"}} | |||||
| </a> | </a> | ||||
| <!-- 接收结果 --> | <!-- 接收结果 --> | ||||
| <iframe src="" frameborder="0" name="iframeContent" style="display: none;"></iframe> | <iframe src="" frameborder="0" name="iframeContent" style="display: none;"></iframe> | ||||
| <a id="model-image-{{.JobID}}" class="imageBtn ui basic {{if not .CanDebug}}disabled {{else}}blue {{end}}button" value="{{.CanDebug}}">提交镜像</a> | |||||
| <a id="model-image-{{.JobID}}" class="imageBtn ui basic {{if not .CanDebug}}disabled {{else}}blue {{end}}button" value="{{.CanDebug}}">{{$.i18n.Tr "repo.submit_image"}}</a> | |||||
| </div> | </div> | ||||
| @@ -384,7 +384,7 @@ | |||||
| <form class="ui compact buttons" id="delForm-{{.JobID}}" action="{{$.Link}}/{{.JobID}}/del" method="post"> | <form class="ui compact buttons" id="delForm-{{.JobID}}" action="{{$.Link}}/{{.JobID}}/del" method="post"> | ||||
| {{$.CsrfTokenHtml}} | {{$.CsrfTokenHtml}} | ||||
| <a id="model-delete-{{.JobID}}" class="ui compact {{if not .CanDel}}disabled {{else}}red {{end}}button" onclick="assertDelete(this)" style="border-radius: .28571429rem;"> | <a id="model-delete-{{.JobID}}" class="ui compact {{if not .CanDel}}disabled {{else}}red {{end}}button" onclick="assertDelete(this)" style="border-radius: .28571429rem;"> | ||||
| 删除 | |||||
| {{$.i18n.Tr "repo.delete"}} | |||||
| </a> | </a> | ||||
| </form> | </form> | ||||
| @@ -208,8 +208,8 @@ | |||||
| <div class="column"> | <div class="column"> | ||||
| <div class="ui blue small menu compact selectcloudbrain"> | <div class="ui blue small menu compact selectcloudbrain"> | ||||
| <a class="active item" href="{{.RepoLink}}/modelarts/notebook">调试任务</a> | |||||
| <a class="item" href="{{.RepoLink}}/modelarts/train-job">训练任务</a> | |||||
| <a class="active item" href="{{.RepoLink}}/modelarts/notebook">{{$.i18n.Tr "repo.modelarts.notebook"}}</a> | |||||
| <a class="item" href="{{.RepoLink}}/modelarts/train-job">{{$.i18n.Tr "repo.modelarts.train_job"}}</a> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <div class="column right aligned"> | <div class="column right aligned"> | ||||
| @@ -224,7 +224,7 @@ | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <a class="ui green button" href="{{.RepoLink}}/modelarts/notebook/create">新建调试任务</a> | |||||
| <a class="ui green button" href="{{.RepoLink}}/modelarts/notebook/create">{{$.i18n.Tr "repo.modelarts.train_job.new_debug"}}</a> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| @@ -311,12 +311,12 @@ | |||||
| 查看 | 查看 | ||||
| </a> --> | </a> --> | ||||
| <a id="model-debug-{{.JobID}}" style="margin-right: 2rem;" class="ui basic {{if not .CanDebug}}disabled {{else}}blue {{end}}button" href="{{$.Link}}/{{.JobID}}/debug" target="_blank"> | <a id="model-debug-{{.JobID}}" style="margin-right: 2rem;" class="ui basic {{if not .CanDebug}}disabled {{else}}blue {{end}}button" href="{{$.Link}}/{{.JobID}}/debug" target="_blank"> | ||||
| 调试 | |||||
| {{$.i18n.Tr "repo.debug"}} | |||||
| </a> | </a> | ||||
| <form id="stopForm-{{.JobID}}" action="{{$.Link}}/{{.JobID}}/stop" method="post" style="margin-left:-1px;"> | <form id="stopForm-{{.JobID}}" action="{{$.Link}}/{{.JobID}}/stop" method="post" style="margin-left:-1px;"> | ||||
| {{$.CsrfTokenHtml}} | {{$.CsrfTokenHtml}} | ||||
| <a id="stop-model-debug-{{.JobID}}" style="margin-right: 2rem;" class="ui basic {{if or (eq .Status "STOPPED") (eq .Status "FAILED")}}disabled {{else}}blue {{end}}button" onclick="document.getElementById('stopForm-{{.JobID}}').submit();"> | <a id="stop-model-debug-{{.JobID}}" style="margin-right: 2rem;" class="ui basic {{if or (eq .Status "STOPPED") (eq .Status "FAILED")}}disabled {{else}}blue {{end}}button" onclick="document.getElementById('stopForm-{{.JobID}}').submit();"> | ||||
| 停止 | |||||
| {{$.i18n.Tr "repo.stop"}} | |||||
| </a> | </a> | ||||
| </form> | </form> | ||||
| </div> | </div> | ||||
| @@ -337,7 +337,7 @@ | |||||
| <form class="ui compact buttons" id="delForm-{{.JobID}}" action="{{$.Link}}/{{.JobID}}/del" method="post"> | <form class="ui compact buttons" id="delForm-{{.JobID}}" action="{{$.Link}}/{{.JobID}}/del" method="post"> | ||||
| {{$.CsrfTokenHtml}} | {{$.CsrfTokenHtml}} | ||||
| <a id="model-delete-{{.JobID}}" class="ui compact {{if eq .Status "RUNNING"}}disabled {{else}}red {{end}}button" onclick="assertDelete(this)" style="border-radius: .28571429rem;"> | <a id="model-delete-{{.JobID}}" class="ui compact {{if eq .Status "RUNNING"}}disabled {{else}}red {{end}}button" onclick="assertDelete(this)" style="border-radius: .28571429rem;"> | ||||
| 删除 | |||||
| {{$.i18n.Tr "repo.delete"}} | |||||
| </a> | </a> | ||||
| </form> | </form> | ||||
| </div> | </div> | ||||
| @@ -231,8 +231,8 @@ | |||||
| <div class="column"> | <div class="column"> | ||||
| <div class="ui blue small menu compact selectcloudbrain"> | <div class="ui blue small menu compact selectcloudbrain"> | ||||
| <a class="item" href="{{.RepoLink}}/modelarts/notebook">调试任务</a> | |||||
| <a class="active item" href="{{.RepoLink}}/modelarts/train-job">训练任务</a> | |||||
| <a class="item" href="{{.RepoLink}}/modelarts/notebook">{{$.i18n.Tr "repo.modelarts.notebook"}}</a> | |||||
| <a class="active item" href="{{.RepoLink}}/modelarts/train-job">{{$.i18n.Tr "repo.modelarts.train_job"}}</a> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <div class="column right aligned"> | <div class="column right aligned"> | ||||
| @@ -247,7 +247,7 @@ | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| <a class="ui green button" href="{{.RepoLink}}/modelarts/train-job/create">新建训练任务</a> | |||||
| <a class="ui green button" href="{{.RepoLink}}/modelarts/train-job/create">{{$.i18n.Tr "repo.modelarts.train_job.new_train"}}</a> | |||||
| </div> | </div> | ||||
| </div> | </div> | ||||
| @@ -283,13 +283,13 @@ | |||||
| <div class="three wide column"> | <div class="three wide column"> | ||||
| <span>{{$.i18n.Tr "repo.cloudbrain_status_createtime"}}</span> | <span>{{$.i18n.Tr "repo.cloudbrain_status_createtime"}}</span> | ||||
| </div> | </div> | ||||
| <div class="three wide column"> | |||||
| <div class="two wide column"> | |||||
| <span>{{$.i18n.Tr "repo.cloudbrain_status_runtime"}}</span> | <span>{{$.i18n.Tr "repo.cloudbrain_status_runtime"}}</span> | ||||
| </div> | </div> | ||||
| <div class="one wide column text center"> | <div class="one wide column text center"> | ||||
| <span>{{$.i18n.Tr "repo.cloudbrain_creator"}}</span> | <span>{{$.i18n.Tr "repo.cloudbrain_creator"}}</span> | ||||
| </div> | </div> | ||||
| <div class="four wide column text center"> | |||||
| <div class="five wide column text center"> | |||||
| <span>{{$.i18n.Tr "repo.cloudbrain_operate"}}</span> | <span>{{$.i18n.Tr "repo.cloudbrain_operate"}}</span> | ||||
| </div> | </div> | ||||
| @@ -323,13 +323,13 @@ | |||||
| <span style="font-size: 12px;margin-left: 0.4rem;" class="">{{TimeSinceUnix .Cloudbrain.CreatedUnix $.Lang}}</span> | <span style="font-size: 12px;margin-left: 0.4rem;" class="">{{TimeSinceUnix .Cloudbrain.CreatedUnix $.Lang}}</span> | ||||
| </div> | </div> | ||||
| <div class="three wide column"> | |||||
| <div class="two wide column"> | |||||
| <!--任务状态 --> | <!--任务状态 --> | ||||
| <!-- <span class="ui compact button job-status" id="{{.JobID}}" data-repopath="{{$.RepoRelPath}}" data-jobid="{{.JobID}}"> | <!-- <span class="ui compact button job-status" id="{{.JobID}}" data-repopath="{{$.RepoRelPath}}" data-jobid="{{.JobID}}"> | ||||
| {{.Status}} | {{.Status}} | ||||
| </span> --> | </span> --> | ||||
| <span>{{.TrainJobDuration}}</span> | |||||
| <span id="duration-{{.JobID}}"></span> | |||||
| <!-- 任务创建时间 --> | <!-- 任务创建时间 --> | ||||
| <!-- <span style="font-size: 12px;margin-left: 0.4rem;" class="">{{TimeSinceUnix .Cloudbrain.CreatedUnix $.Lang}}</span> --> | <!-- <span style="font-size: 12px;margin-left: 0.4rem;" class="">{{TimeSinceUnix .Cloudbrain.CreatedUnix $.Lang}}</span> --> | ||||
| @@ -343,7 +343,7 @@ | |||||
| {{end}} | {{end}} | ||||
| </div> | </div> | ||||
| <div class="four wide column text right"> | |||||
| <div class="five wide column text right"> | |||||
| <div class="ui compact buttons"> | <div class="ui compact buttons"> | ||||
| <!-- <a class="ui basic blue button" href="{{$.Link}}/{{.JobID}}"> | <!-- <a class="ui basic blue button" href="{{$.Link}}/{{.JobID}}"> | ||||
| 查看 | 查看 | ||||
| @@ -354,14 +354,14 @@ | |||||
| <form id="stopForm-{{.JobID}}" action="{{$.Link}}/{{.JobID}}/stop" method="post" style="margin-left:-1px;"> | <form id="stopForm-{{.JobID}}" action="{{$.Link}}/{{.JobID}}/stop" method="post" style="margin-left:-1px;"> | ||||
| {{$.CsrfTokenHtml}} | {{$.CsrfTokenHtml}} | ||||
| <a id="stop-model-debug-{{.JobID}}" class="ui basic {{if or (eq .Status "KILLED") (eq .Status "FAILED")}}disabled {{else}}blue {{end}}button" onclick="document.getElementById('stopForm-{{.JobID}}').submit();"> | <a id="stop-model-debug-{{.JobID}}" class="ui basic {{if or (eq .Status "KILLED") (eq .Status "FAILED")}}disabled {{else}}blue {{end}}button" onclick="document.getElementById('stopForm-{{.JobID}}').submit();"> | ||||
| 停止 | |||||
| {{$.i18n.Tr "repo.stop"}} | |||||
| </a> | </a> | ||||
| </form> | </form> | ||||
| </div> | </div> | ||||
| <div class="ui compact buttons" style="margin-right:10px;"> | <div class="ui compact buttons" style="margin-right:10px;"> | ||||
| <!-- 模型下载 --> | <!-- 模型下载 --> | ||||
| <a class="ui basic blue button" href="{{$.Link}}/{{.JobID}}/models" target="_blank"> | <a class="ui basic blue button" href="{{$.Link}}/{{.JobID}}/models" target="_blank"> | ||||
| 模型下载 | |||||
| {{$.i18n.Tr "repo.model_download"}} | |||||
| </a> | </a> | ||||
| <!-- 接收结果 --> | <!-- 接收结果 --> | ||||
| @@ -373,7 +373,7 @@ | |||||
| <form class="ui compact buttons" id="delForm-{{.JobID}}" action="{{$.Link}}/{{.JobID}}/del" method="post"> | <form class="ui compact buttons" id="delForm-{{.JobID}}" action="{{$.Link}}/{{.JobID}}/del" method="post"> | ||||
| {{$.CsrfTokenHtml}} | {{$.CsrfTokenHtml}} | ||||
| <a id="model-delete-{{.JobID}}" class="ui compact {{if eq .Status "RUNNING" }}disabled {{else}}red {{end}}button" onclick="assertDelete(this)" style="border-radius: .28571429rem;"> | <a id="model-delete-{{.JobID}}" class="ui compact {{if eq .Status "RUNNING" }}disabled {{else}}red {{end}}button" onclick="assertDelete(this)" style="border-radius: .28571429rem;"> | ||||
| 删除 | |||||
| {{$.i18n.Tr "repo.delete"}} | |||||
| </a> | </a> | ||||
| </form> | </form> | ||||
| </div> | </div> | ||||
| @@ -456,7 +456,31 @@ | |||||
| .modal('show') | .modal('show') | ||||
| } | } | ||||
| } | } | ||||
| function runtime(time){ | |||||
| if(time){ | |||||
| let hours = time/3600000<10 ? "0"+parseInt(time/3600000):parseInt(time/3600000) | |||||
| let miuns = time%3600000/60000<10 ? "0"+parseInt(time%3600000/60000):parseInt(time%3600000/60000) | |||||
| let seconds = time%60000/1000<10 ? "0"+parseInt(time%60000/1000):parseInt(time%60000/1000) | |||||
| return hours + ":" + miuns + ":" + seconds | |||||
| }else{ | |||||
| return "00:00:00" | |||||
| } | |||||
| } | |||||
| function loadJobDuration() { | |||||
| $(".job-status").each((index, job) => { | |||||
| const jobID = job.dataset.jobid; | |||||
| const repoPath = job.dataset.repopath; | |||||
| $.get(`/api/v1/repos/${repoPath}/modelarts/train-job/${jobID}`, (data) => { | |||||
| const duration = data.JobDuration | |||||
| const jobID = data.JobID | |||||
| let train_duration = runtime(duration) | |||||
| $('#duration-'+jobID).text(train_duration) | |||||
| }) | |||||
| }) | |||||
| } | |||||
| $(document).ready(loadJobDuration); | |||||
| // 加载任务状态 | // 加载任务状态 | ||||
| var timeid = window.setInterval(loadJobStatus, 15000); | var timeid = window.setInterval(loadJobStatus, 15000); | ||||
| $(document).ready(loadJobStatus); | $(document).ready(loadJobStatus); | ||||
| @@ -464,6 +488,7 @@ | |||||
| $(".job-status").each((index, job) => { | $(".job-status").each((index, job) => { | ||||
| const jobID = job.dataset.jobid; | const jobID = job.dataset.jobid; | ||||
| const repoPath = job.dataset.repopath; | const repoPath = job.dataset.repopath; | ||||
| if (job.textContent.trim() == 'IMAGE_FAILED' || job.textContent.trim() == 'SUBMIT_FAILED' || job.textContent.trim() == 'DELETE_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() == 'KILLED' || job.textContent.trim() == 'COMPLETED' || job.textContent.trim() == 'FAILED' | ||||
| || job.textContent.trim() == 'CANCELED' || job.textContent.trim() == 'LOST') { | || job.textContent.trim() == 'CANCELED' || job.textContent.trim() == 'LOST') { | ||||
| @@ -473,32 +498,17 @@ | |||||
| $.get(`/api/v1/repos/${repoPath}/modelarts/train-job/${jobID}`, (data) => { | $.get(`/api/v1/repos/${repoPath}/modelarts/train-job/${jobID}`, (data) => { | ||||
| const jobID = data.JobID | const jobID = data.JobID | ||||
| const status = data.JobStatus | const status = data.JobStatus | ||||
| function runtime(){ | |||||
| if(time){ | |||||
| let hours = time/3600000<10 ? time/3600000+"0":time/3600000 | |||||
| let miuns = time%3600000/60000<10 ? time%3600000/60000+"0":time%3600000/60000 | |||||
| let seconds = time%60000/1000<10 ? time%60000/1000<10+"0":time%60000/1000<10 | |||||
| return hours + ":" + miuns + ":" + seconds | |||||
| }else{ | |||||
| return "00:00:00" | |||||
| } | |||||
| } | |||||
| const duration = data.JobDuration | |||||
| if (status != job.textContent.trim()) { | if (status != job.textContent.trim()) { | ||||
| $('#' + jobID+'-icon').removeClass().addClass(status) | $('#' + jobID+'-icon').removeClass().addClass(status) | ||||
| $('#' + jobID+ '-text').text(status) | $('#' + jobID+ '-text').text(status) | ||||
| //if (status == 'STOPPED') { | |||||
| // window.location.reload() | |||||
| //} | |||||
| } | } | ||||
| if(status==="RUNNING"){ | if(status==="RUNNING"){ | ||||
| $('#model-debug-'+jobID).removeClass('disabled') | $('#model-debug-'+jobID).removeClass('disabled') | ||||
| $('#model-debug-'+jobID).addClass('blue') | $('#model-debug-'+jobID).addClass('blue') | ||||
| // let TrainDuration = runtime(time) | |||||
| // $('#model-duration').text(TrainDuration) | |||||
| let train_duration = runtime(duration) | |||||
| $('#duration-'+jobID).text(train_duration) | |||||
| } | } | ||||
| if(status!=="RUNNING"){ | if(status!=="RUNNING"){ | ||||