JCC-CSScheduler/executor/internal/services/pcm.go

49 lines
1.6 KiB
Go

package services
import (
"gitlink.org.cn/cloudream/common/consts/errorcode"
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/common/pkgs/mq"
pcmsdk "gitlink.org.cn/cloudream/common/sdks/pcm"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
execmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor"
)
func (svc *Service) DeleteImage(msg *execmq.DeleteImage) (*execmq.DeleteImageResp, *mq.CodeMessage) {
pcmCli, err := schglb.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 schglb.PCMPool.Release(pcmCli)
err = pcmCli.DeleteImage(pcmsdk.DeleteImageReq{
PartID: msg.PCMParticipantID,
ImageID: msg.PCMImageID,
})
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())
}
func (svc *Service) DeleteTask(msg *execmq.DeleteTask) (*execmq.DeleteTaskResp, *mq.CodeMessage) {
pcmCli, err := schglb.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 schglb.PCMPool.Release(pcmCli)
err = pcmCli.DeleteTask(pcmsdk.DeleteTaskReq{
PartID: msg.PCMParticipantID,
TaskID: msg.PCMTaskID,
})
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())
}