@@ -446,7 +446,7 @@ func (task *Cloudbrain) NeedActiveStop() bool { | |||||
//是否允许创建多版本 | //是否允许创建多版本 | ||||
//目前只有启智NPU可以 | //目前只有启智NPU可以 | ||||
func (task *Cloudbrain) IsAllowedToCreateMultipleVersions() bool { | func (task *Cloudbrain) IsAllowedToCreateMultipleVersions() bool { | ||||
if task.Type == TypeCloudBrainTwo && task.ComputeResource == NPUResource { | |||||
if task.Type == TypeCloudBrainTwo && task.ComputeResource == NPUResource && task.JobType != string(JobTypeDebug) { | |||||
return true | return true | ||||
} | } | ||||
return false | return false | ||||
@@ -2285,6 +2285,9 @@ func CloudbrainsVersionList(opts *CloudbrainsOptions) ([]*CloudbrainInfo, int, e | |||||
} | } | ||||
func GetCloudbrainEarlyVersionList(task *Cloudbrain) ([]*Cloudbrain, error) { | func GetCloudbrainEarlyVersionList(task *Cloudbrain) ([]*Cloudbrain, error) { | ||||
if task.JobID == "" { | |||||
return []*Cloudbrain{}, nil | |||||
} | |||||
cloudbrains := make([]*Cloudbrain, 0) | cloudbrains := make([]*Cloudbrain, 0) | ||||
if err := x.Where(builder.NewCond(). | if err := x.Where(builder.NewCond(). | ||||
And(builder.Eq{"cloudbrain.repo_id": task.RepoID}). | And(builder.Eq{"cloudbrain.repo_id": task.RepoID}). | ||||
@@ -1310,7 +1310,7 @@ func RegisterRoutes(m *macaron.Macaron) { | |||||
m.Get("/debug", reqWechatBind, cloudbrain.AdminOrJobCreaterRight, repo.GrampusNotebookDebug) | m.Get("/debug", reqWechatBind, cloudbrain.AdminOrJobCreaterRight, repo.GrampusNotebookDebug) | ||||
m.Get("/commit_image", cloudbrain.AdminOrJobCreaterRight, repo.GrampusCommitImageShow) | m.Get("/commit_image", cloudbrain.AdminOrJobCreaterRight, repo.GrampusCommitImageShow) | ||||
m.Post("/commit_image", cloudbrain.AdminOrJobCreaterRight, bindIgnErr(auth.CommitImageGrampusForm{}), repo.GrampusCommitImage) | m.Post("/commit_image", cloudbrain.AdminOrJobCreaterRight, bindIgnErr(auth.CommitImageGrampusForm{}), repo.GrampusCommitImage) | ||||
m.Post("/restart", reqWechatBind, cloudbrain.AdminOrJobCreaterRight, repo.GrampusNotebookRestart) | |||||
m.Post("/restart", reqWechatBindForApi, cloudbrain.AdminOrJobCreaterRight, repo.GrampusNotebookRestart) | |||||
m.Post("/stop", cloudbrain.AdminOrOwnerOrJobCreaterRight, repo.GrampusStopJob) | m.Post("/stop", cloudbrain.AdminOrOwnerOrJobCreaterRight, repo.GrampusStopJob) | ||||
m.Post("/del", cloudbrain.AdminOrOwnerOrJobCreaterRight, repo.GrampusNotebookDel) | m.Post("/del", cloudbrain.AdminOrOwnerOrJobCreaterRight, repo.GrampusNotebookDel) | ||||
}) | }) | ||||
@@ -1417,7 +1417,7 @@ func RegisterRoutes(m *macaron.Macaron) { | |||||
m.Group("/:id", func() { | m.Group("/:id", func() { | ||||
m.Get("", reqRepoCloudBrainReader, repo.NotebookShow) | m.Get("", reqRepoCloudBrainReader, repo.NotebookShow) | ||||
m.Get("/debug", cloudbrain.AdminOrJobCreaterRight, repo.NotebookDebug2) | m.Get("/debug", cloudbrain.AdminOrJobCreaterRight, repo.NotebookDebug2) | ||||
m.Post("/restart", cloudbrain.AdminOrJobCreaterRight, repo.NotebookRestart) | |||||
m.Post("/restart", reqWechatBindForApi, cloudbrain.AdminOrJobCreaterRight, repo.NotebookRestart) | |||||
m.Post("/stop", cloudbrain.AdminOrOwnerOrJobCreaterRight, repo.NotebookStop) | m.Post("/stop", cloudbrain.AdminOrOwnerOrJobCreaterRight, repo.NotebookStop) | ||||
m.Post("/del", cloudbrain.AdminOrOwnerOrJobCreaterRight, repo.NotebookDel) | m.Post("/del", cloudbrain.AdminOrOwnerOrJobCreaterRight, repo.NotebookDel) | ||||
}) | }) | ||||
@@ -113,11 +113,26 @@ func (DefaultCreationHandler) BuildRequest4Restart(ctx *context.CreationContext) | |||||
func (DefaultCreationHandler) CheckDatasetExists(ctx *context.CreationContext) *response.BizError { | func (DefaultCreationHandler) CheckDatasetExists(ctx *context.CreationContext) *response.BizError { | ||||
log.Info("Start to CheckDataset.displayJobName=%s jobType=%s cluster=%s", ctx.Request.DisplayJobName, ctx.Request.JobType, ctx.Request.Cluster) | log.Info("Start to CheckDataset.displayJobName=%s jobType=%s cluster=%s", ctx.Request.DisplayJobName, ctx.Request.JobType, ctx.Request.Cluster) | ||||
if hasDatasetDeleted(ctx.Request.DatasetUUIDStr) { | |||||
datasetUUIDStr := ctx.Request.DatasetUUIDStr | |||||
if datasetUUIDStr == "" { | |||||
return nil | |||||
} | |||||
uuids := strings.Split(datasetUUIDStr, ";") | |||||
attachs, _ := models.GetAttachmentsByUUIDs(uuids) | |||||
if len(attachs) < len(uuids) { | |||||
log.Info("CheckDataset hasDatasetDeleted.displayJobName=%s jobType=%s cluster=%s", ctx.Request.DisplayJobName, ctx.Request.JobType, ctx.Request.Cluster) | log.Info("CheckDataset hasDatasetDeleted.displayJobName=%s jobType=%s cluster=%s", ctx.Request.DisplayJobName, ctx.Request.JobType, ctx.Request.Cluster) | ||||
return response.DATASET_NOT_EXISTS | return response.DATASET_NOT_EXISTS | ||||
} | } | ||||
var datasetNames string | |||||
for i := 0; i < len(uuids); i++ { | |||||
for j := 0; j < len(attachs); j++ { | |||||
if uuids[i] == attachs[j].UUID { | |||||
datasetNames += attachs[j].Name + ";" | |||||
} | |||||
} | |||||
} | |||||
ctx.Request.DatasetNames = strings.TrimSuffix(datasetNames, ";") | |||||
log.Info("CheckDataset success.displayJobName=%s jobType=%s cluster=%s", ctx.Request.DisplayJobName, ctx.Request.JobType, ctx.Request.Cluster) | log.Info("CheckDataset success.displayJobName=%s jobType=%s cluster=%s", ctx.Request.DisplayJobName, ctx.Request.JobType, ctx.Request.Cluster) | ||||
return nil | return nil | ||||
} | } | ||||
Dear OpenI User
Thank you for your continuous support to the Openl Qizhi Community AI Collaboration Platform. In order to protect your usage rights and ensure network security, we updated the Openl Qizhi Community AI Collaboration Platform Usage Agreement in January 2024. The updated agreement specifies that users are prohibited from using intranet penetration tools. After you click "Agree and continue", you can continue to use our services. Thank you for your cooperation and understanding.
For more agreement content, please refer to the《Openl Qizhi Community AI Collaboration Platform Usage Agreement》