Merge pull request 'updated getdepoytaskbytype logics' (#297) from tzwang/pcm-coordinator:master into master
Former-commit-id: f9dd5a14ca67214d9e286d136426bb2c8338a505
This commit is contained in:
commit
2cfd2a9cca
|
@ -3,6 +3,8 @@ package inference
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
"github.com/pkg/errors"
|
"github.com/pkg/errors"
|
||||||
|
"gitlink.org.cn/JointCloud/pcm-coordinator/pkg/constants"
|
||||||
|
"gitlink.org.cn/JointCloud/pcm-coordinator/pkg/models"
|
||||||
|
|
||||||
"gitlink.org.cn/JointCloud/pcm-coordinator/internal/svc"
|
"gitlink.org.cn/JointCloud/pcm-coordinator/internal/svc"
|
||||||
"gitlink.org.cn/JointCloud/pcm-coordinator/internal/types"
|
"gitlink.org.cn/JointCloud/pcm-coordinator/internal/types"
|
||||||
|
@ -36,6 +38,38 @@ func (l *GetDeployTasksByTypeLogic) GetDeployTasksByType(req *types.GetDeployTas
|
||||||
return nil, errors.New("实列不存在")
|
return nil, errors.New("实列不存在")
|
||||||
}
|
}
|
||||||
|
|
||||||
resp.List = list
|
listcopy := make([]*models.AiDeployInstanceTask, len(list))
|
||||||
|
copy(listcopy, list)
|
||||||
|
|
||||||
|
for _, task := range list {
|
||||||
|
inslist, err := l.svcCtx.Scheduler.AiStorages.GetInstanceListByDeployTaskId(task.Id)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
if len(inslist) == 0 {
|
||||||
|
removeItem(listcopy, task.Id)
|
||||||
|
}
|
||||||
|
var count int
|
||||||
|
for _, ins := range inslist {
|
||||||
|
if ins.Status == constants.Running {
|
||||||
|
count++
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if count >= 1 {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
removeItem(listcopy, task.Id)
|
||||||
|
}
|
||||||
|
|
||||||
|
resp.List = listcopy
|
||||||
return resp, nil
|
return resp, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func removeItem(items []*models.AiDeployInstanceTask, id int64) {
|
||||||
|
for i := len(items) - 1; i >= 0; i-- {
|
||||||
|
if items[i].Id == id {
|
||||||
|
items = append(items[:i], items[i+1:]...)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -136,6 +136,7 @@ func (l *ImageInferenceLogic) ImageInfer(r *http.Request, req *types.ImageInfere
|
||||||
return nil, errors.New("clusters is nil")
|
return nil, errors.New("clusters is nil")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//remove empty replica
|
||||||
for i := len(clusters) - 1; i >= 0; i-- {
|
for i := len(clusters) - 1; i >= 0; i-- {
|
||||||
if clusters[i].Replicas == 0 {
|
if clusters[i].Replicas == 0 {
|
||||||
clusters = append(clusters[:i], clusters[i+1:]...)
|
clusters = append(clusters[:i], clusters[i+1:]...)
|
||||||
|
|
Loading…
Reference in New Issue