added createDeployTask logics

Former-commit-id: 52bab362ac9b2167969b1e6a70922ce26836dbd4
This commit is contained in:
tzwang 2024-08-29 10:54:33 +08:00
parent d0dbb2fe99
commit 7aad9ecd4d
6 changed files with 157 additions and 0 deletions

View File

@ -0,0 +1,28 @@
package inference
import (
"net/http"
"github.com/zeromicro/go-zero/rest/httpx"
"gitlink.org.cn/JointCloud/pcm-coordinator/internal/logic/inference"
"gitlink.org.cn/JointCloud/pcm-coordinator/internal/svc"
"gitlink.org.cn/JointCloud/pcm-coordinator/internal/types"
)
func CreateDeployTaskHandler(svcCtx *svc.ServiceContext) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
var req types.CreateDeployTaskReq
if err := httpx.Parse(r, &req); err != nil {
httpx.ErrorCtx(r.Context(), w, err)
return
}
l := inference.NewCreateDeployTaskLogic(r.Context(), svcCtx)
resp, err := l.CreateDeployTask(&req)
if err != nil {
httpx.ErrorCtx(r.Context(), w, err)
} else {
httpx.OkJsonCtx(r.Context(), w, resp)
}
}
}

View File

@ -0,0 +1,28 @@
package inference
import (
"net/http"
"github.com/zeromicro/go-zero/rest/httpx"
"gitlink.org.cn/JointCloud/pcm-coordinator/internal/logic/inference"
"gitlink.org.cn/JointCloud/pcm-coordinator/internal/svc"
"gitlink.org.cn/JointCloud/pcm-coordinator/internal/types"
)
func GetAdaptersByModelHandler(svcCtx *svc.ServiceContext) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
var req types.GetAdaptersByModelReq
if err := httpx.Parse(r, &req); err != nil {
httpx.ErrorCtx(r.Context(), w, err)
return
}
l := inference.NewGetAdaptersByModelLogic(r.Context(), svcCtx)
resp, err := l.GetAdaptersByModel(&req)
if err != nil {
httpx.ErrorCtx(r.Context(), w, err)
} else {
httpx.OkJsonCtx(r.Context(), w, resp)
}
}
}

View File

@ -1233,6 +1233,16 @@ func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) {
Path: "/inference/getDeployTasksByType",
Handler: inference.GetDeployTasksByTypeHandler(serverCtx),
},
{
Method: http.MethodGet,
Path: "/inference/createDeployTask",
Handler: inference.CreateDeployTaskHandler(serverCtx),
},
{
Method: http.MethodGet,
Path: "/inference/getAdaptersByModel",
Handler: inference.GetAdaptersByModelHandler(serverCtx),
},
},
rest.WithPrefix("/pcm/v1"),
)

View File

@ -0,0 +1,30 @@
package inference
import (
"context"
"gitlink.org.cn/JointCloud/pcm-coordinator/internal/svc"
"gitlink.org.cn/JointCloud/pcm-coordinator/internal/types"
"github.com/zeromicro/go-zero/core/logx"
)
type CreateDeployTaskLogic struct {
logx.Logger
ctx context.Context
svcCtx *svc.ServiceContext
}
func NewCreateDeployTaskLogic(ctx context.Context, svcCtx *svc.ServiceContext) *CreateDeployTaskLogic {
return &CreateDeployTaskLogic{
Logger: logx.WithContext(ctx),
ctx: ctx,
svcCtx: svcCtx,
}
}
func (l *CreateDeployTaskLogic) CreateDeployTask(req *types.CreateDeployTaskReq) (resp *types.CreateDeployTaskResp, err error) {
// todo: add your logic here and delete this line
return
}

View File

@ -0,0 +1,30 @@
package inference
import (
"context"
"gitlink.org.cn/JointCloud/pcm-coordinator/internal/svc"
"gitlink.org.cn/JointCloud/pcm-coordinator/internal/types"
"github.com/zeromicro/go-zero/core/logx"
)
type GetAdaptersByModelLogic struct {
logx.Logger
ctx context.Context
svcCtx *svc.ServiceContext
}
func NewGetAdaptersByModelLogic(ctx context.Context, svcCtx *svc.ServiceContext) *GetAdaptersByModelLogic {
return &GetAdaptersByModelLogic{
Logger: logx.WithContext(ctx),
ctx: ctx,
svcCtx: svcCtx,
}
}
func (l *GetAdaptersByModelLogic) GetAdaptersByModel(req *types.GetAdaptersByModelReq) (resp *types.GetAdaptersByModelResp, err error) {
// todo: add your logic here and delete this line
return
}

View File

@ -6073,3 +6073,34 @@ type GetDeployTasksByTypeReq struct {
type GetDeployTasksByTypeResp struct {
List interface{} `json:"list"`
}
type CreateDeployTaskReq struct {
TaskName string `form:"taskName"`
TaskDesc string `form:"taskDesc"`
ModelName string `form:"modelName"`
ModelType string `form:"modelType"`
AdapterClusterMap map[string]string `form:"adapterClusterMap"`
}
type CreateDeployTaskResp struct {
}
type GetAdaptersByModelReq struct {
ModelName string `form:"modelName"`
ModelType string `form:"modelType"`
}
type GetAdaptersByModelResp struct {
Adapters []AdapterAvail `json:"adapters"`
}
type AdapterAvail struct {
AdapterId string `json:"adapterId"`
AdapterName string `json:"taskName"`
Clusters []ClusterAvail `json:"clusters"`
}
type ClusterAvail struct {
ClusterId string `json:"clusterId"`
ClusterName string `json:"clusterName"`
}