68 lines
2.2 KiB
Go
68 lines
2.2 KiB
Go
package services
|
|
|
|
import (
|
|
"gitlink.org.cn/cloudream/common/api/pcm"
|
|
"gitlink.org.cn/cloudream/common/consts/errorcode"
|
|
"gitlink.org.cn/cloudream/common/pkgs/logger"
|
|
"gitlink.org.cn/cloudream/common/pkgs/mq"
|
|
"gitlink.org.cn/cloudream/scheduler/common/globals"
|
|
execmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor"
|
|
)
|
|
|
|
func (svc *Service) GetImageList(msg *execmq.GetImageList) (*execmq.GetImageListResp, *mq.CodeMessage) {
|
|
pcmCli, err := globals.PCMPool.Acquire()
|
|
if err != nil {
|
|
logger.Warnf("new pcm client, err: %s", err.Error())
|
|
return nil, mq.Failed(errorcode.OperationFailed, "new pcm client failed")
|
|
}
|
|
defer pcmCli.Close()
|
|
|
|
resp, err := pcmCli.GetImageList(pcm.GetImageListReq{
|
|
SlwNodeID: msg.SlwNodeID,
|
|
})
|
|
if err != nil {
|
|
logger.Warnf("get image list failed, err: %s", err.Error())
|
|
return nil, mq.Failed(errorcode.OperationFailed, "get image list failed")
|
|
}
|
|
|
|
return mq.ReplyOK(execmq.NewGetImageListResp(resp.ImageIDs))
|
|
}
|
|
|
|
func (svc *Service) DeleteImage(msg *execmq.DeleteImage) (*execmq.DeleteImageResp, *mq.CodeMessage) {
|
|
pcmCli, err := globals.PCMPool.Acquire()
|
|
if err != nil {
|
|
logger.Warnf("new pcm client, err: %s", err.Error())
|
|
return nil, mq.Failed(errorcode.OperationFailed, "new pcm client failed")
|
|
}
|
|
defer pcmCli.Close()
|
|
|
|
resp, err := pcmCli.DeleteImage(pcm.DeleteImageReq{
|
|
SlwNodeID: msg.SlwNodeID,
|
|
PCMJobID: msg.PCMJobID,
|
|
})
|
|
if err != nil {
|
|
logger.Warnf("delete image failed, err: %s", err.Error())
|
|
return nil, mq.Failed(errorcode.OperationFailed, "delete image failed")
|
|
}
|
|
return mq.ReplyOK(execmq.NewDeleteImageResp(resp.Result))
|
|
}
|
|
|
|
func (svc *Service) DeleteTask(msg *execmq.DeleteTask) (*execmq.DeleteTaskResp, *mq.CodeMessage) {
|
|
pcmCli, err := globals.PCMPool.Acquire()
|
|
if err != nil {
|
|
logger.Warnf("new pcm client, err: %s", err.Error())
|
|
return nil, mq.Failed(errorcode.OperationFailed, "new pcm client failed")
|
|
}
|
|
defer pcmCli.Close()
|
|
|
|
resp, err := pcmCli.DeleteTask(pcm.DeleteTaskReq{
|
|
SlwNodeID: msg.SlwNodeID,
|
|
PCMJobID: msg.PCMJobID,
|
|
})
|
|
if err != nil {
|
|
logger.Warnf("delete task failed, err: %s", err.Error())
|
|
return nil, mq.Failed(errorcode.OperationFailed, "delete task failed")
|
|
}
|
|
return mq.ReplyOK(execmq.NewDeleteTaskResp(resp.Result))
|
|
}
|