存算联动调整4

Former-commit-id: 2a1ae75d611eb5627610f29b8db92da308d2e32d
This commit is contained in:
tzwang 2023-12-08 10:56:21 +08:00
parent ff4d0b7136
commit d7556a9c1f
3 changed files with 63 additions and 28 deletions

View File

@ -47,11 +47,11 @@ type (
SubmitLinkTaskReq { SubmitLinkTaskReq {
PartId int64 `json:"partId"` PartId int64 `json:"partId"`
ImageId string `json:"imageId"` ImageId string `json:"imageId,optional"`
Cmd string `json:"cmd"` Cmd string `json:"cmd,optional"`
Params []*ParamSl `json:"params"` Params []*ParamSl `json:"params,optional"`
Envs []*EnvSl `json:"envs"` Envs []*EnvSl `json:"envs,optional"`
ResourceId string `json:"resourceId"` ResourceId string `json:"resourceId,optional"`
} }
EnvSl { EnvSl {

View File

@ -3,6 +3,7 @@ package storeLink
import ( import (
"context" "context"
"errors" "errors"
"fmt"
"gitlink.org.cn/jcce-pcm/pcm-ac/hpcAC" "gitlink.org.cn/jcce-pcm/pcm-ac/hpcAC"
"gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/svc" "gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/svc"
"gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/types" "gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/types"
@ -40,9 +41,16 @@ const (
GAP_PPN = "" GAP_PPN = ""
GAP_NGPU = "" GAP_NGPU = ""
GAP_MULTI_SUB = "" GAP_MULTI_SUB = ""
StrJobInfoMap = "%d,%s:%s:"
Username = "acgnnmfbwo"
) )
var RESOURCEMAP = map[string]ResourceSpec{ var RESOURCEMAP = map[string]ResourceSpec{
"FPOqD5Cx8iNYqawEgDrAxLdrszp4Tmhl": {
GAP_NNODE: "1",
GAP_NPROC: "1",
GAP_NDCU: "1",
},
"Nd99eGNoBFC2ZTycKDlqD37heWTOmrMS": { "Nd99eGNoBFC2ZTycKDlqD37heWTOmrMS": {
GAP_NNODE: "1", GAP_NNODE: "1",
GAP_NPROC: "2", GAP_NPROC: "2",
@ -91,6 +99,7 @@ var RESOURCEMAP = map[string]ResourceSpec{
} }
var RESOURCESPECS = map[string]string{ var RESOURCESPECS = map[string]string{
"FPOqD5Cx8iNYqawEgDrAxLdrszp4Tmhl": "1*NODE, CPU:1, 1*DCU",
"Nd99eGNoBFC2ZTycKDlqD37heWTOmrMS": "1*NODE, CPU:2, 1*DCU", "Nd99eGNoBFC2ZTycKDlqD37heWTOmrMS": "1*NODE, CPU:2, 1*DCU",
"uAmLkz6jgSZkC6o8JywG7Yo2aiFPPOBO": "1*NODE, CPU:4, 2*DCU", "uAmLkz6jgSZkC6o8JywG7Yo2aiFPPOBO": "1*NODE, CPU:4, 2*DCU",
"D71OZQYrRabJc2nfL2GDWOdLEfbiMzYH": "1*NODE, CPU:8, 4*DCU", "D71OZQYrRabJc2nfL2GDWOdLEfbiMzYH": "1*NODE, CPU:8, 4*DCU",
@ -183,7 +192,7 @@ func (s ShuguangHpc) SubmitTask(imageId string, cmd string, envs []string, param
}, },
} }
updateRequestByResouceId(resourceId, req) updateRequestByResourceId(resourceId, req)
resp, err := s.svcCtx.ACRpc.SubmitJob(s.ctx, req) resp, err := s.svcCtx.ACRpc.SubmitJob(s.ctx, req)
if err != nil { if err != nil {
@ -210,14 +219,12 @@ func (s ShuguangHpc) QueryTask(taskId string) (interface{}, error) {
return nil, err return nil, err
} }
taskRespC, err := ConvertType[hpcAC.GetJobDetailResp](respC, nil)
if err != nil {
return nil, err
}
//实时作业检查是否成功 //实时作业检查是否成功
taskResp := taskRespC.(types.GetLinkTaskResp) if respC.Data != nil {
if taskResp.Task != nil { taskRespC, err := ConvertType[hpcAC.GetJobDetailResp](respC, nil)
if err != nil {
return nil, err
}
return taskRespC, nil return taskRespC, nil
} }
@ -256,13 +263,25 @@ func (s ShuguangHpc) QuerySpecs() (interface{}, error) {
} }
func (s ShuguangHpc) DeleteTask(taskId string) (interface{}, error) { func (s ShuguangHpc) DeleteTask(taskId string) (interface{}, error) {
//req := hpcAC.DeleteJobReq{} strJobInfoMap := fmt.Sprintf(StrJobInfoMap, StrJobManagerID, Username, taskId)
req := &hpcAC.DeleteJobReq{
StrJobInfoMap: strJobInfoMap,
}
resp, err := s.svcCtx.ACRpc.DeleteJob(s.ctx, req)
if err != nil {
return nil, err
}
//TODO implement me //转换成统一返回类型
panic("implement me") taskResp, err := ConvertType[hpcAC.DeleteJobResp](resp, nil)
if err != nil {
return nil, err
}
return taskResp, nil
} }
func updateRequestByResouceId(resourceId string, req *hpcAC.SubmitJobReq) { func updateRequestByResourceId(resourceId string, req *hpcAC.SubmitJobReq) {
spec := RESOURCEMAP[resourceId] spec := RESOURCEMAP[resourceId]
req.MapAppJobInfo.GAP_NNODE = spec.GAP_NNODE req.MapAppJobInfo.GAP_NNODE = spec.GAP_NNODE
req.MapAppJobInfo.GAP_NPROC = spec.GAP_NPROC req.MapAppJobInfo.GAP_NPROC = spec.GAP_NPROC

View File

@ -38,17 +38,19 @@ type Linkage interface {
} }
const ( const (
PY_PARAM_PREFIX = "--" PY_PARAM_PREFIX = "--"
SPACE = " " SPACE = " "
UNDERSCORE = "_" UNDERSCORE = "_"
EQUAL = "=" EQUAL = "="
COMMA = "," COMMA = ","
TYPE_OCTOPUS = "1" TYPE_OCTOPUS = "1"
TYPE_MODELARTS = "2" TYPE_MODELARTS = "2"
TYPE_SHUGUANGAI = "3" TYPE_SHUGUANGAI = "3"
OCTOPUS = "Octopus" TYPE_SHUGUANGHPC = "4"
MODELARTS = "Modelarts" OCTOPUS = "Octopus"
SHUGUANGAI = "ShuguangAi" MODELARTS = "Modelarts"
SHUGUANGAI = "ShuguangAi"
SHUGUANGHPC = "ShuguangHpc"
) )
var ( var (
@ -61,6 +63,7 @@ var (
"1": OCTOPUS, "1": OCTOPUS,
"2": MODELARTS, "2": MODELARTS,
"3": SHUGUANGAI, "3": SHUGUANGAI,
"4": SHUGUANGHPC,
} }
) )
@ -79,6 +82,9 @@ func NewStoreLink(ctx context.Context, svcCtx *svc.ServiceContext, participant *
case TYPE_SHUGUANGAI: case TYPE_SHUGUANGAI:
linkStruct := NewShuguangAi(ctx, svcCtx, participant) linkStruct := NewShuguangAi(ctx, svcCtx, participant)
return &StoreLink{ILinkage: linkStruct} return &StoreLink{ILinkage: linkStruct}
case TYPE_SHUGUANGHPC:
linkStruct := NewShuguangHpc(ctx, svcCtx, participant)
return &StoreLink{ILinkage: linkStruct}
default: default:
return nil return nil
} }
@ -350,6 +356,16 @@ func ConvertType[T any](in *T, participant *models.StorelinkCenter) (interface{}
resp.ErrorMsg = inresp.Msg resp.ErrorMsg = inresp.Msg
} }
return resp, nil return resp, nil
case *hpcAC.DeleteJobResp:
var resp types.DeleteLinkTaskResp
inresp := (interface{})(in).(*hpcAC.DeleteJobResp)
if inresp.Code == "0" {
resp.Success = true
} else {
resp.Success = false
resp.ErrorMsg = inresp.Msg
}
return resp, nil
case *octopus.GetResourceSpecsResp: case *octopus.GetResourceSpecsResp:
var resp types.GetResourceSpecsResp var resp types.GetResourceSpecsResp
inresp := (interface{})(in).(*octopus.GetResourceSpecsResp) inresp := (interface{})(in).(*octopus.GetResourceSpecsResp)