调整代码结构

This commit is contained in:
Sydonian 2023-09-21 10:44:26 +08:00
parent 36e4c8993d
commit d96a897f8e
54 changed files with 328 additions and 324 deletions

View File

@ -6,7 +6,7 @@ import (
"time"
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/scheduler/common/globals"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
schmod "gitlink.org.cn/cloudream/scheduler/common/models"
advtsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/advisor/task"
mgrmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/manager"
@ -44,7 +44,7 @@ func (r *Reporter) ReportNow() {
}
func (r *Reporter) Serve() error {
magCli, err := globals.ManagerMQPool.Acquire()
magCli, err := schglb.ManagerMQPool.Acquire()
if err != nil {
return fmt.Errorf("new manager client: %w", err)
}

View File

@ -5,8 +5,9 @@ import (
"sort"
"github.com/inhies/go-bytesize"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/scheduler/common/globals"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
jobmod "gitlink.org.cn/cloudream/scheduler/common/models/job"
"gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/collector"
"gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/manager"
@ -38,7 +39,7 @@ type DefaultSchedule struct {
}
type CandidateSlwNodeInfo struct {
slwNodeID models.SlwNodeID
slwNodeID uopsdk.SlwNodeID
resourceLevel int
resourceScore float64
nodeScore float64
@ -76,7 +77,7 @@ func (a ByResourceLevel) Less(i, j int) bool {
func (s *DefaultSchedule) Schedule(info jobmod.NormalJob) (*jobmod.JobScheduleScheme, error) {
JobQueue := make(chan jobmod.NormalJob, 100)
colCli, err := globals.CollectorMQPool.Acquire()
colCli, err := schglb.CollectorMQPool.Acquire()
if err != nil {
return nil, fmt.Errorf("new collector client: %w", err)
}
@ -169,8 +170,8 @@ type ResourceInfo struct {
}
// 划分节点资源等级,并计算资源得分
func (s *DefaultSchedule) computeResourceScore(resources models.JobResourcesInfo, slwNodeID models.SlwNodeID) (int, float64, error) {
colCli, err := globals.CollectorMQPool.Acquire()
func (s *DefaultSchedule) computeResourceScore(resources schsdk.JobResourcesInfo, slwNodeID uopsdk.SlwNodeID) (int, float64, error) {
colCli, err := schglb.CollectorMQPool.Acquire()
if err != nil {
return 0, 0, fmt.Errorf("new collector client: %w", err)
}
@ -185,52 +186,52 @@ func (s *DefaultSchedule) computeResourceScore(resources models.JobResourcesInfo
for _, r := range res.Datas {
switch r.(type) {
case *models.CPUResourceData:
availCPU := r.(*models.CPUResourceData).Available
case *uopsdk.CPUResourceData:
availCPU := r.(*uopsdk.CPUResourceData).Available
if resources.CPU > 0 {
resourceLevels = append(resourceLevels, ResourceInfo{
Type: models.ResourceTypeCPU,
Type: uopsdk.ResourceTypeCPU,
Level: s.computeSingleLevel(float64(availCPU.Value), resources.CPU),
Score: (float64(availCPU.Value) / resources.CPU) * CpuResourceWeight,
})
}
case *models.NPUResourceData:
availNPU := r.(*models.NPUResourceData).Available
case *uopsdk.NPUResourceData:
availNPU := r.(*uopsdk.NPUResourceData).Available
if resources.NPU > 0 {
resourceLevels = append(resourceLevels, ResourceInfo{
Type: models.ResourceTypeNPU,
Type: uopsdk.ResourceTypeNPU,
Level: s.computeSingleLevel(float64(availNPU.Value), resources.NPU),
Score: (float64(availNPU.Value) / resources.NPU) * CpuResourceWeight,
})
}
case *models.GPUResourceData:
availGPU := r.(*models.GPUResourceData).Available
case *uopsdk.GPUResourceData:
availGPU := r.(*uopsdk.GPUResourceData).Available
if resources.GPU > 0 {
resourceLevels = append(resourceLevels, ResourceInfo{
Type: models.ResourceTypeGPU,
Type: uopsdk.ResourceTypeGPU,
Level: s.computeSingleLevel(float64(availGPU.Value), resources.GPU),
Score: (float64(availGPU.Value) / resources.GPU) * CpuResourceWeight,
})
}
case *models.MLUResourceData:
availMLU := r.(*models.MLUResourceData).Available
case *uopsdk.MLUResourceData:
availMLU := r.(*uopsdk.MLUResourceData).Available
if resources.MLU > 0 {
resourceLevels = append(resourceLevels, ResourceInfo{
Type: models.ResourceTypeMLU,
Type: uopsdk.ResourceTypeMLU,
Level: s.computeSingleLevel(float64(availMLU.Value), resources.MLU),
Score: (float64(availMLU.Value) / resources.MLU) * CpuResourceWeight,
})
}
case *models.StorageResourceData:
availStorage := r.(*models.StorageResourceData).Available
case *uopsdk.StorageResourceData:
availStorage := r.(*uopsdk.StorageResourceData).Available
if resources.Storage > 0 {
bytesStorage, err := bytesize.Parse(fmt.Sprintf("%f%s", availStorage.Value, availStorage.Unit))
@ -238,14 +239,14 @@ func (s *DefaultSchedule) computeResourceScore(resources models.JobResourcesInfo
return 0, 0, err
}
resourceLevels = append(resourceLevels, ResourceInfo{
Type: models.ResourceTypeStorage,
Type: uopsdk.ResourceTypeStorage,
Level: s.computeSingleLevel(float64(bytesStorage), float64(resources.Storage)),
Score: (float64(bytesStorage) / float64(resources.Storage)) * StgResourceWeight,
})
}
case *models.MemoryResourceData:
availMemory := r.(*models.MemoryResourceData).Available
case *uopsdk.MemoryResourceData:
availMemory := r.(*uopsdk.MemoryResourceData).Available
if resources.Memory > 0 {
bytesMemory, err := bytesize.Parse(fmt.Sprintf("%f%s", availMemory.Value, availMemory.Unit))
@ -253,7 +254,7 @@ func (s *DefaultSchedule) computeResourceScore(resources models.JobResourcesInfo
return 0, 0, err
}
resourceLevels = append(resourceLevels, ResourceInfo{
Type: models.ResourceTypeMemory,
Type: uopsdk.ResourceTypeMemory,
Level: s.computeSingleLevel(float64(bytesMemory), float64(resources.Memory)),
Score: (float64(bytesMemory) / float64(resources.Memory)) * StgResourceWeight,
})
@ -306,14 +307,14 @@ type stgScore struct {
}
// 计算节点得分情况
func (s *DefaultSchedule) ComputeAllSlwNodeScore(files jobmod.JobFiles) (map[models.SlwNodeID]SlwNodeScore, error) {
func (s *DefaultSchedule) ComputeAllSlwNodeScore(files jobmod.JobFiles) (map[uopsdk.SlwNodeID]SlwNodeScore, error) {
colCli, err := globals.CollectorMQPool.Acquire()
if err != nil {
return nil, fmt.Errorf("new collector client: %w", err)
}
defer colCli.Close()
slwNodeScores := make(map[models.SlwNodeID]SlwNodeScore)
slwNodeScores := make(map[uopsdk.SlwNodeID]SlwNodeScore)
//计算code相关得分
codeStgScores, err := s.computeAllStgScore(files.Code.PackageID)

View File

@ -4,11 +4,11 @@ import (
"fmt"
"time"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/common/pkgs/task"
uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
"gitlink.org.cn/cloudream/scheduler/advisor/internal/scheduler"
"gitlink.org.cn/cloudream/scheduler/common/globals"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
jobmod "gitlink.org.cn/cloudream/scheduler/common/models/job"
advtsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/advisor/task"
"gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/collector"
@ -92,7 +92,7 @@ func (t *MakeScheduleScheme) do(taskID string, ctx TaskContext) (jobmod.JobSched
// 检查预调度节点资源是否足够
func (t *MakeScheduleScheme) CheckResourceAvailability() (bool, error) {
colCli, err := globals.CollectorMQPool.Acquire()
colCli, err := schglb.CollectorMQPool.Acquire()
if err != nil {
return false, fmt.Errorf("new collector client: %w", err)
}
@ -102,13 +102,13 @@ func (t *MakeScheduleScheme) CheckResourceAvailability() (bool, error) {
if neededCPU > 0 {
resp, err := colCli.GetOneResourceData(collector.NewGetOneResourceData(
t.Job.TargetSlwNodeID,
models.ResourceTypeCPU,
uopsdk.ResourceTypeCPU,
))
if err != nil {
return false, err
}
availCPU := resp.Data.(*models.CPUResourceData).Available
availCPU := resp.Data.(*uopsdk.CPUResourceData).Available
if float64(availCPU.Value) < 1.5*neededCPU {
logger.WithField("JobID", t.Job.JobID).
@ -121,13 +121,13 @@ func (t *MakeScheduleScheme) CheckResourceAvailability() (bool, error) {
if neededNPU > 0 {
resp, err := colCli.GetOneResourceData(collector.NewGetOneResourceData(
t.Job.TargetSlwNodeID,
models.ResourceTypeNPU,
uopsdk.ResourceTypeNPU,
))
if err != nil {
return false, err
}
availNPU := resp.Data.(*models.NPUResourceData).Available
availNPU := resp.Data.(*uopsdk.NPUResourceData).Available
if float64(availNPU.Value) < 1.5*neededNPU {
logger.WithField("JobID", t.Job.JobID).
@ -140,13 +140,13 @@ func (t *MakeScheduleScheme) CheckResourceAvailability() (bool, error) {
if neededGPU > 0 {
resp, err := colCli.GetOneResourceData(collector.NewGetOneResourceData(
t.Job.TargetSlwNodeID,
models.ResourceTypeGPU,
uopsdk.ResourceTypeGPU,
))
if err != nil {
return false, err
}
availGPU := resp.Data.(*models.GPUResourceData).Available
availGPU := resp.Data.(*uopsdk.GPUResourceData).Available
if float64(availGPU.Value) < 1.5*neededGPU {
logger.WithField("JobID", t.Job.JobID).
@ -159,13 +159,13 @@ func (t *MakeScheduleScheme) CheckResourceAvailability() (bool, error) {
if neededMLU > 0 {
resp, err := colCli.GetOneResourceData(collector.NewGetOneResourceData(
t.Job.TargetSlwNodeID,
models.ResourceTypeMLU,
uopsdk.ResourceTypeMLU,
))
if err != nil {
return false, err
}
availMLU := resp.Data.(*models.MLUResourceData).Available
availMLU := resp.Data.(*uopsdk.MLUResourceData).Available
if float64(availMLU.Value) < 1.5*neededMLU {
logger.WithField("JobID", t.Job.JobID).
@ -178,13 +178,13 @@ func (t *MakeScheduleScheme) CheckResourceAvailability() (bool, error) {
if neededStorage > 0 {
resp, err := colCli.GetOneResourceData(collector.NewGetOneResourceData(
t.Job.TargetSlwNodeID,
models.ResourceTypeStorage,
uopsdk.ResourceTypeStorage,
))
if err != nil {
return false, err
}
availStorage := resp.Data.(*models.StorageResourceData).Available
availStorage := resp.Data.(*uopsdk.StorageResourceData).Available
bytesStorage, err := bytesize.Parse(fmt.Sprintf("%f%s", availStorage.Value, availStorage.Unit))
if err != nil {
@ -202,13 +202,13 @@ func (t *MakeScheduleScheme) CheckResourceAvailability() (bool, error) {
if neededMemory > 0 {
resp, err := colCli.GetOneResourceData(collector.NewGetOneResourceData(
t.Job.TargetSlwNodeID,
models.ResourceTypeMemory,
uopsdk.ResourceTypeMemory,
))
if err != nil {
return false, err
}
availMemory := resp.Data.(*models.MemoryResourceData).Available
availMemory := resp.Data.(*uopsdk.MemoryResourceData).Available
bytesMemory, err := bytesize.Parse(fmt.Sprintf("%f%s", availMemory.Value, availMemory.Unit))
if err != nil {

View File

@ -6,8 +6,8 @@ import (
"github.com/gin-gonic/gin"
"gitlink.org.cn/cloudream/common/consts/errorcode"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/logger"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
)
type JobSetService struct {
@ -21,8 +21,8 @@ func (s *Server) JobSetSvc() *JobSetService {
}
type JobSetSubmitResp struct {
JobSetID models.JobSetID `json:"jobSetID"`
FilesUploadScheme models.JobSetFilesUploadScheme `json:"filesUploadScheme"`
JobSetID schsdk.JobSetID `json:"jobSetID"`
FilesUploadScheme schsdk.JobSetFilesUploadScheme `json:"filesUploadScheme"`
}
func (s *JobSetService) Submit(ctx *gin.Context) {
@ -35,7 +35,7 @@ func (s *JobSetService) Submit(ctx *gin.Context) {
return
}
jobSetInfo, err := models.JobSetInfoFromJSON(bodyData)
jobSetInfo, err := schsdk.JobSetInfoFromJSON(bodyData)
if err != nil {
log.Warnf("parsing request body: %s", err.Error())
ctx.JSON(http.StatusOK, Failed(errorcode.OperationFailed, "parse request body failed"))
@ -56,7 +56,7 @@ func (s *JobSetService) Submit(ctx *gin.Context) {
}
type JobSetLocalFileUploadedReq struct {
JobSetID models.JobSetID `json:"jobSetID" binding:"required"`
JobSetID schsdk.JobSetID `json:"jobSetID" binding:"required"`
LocalPath string `json:"localPath" binding:"required"`
Error string `json:"error"`
PackageID int64 `json:"packageID"`

View File

@ -1,12 +1,12 @@
package prescheduler
import (
"gitlink.org.cn/cloudream/common/models"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
jobmod "gitlink.org.cn/cloudream/scheduler/common/models/job"
)
type PreScheduler interface {
Schedule(info models.JobSetInfo) (*jobmod.JobSetPreScheduleScheme, *models.JobSetFilesUploadScheme, error)
Schedule(info schsdk.JobSetInfo) (*jobmod.JobSetPreScheduleScheme, *schsdk.JobSetFilesUploadScheme, error)
}
type DefaultPreScheduler struct {
@ -16,6 +16,6 @@ func NewDefaultPreScheduler() *DefaultPreScheduler {
return &DefaultPreScheduler{}
}
func (s *DefaultPreScheduler) Schedule(info models.JobSetInfo) (*jobmod.JobSetPreScheduleScheme, *models.JobSetFilesUploadScheme, error) {
func (s *DefaultPreScheduler) Schedule(info schsdk.JobSetInfo) (*jobmod.JobSetPreScheduleScheme, *schsdk.JobSetFilesUploadScheme, error) {
}

View File

@ -3,8 +3,8 @@ package services
import (
"fmt"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/scheduler/common/globals"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
mgrmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/manager"
)
@ -17,8 +17,8 @@ func (svc *Service) JobSetSvc() *JobSetService {
}
// 提交任务集
func (svc *JobSetService) Submit(info models.JobSetInfo) (models.JobSetID, *models.JobSetFilesUploadScheme, error) {
mgrCli, err := globals.ManagerMQPool.Acquire()
func (svc *JobSetService) Submit(info schsdk.JobSetInfo) (schsdk.JobSetID, *schsdk.JobSetFilesUploadScheme, error) {
mgrCli, err := schglb.ManagerMQPool.Acquire()
if err != nil {
return "", nil, fmt.Errorf("new manager client: %w", err)
}
@ -38,8 +38,8 @@ func (svc *JobSetService) Submit(info models.JobSetInfo) (models.JobSetID, *mode
}
// 任务集中某个文件上传完成
func (svc *JobSetService) LocalFileUploaded(jobSetID models.JobSetID, localPath string, errMsg string, packageID int64) error {
mgrCli, err := globals.ManagerMQPool.Acquire()
func (svc *JobSetService) LocalFileUploaded(jobSetID schsdk.JobSetID, localPath string, errMsg string, packageID int64) error {
mgrCli, err := schglb.ManagerMQPool.Acquire()
if err != nil {
return fmt.Errorf("new manager client: %w", err)
}

View File

@ -11,7 +11,7 @@ import (
"gitlink.org.cn/cloudream/scheduler/client/internal/config"
"gitlink.org.cn/cloudream/scheduler/client/internal/prescheduler"
"gitlink.org.cn/cloudream/scheduler/client/internal/services"
"gitlink.org.cn/cloudream/scheduler/common/globals"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
)
func main() {
@ -27,7 +27,7 @@ func main() {
os.Exit(1)
}
globals.InitMQPool(&config.Cfg().RabbitMQ)
schglb.InitMQPool(&config.Cfg().RabbitMQ)
preSchr := prescheduler.NewDefaultPreScheduler()

View File

@ -1,10 +1,9 @@
package config
import (
cldstg "gitlink.org.cn/cloudream/common/api/storage"
uniops "gitlink.org.cn/cloudream/common/api/unifyops"
"gitlink.org.cn/cloudream/common/models"
log "gitlink.org.cn/cloudream/common/pkgs/logger"
stgsdk "gitlink.org.cn/cloudream/common/sdks/storage"
uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
c "gitlink.org.cn/cloudream/common/utils/config"
mymq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq"
)
@ -12,8 +11,8 @@ import (
type Config struct {
Logger log.Config `json:"logger"`
RabbitMQ mymq.Config `json:"rabbitMQ"`
CloudreamStorage cldstg.Config `json:"cloudreamStorage"`
UnifyOps uniops.Config `json:"unifyOps"`
CloudreamStorage stgsdk.Config `json:"cloudreamStorage"`
UnifyOps uopsdk.Config `json:"unifyOps"`
SlwNodes []SlwNodeConfig `json:"slwNodes"`
// PCM cldstg.Config `json:"pcm"`
}
@ -29,7 +28,7 @@ func Cfg() *Config {
}
type SlwNodeConfig struct {
SlwNodeID models.SlwNodeID `json:"slwNodeID"`
SlwNodeID uopsdk.SlwNodeID `json:"slwNodeID"`
StgNodeID int64 `json:"stgNodeID"`
StorageID int64 `json:"StorageID"`
}

View File

@ -1,23 +1,23 @@
package mq
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"
pcmsdk "gitlink.org.cn/cloudream/common/sdks/pcm"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
colmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/collector"
)
func (svc *Service) GetImageList(msg *colmq.GetImageList) (*colmq.GetImageListResp, *mq.CodeMessage) {
pcmCli, err := globals.PCMPool.Acquire()
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 pcmCli.Close()
resp, err := pcmCli.GetImageList(pcm.GetImageListReq{
resp, err := pcmCli.GetImageList(pcmsdk.GetImageListReq{
SlwNodeID: msg.SlwNodeID,
})
if err != nil {

View File

@ -1,47 +1,46 @@
package mq
import (
"gitlink.org.cn/cloudream/common/api/unifyops"
"gitlink.org.cn/cloudream/common/consts/errorcode"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/common/pkgs/mq"
"gitlink.org.cn/cloudream/scheduler/common/globals"
uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
colmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/collector"
)
func (svc *Service) GetOneResourceData(msg *colmq.GetOneResourceData) (*colmq.GetOneResourceDataResp, *mq.CodeMessage) {
uniOpsCli, err := globals.UnifyOpsPool.Acquire()
uniOpsCli, err := schglb.UnifyOpsPool.Acquire()
if err != nil {
logger.Warnf("new unifyOps client, err: %s", err.Error())
return nil, mq.Failed(errorcode.OperationFailed, "new unifyOps client failed")
}
defer uniOpsCli.Close()
var resp models.ResourceData
var resp uopsdk.ResourceData
switch msg.ResourceType {
case models.ResourceTypeCPU:
resp, err = uniOpsCli.GetCPUData(unifyops.GetOneResourceDataReq{
case uopsdk.ResourceTypeCPU:
resp, err = uniOpsCli.GetCPUData(uopsdk.GetOneResourceDataReq{
SlwNodeID: msg.SlwNodeID,
})
case models.ResourceTypeNPU:
resp, err = uniOpsCli.GetNPUData(unifyops.GetOneResourceDataReq{
case uopsdk.ResourceTypeNPU:
resp, err = uniOpsCli.GetNPUData(uopsdk.GetOneResourceDataReq{
SlwNodeID: msg.SlwNodeID,
})
case models.ResourceTypeGPU:
resp, err = uniOpsCli.GetGPUData(unifyops.GetOneResourceDataReq{
case uopsdk.ResourceTypeGPU:
resp, err = uniOpsCli.GetGPUData(uopsdk.GetOneResourceDataReq{
SlwNodeID: msg.SlwNodeID,
})
case models.ResourceTypeMLU:
resp, err = uniOpsCli.GetMLUData(unifyops.GetOneResourceDataReq{
case uopsdk.ResourceTypeMLU:
resp, err = uniOpsCli.GetMLUData(uopsdk.GetOneResourceDataReq{
SlwNodeID: msg.SlwNodeID,
})
case models.ResourceTypeStorage:
resp, err = uniOpsCli.GetStorageData(unifyops.GetOneResourceDataReq{
case uopsdk.ResourceTypeStorage:
resp, err = uniOpsCli.GetStorageData(uopsdk.GetOneResourceDataReq{
SlwNodeID: msg.SlwNodeID,
})
case models.ResourceTypeMemory:
resp, err = uniOpsCli.GetMemoryData(unifyops.GetOneResourceDataReq{
case uopsdk.ResourceTypeMemory:
resp, err = uniOpsCli.GetMemoryData(uopsdk.GetOneResourceDataReq{
SlwNodeID: msg.SlwNodeID,
})
default:
@ -57,14 +56,14 @@ func (svc *Service) GetOneResourceData(msg *colmq.GetOneResourceData) (*colmq.Ge
}
func (svc *Service) GetAllResourceData(msg *colmq.GetAllResourceData) (*colmq.GetAllResourceDataResp, *mq.CodeMessage) {
uniOpsCli, err := globals.UnifyOpsPool.Acquire()
uniOpsCli, err := schglb.UnifyOpsPool.Acquire()
if err != nil {
logger.Warnf("new unifyOps client, err: %s", err.Error())
return nil, mq.Failed(errorcode.OperationFailed, "new unifyOps client failed")
}
defer uniOpsCli.Close()
resps, err := uniOpsCli.GetIndicatorData(unifyops.GetOneResourceDataReq{
resps, err := uniOpsCli.GetIndicatorData(uopsdk.GetOneResourceDataReq{
SlwNodeID: msg.SlwNodeID,
})
if err != nil {

View File

@ -3,16 +3,16 @@ package mq
import (
"github.com/samber/lo"
"gitlink.org.cn/cloudream/common/consts/errorcode"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/common/pkgs/mq"
uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
"gitlink.org.cn/cloudream/scheduler/collector/internal/config"
"gitlink.org.cn/cloudream/scheduler/common/globals"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
colmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/collector"
)
func (svc *Service) GetSlwNodeInfo(msg *colmq.GetSlwNodeInfo) (*colmq.GetSlwNodeInfoResp, *mq.CodeMessage) {
uniOpsCli, err := globals.UnifyOpsPool.Acquire()
uniOpsCli, err := schglb.UnifyOpsPool.Acquire()
if err != nil {
logger.Warnf("new unifyOps client, err: %s", err.Error())
return nil, mq.Failed(errorcode.OperationFailed, "new unifyOps client failed")
@ -25,7 +25,7 @@ func (svc *Service) GetSlwNodeInfo(msg *colmq.GetSlwNodeInfo) (*colmq.GetSlwNode
return nil, mq.Failed(errorcode.OperationFailed, "get slwNode info failed")
}
node, ok := lo.Find(resp.Nodes, func(item models.SlwNode) bool { return item.ID == msg.SlwNodeID })
node, ok := lo.Find(resp.Nodes, func(item uopsdk.SlwNode) bool { return item.ID == msg.SlwNodeID })
if !ok {
logger.WithField("SlwNodeID", msg.SlwNodeID).
Warnf("slw node not found")
@ -47,7 +47,7 @@ func (svc *Service) GetSlwNodeInfo(msg *colmq.GetSlwNodeInfo) (*colmq.GetSlwNode
}
func (svc *Service) GetAllSlwNodeInfo(msg *colmq.GetAllSlwNodeInfo) (*colmq.GetAllSlwNodeInfoResp, *mq.CodeMessage) {
uniOpsCli, err := globals.UnifyOpsPool.Acquire()
uniOpsCli, err := schglb.UnifyOpsPool.Acquire()
if err != nil {
logger.Warnf("new unifyOps client, err: %s", err.Error())
return nil, mq.Failed(errorcode.OperationFailed, "new unifyOps client failed")

View File

@ -1,23 +1,23 @@
package mq
import (
"gitlink.org.cn/cloudream/common/api/storage"
"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"
stgsdk "gitlink.org.cn/cloudream/common/sdks/storage"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
colmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/collector"
)
func (svc *Service) PackageGetCachedStgNodes(msg *colmq.PackageGetCachedStgNodes) (*colmq.PackageGetCachedStgNodesResp, *mq.CodeMessage) {
stgCli, err := globals.CloudreamStoragePool.Acquire()
stgCli, err := schglb.CloudreamStoragePool.Acquire()
if err != nil {
logger.Warnf("new storage client, err: %s", err.Error())
return nil, mq.Failed(errorcode.OperationFailed, "new storage client failed")
}
defer stgCli.Close()
resp, err := stgCli.PackageGetCachedNodes(storage.PackageGetCachedNodesReq{
resp, err := stgCli.PackageGetCachedNodes(stgsdk.PackageGetCachedNodesReq{
PackageID: msg.PackageID,
UserID: msg.UserID,
})
@ -30,14 +30,14 @@ func (svc *Service) PackageGetCachedStgNodes(msg *colmq.PackageGetCachedStgNodes
}
func (svc *Service) PackageGetLoadedStgNodes(msg *colmq.PackageGetLoadedStgNodes) (*colmq.PackageGetLoadedStgNodesResp, *mq.CodeMessage) {
stgCli, err := globals.CloudreamStoragePool.Acquire()
stgCli, err := schglb.CloudreamStoragePool.Acquire()
if err != nil {
logger.Warnf("new storage client, err: %s", err.Error())
return nil, mq.Failed(errorcode.OperationFailed, "new storage client failed")
}
defer stgCli.Close()
resp, err := stgCli.PackageGetLoadedNodes(storage.PackageGetLoadedNodesReq{
resp, err := stgCli.PackageGetLoadedNodes(stgsdk.PackageGetLoadedNodesReq{
PackageID: msg.PackageID,
UserID: msg.UserID,
})

View File

@ -7,7 +7,7 @@ import (
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/scheduler/collector/internal/config"
"gitlink.org.cn/cloudream/scheduler/collector/internal/mq"
"gitlink.org.cn/cloudream/scheduler/common/globals"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
colmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/collector"
)
@ -24,8 +24,8 @@ func main() {
os.Exit(1)
}
globals.InitCloudreamStoragePool(&config.Cfg().CloudreamStorage)
globals.IniUnifyOpsPool(&config.Cfg().UnifyOps)
schglb.InitCloudreamStoragePool(&config.Cfg().CloudreamStorage)
schglb.IniUnifyOpsPool(&config.Cfg().UnifyOps)
mqSvr, err := colmq.NewServer(mq.NewService(), &config.Cfg().RabbitMQ)
if err != nil {

View File

@ -1,9 +1,9 @@
package globals
package schglb
import (
"gitlink.org.cn/cloudream/common/api/pcm"
cldstg "gitlink.org.cn/cloudream/common/api/storage"
"gitlink.org.cn/cloudream/common/api/unifyops"
pcmsdk "gitlink.org.cn/cloudream/common/sdks/pcm"
stgsdk "gitlink.org.cn/cloudream/common/sdks/storage"
uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
scmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq"
advmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/advisor"
cltmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/collector"
@ -26,20 +26,20 @@ func InitMQPool(cfg *scmq.Config) {
ManagerMQPool = mgrmq.NewPool(cfg)
}
var CloudreamStoragePool *cldstg.Pool
var CloudreamStoragePool *stgsdk.Pool
func InitCloudreamStoragePool(cfg *cldstg.Config) {
CloudreamStoragePool = cldstg.NewPool(cfg)
func InitCloudreamStoragePool(cfg *stgsdk.Config) {
CloudreamStoragePool = stgsdk.NewPool(cfg)
}
var UnifyOpsPool *unifyops.Pool
var UnifyOpsPool *uopsdk.Pool
func IniUnifyOpsPool(cfg *unifyops.Config) {
UnifyOpsPool = unifyops.NewPool(cfg)
func IniUnifyOpsPool(cfg *uopsdk.Config) {
UnifyOpsPool = uopsdk.NewPool(cfg)
}
var PCMPool *pcm.Pool
var PCMPool *pcmsdk.Pool
func InitPCMPool(cfg *pcm.Config) {
PCMPool = pcm.NewPool(cfg)
func InitPCMPool(cfg *pcmsdk.Config) {
PCMPool = pcmsdk.NewPool(cfg)
}

View File

@ -1,9 +1,10 @@
package job
package jobmod
import (
"github.com/samber/lo"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/types"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
"gitlink.org.cn/cloudream/common/utils/reflect"
)
@ -23,7 +24,7 @@ type FileScheduleScheme struct {
// 任务调度方案
type JobScheduleScheme struct {
TargetSlwNodeID models.SlwNodeID `json:"targetSlwNodeID"`
TargetSlwNodeID uopsdk.SlwNodeID `json:"targetSlwNodeID"`
Dataset FileScheduleScheme `json:"dataset"`
Code FileScheduleScheme `json:"code"`
Image FileScheduleScheme `json:"image"`
@ -36,16 +37,16 @@ type JobSetPreScheduleScheme struct {
// 任务集
type JobSet struct {
JobSetID models.JobSetID `json:"jobSetID"` // 全局唯一的任务集ID
JobSetID schsdk.JobSetID `json:"jobSetID"` // 全局唯一的任务集ID
JobRefs []JobSetJobRef `json:"jobRefs"` // 任务集中包含的任务,只是一个引用
PreScheduleScheme JobSetPreScheduleScheme `json:"preScheduleScheme"`
}
type JobSetJobRef struct {
JobID models.JobID `json:"jobID"` // 任务ID
JobID schsdk.JobID `json:"jobID"` // 任务ID
LocalJobID string `json:"localJobID"` // 在当前任务集内的任务ID
}
func NewJobSet(jobSetID models.JobSetID, jobRefs []JobSetJobRef, preScheduleScheme JobSetPreScheduleScheme) *JobSet {
func NewJobSet(jobSetID schsdk.JobSetID, jobRefs []JobSetJobRef, preScheduleScheme JobSetPreScheduleScheme) *JobSet {
return &JobSet{
JobSetID: jobSetID,
JobRefs: jobRefs,
@ -64,8 +65,8 @@ func (j *JobSet) FindRefByLocalJobID(localJobID string) *JobSetJobRef {
// 任务
type Job interface {
GetJobSetID() models.JobSetID
GetJobID() models.JobID
GetJobSetID() schsdk.JobSetID
GetJobID() schsdk.JobID
GetState() JobState
SetState(state JobState)
Clone() Job
@ -77,15 +78,15 @@ var JobTypeUnion = types.NewTypeUnion[Job](
)
type JobBase struct {
JobSetID models.JobSetID `json:"jobSetID"` // 任务集ID
JobID models.JobID `json:"jobID"` // 全局唯一任务ID
JobSetID schsdk.JobSetID `json:"jobSetID"` // 任务集ID
JobID schsdk.JobID `json:"jobID"` // 全局唯一任务ID
State JobState `json:"state"` // 任务当前的状态。包含当前在状态下执行操作所需的数据
}
func (j *JobBase) GetJobSetID() models.JobSetID {
func (j *JobBase) GetJobSetID() schsdk.JobSetID {
return j.JobSetID
}
func (j *JobBase) GetJobID() models.JobID {
func (j *JobBase) GetJobID() schsdk.JobID {
return j.JobID
}
func (j *JobBase) GetState() JobState {

View File

@ -1,18 +1,19 @@
package job
package jobmod
import (
"gitlink.org.cn/cloudream/common/models"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
schmod "gitlink.org.cn/cloudream/scheduler/common/models"
)
type NormalJob struct {
JobBase
Info models.NormalJobInfo `json:"info"` // 提交任务时提供的任务描述信息
Info schsdk.NormalJobInfo `json:"info"` // 提交任务时提供的任务描述信息
Files JobFiles `json:"files"` // 任务需要的文件
TargetSlwNodeID models.SlwNodeID `json:"targetSlwNodeID"` // 将要运行此任务的算力中心ID
TargetSlwNodeID uopsdk.SlwNodeID `json:"targetSlwNodeID"` // 将要运行此任务的算力中心ID
}
func NewNormalJob(jobSetID models.JobSetID, jobID models.JobID, info models.NormalJobInfo) *NormalJob {
func NewNormalJob(jobSetID schsdk.JobSetID, jobID schsdk.JobID, info schsdk.NormalJobInfo) *NormalJob {
return &NormalJob{
JobBase: JobBase{
JobSetID: jobSetID,

View File

@ -1,14 +1,14 @@
package job
package jobmod
import "gitlink.org.cn/cloudream/common/models"
import schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
type ResourceJob struct {
JobBase
Info models.ResourceJobInfo `json:"info"`
Info schsdk.ResourceJobInfo `json:"info"`
ResourcePackageID int64 `json:"resourcePackageID"` // 回源之后得到的PackageID
}
func NewResourceJob(jobSetID models.JobSetID, jobID models.JobID, info models.ResourceJobInfo) *ResourceJob {
func NewResourceJob(jobSetID schsdk.JobSetID, jobID schsdk.JobID, info schsdk.ResourceJobInfo) *ResourceJob {
return &ResourceJob{
JobBase: JobBase{
JobSetID: jobSetID,

View File

@ -1,4 +1,4 @@
package job
package jobmod
import (
"gitlink.org.cn/cloudream/common/pkgs/types"

View File

@ -1,6 +1,6 @@
package models
package schmod
import "gitlink.org.cn/cloudream/common/models"
import uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
type ExecutorID string
@ -15,6 +15,6 @@ type ImageInfo struct {
}
type ImageImportingInfo struct {
SlwNodeID models.SlwNodeID `json:"slwNodeID"`
SlwNodeImageID models.SlwNodeImageID `json:"slwNodeImageID"`
SlwNodeID uopsdk.SlwNodeID `json:"slwNodeID"`
SlwNodeImageID uopsdk.SlwNodeImageID `json:"slwNodeImageID"`
}

View File

@ -2,7 +2,7 @@ package advisor
import (
"gitlink.org.cn/cloudream/common/pkgs/mq"
"gitlink.org.cn/cloudream/scheduler/common/models"
schmod "gitlink.org.cn/cloudream/scheduler/common/models"
advtsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/advisor/task"
)
@ -19,7 +19,7 @@ type StartTask struct {
}
type StartTaskResp struct {
mq.MessageBodyBase
AdvisorID models.AdvisorID `json:"advisorID"`
AdvisorID schmod.AdvisorID `json:"advisorID"`
TaskID string `json:"taskID"`
}
@ -28,7 +28,7 @@ func NewStartTask(info advtsk.TaskInfo) *StartTask {
Info: info,
}
}
func NewStartTaskResp(advID models.AdvisorID, taskID string) *StartTaskResp {
func NewStartTaskResp(advID schmod.AdvisorID, taskID string) *StartTaskResp {
return &StartTaskResp{
AdvisorID: advID,
TaskID: taskID,

View File

@ -1,8 +1,8 @@
package collector
import (
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/mq"
uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
)
type ResourceService interface {
@ -16,21 +16,21 @@ var _ = Register(Service.GetOneResourceData)
type GetOneResourceData struct {
mq.MessageBodyBase
SlwNodeID models.SlwNodeID `json:"slwNodeID"`
SlwNodeID uopsdk.SlwNodeID `json:"slwNodeID"`
ResourceType string `json:"type"`
}
type GetOneResourceDataResp struct {
mq.MessageBodyBase
Data models.ResourceData `json:"data"`
Data uopsdk.ResourceData `json:"data"`
}
func NewGetOneResourceData(nodeID models.SlwNodeID, resourceType string) *GetOneResourceData {
func NewGetOneResourceData(nodeID uopsdk.SlwNodeID, resourceType string) *GetOneResourceData {
return &GetOneResourceData{
SlwNodeID: nodeID,
ResourceType: resourceType,
}
}
func NewGetOneResourceDataResp(data models.ResourceData) *GetOneResourceDataResp {
func NewGetOneResourceDataResp(data uopsdk.ResourceData) *GetOneResourceDataResp {
return &GetOneResourceDataResp{
Data: data,
}
@ -44,19 +44,19 @@ var _ = Register(Service.GetAllResourceData)
type GetAllResourceData struct {
mq.MessageBodyBase
SlwNodeID models.SlwNodeID `json:"slwNodeID"`
SlwNodeID uopsdk.SlwNodeID `json:"slwNodeID"`
}
type GetAllResourceDataResp struct {
mq.MessageBodyBase
Datas []models.ResourceData `json:"datas"`
Datas []uopsdk.ResourceData `json:"datas"`
}
func NewGetAllResourceData(nodeId models.SlwNodeID) *GetAllResourceData {
func NewGetAllResourceData(nodeId uopsdk.SlwNodeID) *GetAllResourceData {
return &GetAllResourceData{
SlwNodeID: nodeId,
}
}
func NewGetAllResourceDataResp(datas []models.ResourceData) *GetAllResourceDataResp {
func NewGetAllResourceDataResp(datas []uopsdk.ResourceData) *GetAllResourceDataResp {
return &GetAllResourceDataResp{
Datas: datas,
}
@ -66,5 +66,5 @@ func (c *Client) GetAllResourceData(msg *GetAllResourceData, opts ...mq.RequestO
}
func init() {
mq.RegisterUnionType(models.ResourceDataTypeUnion)
mq.RegisterUnionType(uopsdk.ResourceDataTypeUnion)
}

View File

@ -1,8 +1,8 @@
package collector
import (
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/mq"
uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
)
type SlwService interface {
@ -16,19 +16,19 @@ var _ = Register(Service.GetSlwNodeInfo)
type GetSlwNodeInfo struct {
mq.MessageBodyBase
SlwNodeID models.SlwNodeID `json:"slwNodeID"`
SlwNodeID uopsdk.SlwNodeID `json:"slwNodeID"`
}
type GetSlwNodeInfoResp struct {
mq.MessageBodyBase
models.SlwNode
uopsdk.SlwNode
}
func NewGetSlwNodeInfo(slwNodeID models.SlwNodeID) *GetSlwNodeInfo {
func NewGetSlwNodeInfo(slwNodeID uopsdk.SlwNodeID) *GetSlwNodeInfo {
return &GetSlwNodeInfo{
SlwNodeID: slwNodeID,
}
}
func NewGetSlwNodeInfoResp(node models.SlwNode) *GetSlwNodeInfoResp {
func NewGetSlwNodeInfoResp(node uopsdk.SlwNode) *GetSlwNodeInfoResp {
return &GetSlwNodeInfoResp{
SlwNode: node,
}
@ -45,13 +45,13 @@ type GetAllSlwNodeInfo struct {
}
type GetAllSlwNodeInfoResp struct {
mq.MessageBodyBase
Nodes []models.SlwNode `json:"nodes"`
Nodes []uopsdk.SlwNode `json:"nodes"`
}
func NewGetAllSlwNodeInfo() *GetAllSlwNodeInfo {
return &GetAllSlwNodeInfo{}
}
func NewGetAllSlwNodeInfoResp(nodes []models.SlwNode) *GetAllSlwNodeInfoResp {
func NewGetAllSlwNodeInfoResp(nodes []uopsdk.SlwNode) *GetAllSlwNodeInfoResp {
return &GetAllSlwNodeInfoResp{
Nodes: nodes,
}

View File

@ -1,8 +1,8 @@
package collector
import (
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/mq"
stgsdk "gitlink.org.cn/cloudream/common/sdks/storage"
)
type StorageService interface {
@ -21,7 +21,7 @@ type PackageGetCachedStgNodes struct {
}
type PackageGetCachedStgNodesResp struct {
mq.MessageBodyBase
models.PackageCachingInfo
stgsdk.PackageCachingInfo
}
func NewPackageGetCachedStgNodes(userID int64, packageID int64) *PackageGetCachedStgNodes {
@ -30,9 +30,9 @@ func NewPackageGetCachedStgNodes(userID int64, packageID int64) *PackageGetCache
PackageID: packageID,
}
}
func NewPackageGetCachedStgNodesResp(nodeInfos []models.NodePackageCachingInfo, packageSize int64, redunancyType string) *PackageGetCachedStgNodesResp {
func NewPackageGetCachedStgNodesResp(nodeInfos []stgsdk.NodePackageCachingInfo, packageSize int64, redunancyType string) *PackageGetCachedStgNodesResp {
return &PackageGetCachedStgNodesResp{
PackageCachingInfo: models.PackageCachingInfo{
PackageCachingInfo: stgsdk.PackageCachingInfo{
NodeInfos: nodeInfos,
PackageSize: packageSize,
RedunancyType: redunancyType,

View File

@ -2,7 +2,8 @@ package executor
import (
"gitlink.org.cn/cloudream/common/pkgs/mq"
"gitlink.org.cn/cloudream/scheduler/common/models"
schmod "gitlink.org.cn/cloudream/scheduler/common/models"
exectsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor/task"
)
@ -19,7 +20,7 @@ type StartTask struct {
}
type StartTaskResp struct {
mq.MessageBodyBase
ExecutorID models.ExecutorID `json:"executorID"`
ExecutorID schmod.ExecutorID `json:"executorID"`
TaskID string `json:"taskID"`
}
@ -28,7 +29,7 @@ func NewStartTask(info exectsk.TaskInfo) *StartTask {
Info: info,
}
}
func NewStartTaskResp(execID models.ExecutorID, taskID string) *StartTaskResp {
func NewStartTaskResp(execID schmod.ExecutorID, taskID string) *StartTaskResp {
return &StartTaskResp{
ExecutorID: execID,
TaskID: taskID,

View File

@ -1,6 +1,6 @@
package task
import "gitlink.org.cn/cloudream/common/models"
import stgsdk "gitlink.org.cn/cloudream/common/sdks/storage"
type CacheMovePackage struct {
TaskInfoBase
@ -11,7 +11,7 @@ type CacheMovePackage struct {
type CacheMovePackageStatus struct {
TaskStatusBase
Error string `json:"error"`
CacheInfos []models.ObjectCacheInfo `json:"cacheInfos"`
CacheInfos []stgsdk.ObjectCacheInfo `json:"cacheInfos"`
}
func NewCacheMovePackage(userID int64, packageID int64, stgNodeID int64) *CacheMovePackage {
@ -21,7 +21,7 @@ func NewCacheMovePackage(userID int64, packageID int64, stgNodeID int64) *CacheM
StgNodeID: stgNodeID,
}
}
func NewCacheMovePackageStatus(err string, cacheInfos []models.ObjectCacheInfo) *CacheMovePackageStatus {
func NewCacheMovePackageStatus(err string, cacheInfos []stgsdk.ObjectCacheInfo) *CacheMovePackageStatus {
return &CacheMovePackageStatus{
Error: err,
CacheInfos: cacheInfos,

View File

@ -1,12 +1,15 @@
package task
import "gitlink.org.cn/cloudream/common/models"
import (
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
)
type ScheduleTask struct {
TaskInfoBase
SlwNodeID models.SlwNodeID `json:"slwNodeID"`
Envs []models.EnvVar `json:"envs"`
SlwNodeImageID models.SlwNodeImageID `json:"slwNodeImageID"`
SlwNodeID uopsdk.SlwNodeID `json:"slwNodeID"`
Envs []schsdk.EnvVar `json:"envs"`
SlwNodeImageID uopsdk.SlwNodeImageID `json:"slwNodeImageID"`
CMDLine string `json:"cmdLine"`
}
type ScheduleTaskStatus struct {
@ -16,7 +19,7 @@ type ScheduleTaskStatus struct {
PCMJobID int64 `json:"pcmJobID"`
}
func NewScheduleTask(slwNodeID models.SlwNodeID, envs []models.EnvVar, slwNodeImageID models.SlwNodeImageID, cmdLine string) *ScheduleTask {
func NewScheduleTask(slwNodeID uopsdk.SlwNodeID, envs []schsdk.EnvVar, slwNodeImageID uopsdk.SlwNodeImageID, cmdLine string) *ScheduleTask {
return &ScheduleTask{
SlwNodeID: slwNodeID,
Envs: envs,

View File

@ -1,8 +1,6 @@
package task
import (
"gitlink.org.cn/cloudream/common/models"
)
import stgsdk "gitlink.org.cn/cloudream/common/sdks/storage"
type StorageCreatePackage struct {
TaskInfoBase
@ -11,7 +9,7 @@ type StorageCreatePackage struct {
Path string `json:"path"`
BucketID int64 `json:"bucketID"`
Name string `json:"name"`
Redundancy models.TypedRedundancyInfo `json:"redundancy"`
Redundancy stgsdk.TypedRedundancyInfo `json:"redundancy"`
}
type StorageCreatePackageStatus struct {
TaskStatusBase
@ -20,7 +18,7 @@ type StorageCreatePackageStatus struct {
PackageID int64 `json:"packageID"`
}
func NewStorageCreatePackage(userID int64, storageID int64, filePath string, bucketID int64, name string, redundancy models.TypedRedundancyInfo) *StorageCreatePackage {
func NewStorageCreatePackage(userID int64, storageID int64, filePath string, bucketID int64, name string, redundancy stgsdk.TypedRedundancyInfo) *StorageCreatePackage {
return &StorageCreatePackage{
UserID: userID,
StorageID: storageID,

View File

@ -1,28 +1,26 @@
package task
import (
"gitlink.org.cn/cloudream/common/models"
)
import uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
type UploadImage struct {
TaskInfoBase
SlwNodeID models.SlwNodeID `json:"slwNodeID"`
SlwNodeID uopsdk.SlwNodeID `json:"slwNodeID"`
ImagePath string `json:"imagePath"`
}
type UploadImageStatus struct {
TaskStatusBase
Status string `json:"status"`
Error string `json:"error"`
ImageID models.SlwNodeImageID `json:"imageID"`
ImageID uopsdk.SlwNodeImageID `json:"imageID"`
}
func NewUploadImage(slwNodeID models.SlwNodeID, imagePath string) *UploadImage {
func NewUploadImage(slwNodeID uopsdk.SlwNodeID, imagePath string) *UploadImage {
return &UploadImage{
SlwNodeID: slwNodeID,
ImagePath: imagePath,
}
}
func NewUploadImageStatus(status string, err string, imageID models.SlwNodeImageID) *UploadImageStatus {
func NewUploadImageStatus(status string, err string, imageID uopsdk.SlwNodeImageID) *UploadImageStatus {
return &UploadImageStatus{
Status: status,
Error: err,

View File

@ -2,7 +2,7 @@ package manager
import (
"gitlink.org.cn/cloudream/common/pkgs/mq"
"gitlink.org.cn/cloudream/scheduler/common/models"
schmod "gitlink.org.cn/cloudream/scheduler/common/models"
advtsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/advisor/task"
exectsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor/task"
)
@ -16,7 +16,7 @@ var _ = Register(Service.ReportAdvisorTaskStatus)
type ReportAdvisorTaskStatus struct {
mq.MessageBodyBase
AdvisorID models.AdvisorID `json:"advisorID"`
AdvisorID schmod.AdvisorID `json:"advisorID"`
TaskStatus []AdvisorTaskStatus `json:"taskStatus"`
}
@ -28,7 +28,7 @@ type AdvisorTaskStatus struct {
Status advtsk.TaskStatus
}
func NewReportAdvisorTaskStatus(advisorID models.AdvisorID, taskStatus []AdvisorTaskStatus) *ReportAdvisorTaskStatus {
func NewReportAdvisorTaskStatus(advisorID schmod.AdvisorID, taskStatus []AdvisorTaskStatus) *ReportAdvisorTaskStatus {
return &ReportAdvisorTaskStatus{
AdvisorID: advisorID,
TaskStatus: taskStatus,

View File

@ -2,7 +2,7 @@ package manager
import (
"gitlink.org.cn/cloudream/common/pkgs/mq"
"gitlink.org.cn/cloudream/scheduler/common/models"
schmod "gitlink.org.cn/cloudream/scheduler/common/models"
exectsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor/task"
)
@ -15,7 +15,7 @@ var _ = Register(Service.ReportExecutorTaskStatus)
type ReportExecutorTaskStatus struct {
mq.MessageBodyBase
ExecutorID models.ExecutorID `json:"executorID"`
ExecutorID schmod.ExecutorID `json:"executorID"`
TaskStatus []ExecutorTaskStatus `json:"taskStatus"`
}
@ -27,7 +27,7 @@ type ExecutorTaskStatus struct {
Status exectsk.TaskStatus
}
func NewReportExecutorTaskStatus(executorID models.ExecutorID, taskStatus []ExecutorTaskStatus) *ReportExecutorTaskStatus {
func NewReportExecutorTaskStatus(executorID schmod.ExecutorID, taskStatus []ExecutorTaskStatus) *ReportExecutorTaskStatus {
return &ReportExecutorTaskStatus{
ExecutorID: executorID,
TaskStatus: taskStatus,

View File

@ -2,7 +2,6 @@ package manager
import (
"gitlink.org.cn/cloudream/common/pkgs/mq"
"gitlink.org.cn/cloudream/scheduler/common/models"
schmod "gitlink.org.cn/cloudream/scheduler/common/models"
)
@ -47,19 +46,19 @@ var _ = Register(Service.GetImageInfo)
type GetImageInfo struct {
mq.MessageBodyBase
ImageID models.ImageID `json:"imageID"`
ImageID schmod.ImageID `json:"imageID"`
}
type GetImageInfoResp struct {
mq.MessageBodyBase
schmod.ImageInfo
}
func NewGetImageInfo(imageID models.ImageID) *GetImageInfo {
func NewGetImageInfo(imageID schmod.ImageID) *GetImageInfo {
return &GetImageInfo{
ImageID: imageID,
}
}
func NewGetImageInfoResp(imageID models.ImageID, packageID int64, importingInfo []schmod.ImageImportingInfo) *GetImageInfoResp {
func NewGetImageInfoResp(imageID schmod.ImageID, packageID int64, importingInfo []schmod.ImageImportingInfo) *GetImageInfoResp {
return &GetImageInfoResp{
ImageInfo: schmod.ImageInfo{
ImageID: imageID,

View File

@ -1,8 +1,8 @@
package manager
import (
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/mq"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
jobmod "gitlink.org.cn/cloudream/scheduler/common/models/job"
)
@ -21,21 +21,21 @@ var _ = Register(Service.SubmitJobSet)
type SubmitJobSet struct {
mq.MessageBodyBase
JobSet models.JobSetInfo `json:"jobSet"`
JobSet schsdk.JobSetInfo `json:"jobSet"`
PreScheduleScheme jobmod.JobSetPreScheduleScheme `json:"preScheduleScheme"`
}
type SubmitJobSetResp struct {
mq.MessageBodyBase
JobSetID models.JobSetID `json:"jobSetID"`
JobSetID schsdk.JobSetID `json:"jobSetID"`
}
func NewSubmitJobSet(jobSet models.JobSetInfo, preScheduleScheme jobmod.JobSetPreScheduleScheme) *SubmitJobSet {
func NewSubmitJobSet(jobSet schsdk.JobSetInfo, preScheduleScheme jobmod.JobSetPreScheduleScheme) *SubmitJobSet {
return &SubmitJobSet{
JobSet: jobSet,
PreScheduleScheme: preScheduleScheme,
}
}
func NewSubmitJobSetResp(jobSetID models.JobSetID) *SubmitJobSetResp {
func NewSubmitJobSetResp(jobSetID schsdk.JobSetID) *SubmitJobSetResp {
return &SubmitJobSetResp{
JobSetID: jobSetID,
}
@ -49,7 +49,7 @@ var _ = Register(Service.JobSetLocalFileUploaded)
type JobSetLocalFileUploaded struct {
mq.MessageBodyBase
JobSetID models.JobSetID `json:"jobSetID"`
JobSetID schsdk.JobSetID `json:"jobSetID"`
LocalPath string `json:"localPath"`
Error string `json:"error"` // 如果上传文件失败,那么这个字段说明了失败原因
PackageID int64 `json:"packageID"` // 如果上传文件成功那么这个字段是上传之后得到的PackageID
@ -58,7 +58,7 @@ type JobSetLocalFileUploadedResp struct {
mq.MessageBodyBase
}
func NewJobSetLocalFileUploaded(jobSetID models.JobSetID, localPath string, err string, packageID int64) *JobSetLocalFileUploaded {
func NewJobSetLocalFileUploaded(jobSetID schsdk.JobSetID, localPath string, err string, packageID int64) *JobSetLocalFileUploaded {
return &JobSetLocalFileUploaded{
JobSetID: jobSetID,
LocalPath: localPath,
@ -76,14 +76,14 @@ func (c *Client) JobSetLocalFileUploaded(msg *JobSetLocalFileUploaded, opts ...m
// 获取任务数据
type GetJob struct {
mq.MessageBodyBase
JobID models.JobID `json:"jobID"`
JobID schsdk.JobID `json:"jobID"`
}
type GetJobResp struct {
mq.MessageBodyBase
Job jobmod.Job `json:"job"`
}
func NewGetJob(jobID models.JobID) *GetJob {
func NewGetJob(jobID schsdk.JobID) *GetJob {
return &GetJob{
JobID: jobID,
}

View File

@ -1,9 +1,9 @@
package config
import (
pcm "gitlink.org.cn/cloudream/common/api/pcm"
cldstg "gitlink.org.cn/cloudream/common/api/storage"
log "gitlink.org.cn/cloudream/common/pkgs/logger"
pcmsdk "gitlink.org.cn/cloudream/common/sdks/pcm"
stgsdk "gitlink.org.cn/cloudream/common/sdks/storage"
c "gitlink.org.cn/cloudream/common/utils/config"
mymq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq"
)
@ -12,8 +12,8 @@ type Config struct {
Logger log.Config `json:"logger"`
ReportIntervalSec int `json:"reportIntervalSec"`
RabbitMQ mymq.Config `json:"rabbitMQ"`
CloudreamStorage cldstg.Config `json:"cloudreamStorage"`
PCM pcm.Config `json:"pcm"`
CloudreamStorage stgsdk.Config `json:"cloudreamStorage"`
PCM pcmsdk.Config `json:"pcm"`
}
var cfg Config

View File

@ -6,7 +6,7 @@ import (
"time"
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/scheduler/common/globals"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
schmod "gitlink.org.cn/cloudream/scheduler/common/models"
exectsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor/task"
mgrmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/manager"
@ -44,7 +44,7 @@ func (r *Reporter) ReportNow() {
}
func (r *Reporter) Serve() error {
magCli, err := globals.ManagerMQPool.Acquire()
magCli, err := schglb.ManagerMQPool.Acquire()
if err != nil {
return fmt.Errorf("new manager client: %w", err)
}

View File

@ -1,23 +1,23 @@
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"
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 := globals.PCMPool.Acquire()
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 pcmCli.Close()
resp, err := pcmCli.DeleteImage(pcm.DeleteImageReq{
resp, err := pcmCli.DeleteImage(pcmsdk.DeleteImageReq{
SlwNodeID: msg.SlwNodeID,
PCMJobID: msg.PCMJobID,
})
@ -29,14 +29,14 @@ func (svc *Service) DeleteImage(msg *execmq.DeleteImage) (*execmq.DeleteImageRes
}
func (svc *Service) DeleteTask(msg *execmq.DeleteTask) (*execmq.DeleteTaskResp, *mq.CodeMessage) {
pcmCli, err := globals.PCMPool.Acquire()
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 pcmCli.Close()
resp, err := pcmCli.DeleteTask(pcm.DeleteTaskReq{
resp, err := pcmCli.DeleteTask(pcmsdk.DeleteTaskReq{
SlwNodeID: msg.SlwNodeID,
PCMJobID: msg.PCMJobID,
})

View File

@ -4,11 +4,10 @@ import (
"fmt"
"time"
"gitlink.org.cn/cloudream/common/api/storage"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/common/pkgs/task"
"gitlink.org.cn/cloudream/scheduler/common/globals"
stgsdk "gitlink.org.cn/cloudream/common/sdks/storage"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
exectsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor/task"
)
@ -40,14 +39,14 @@ func (t *CacheMovePackage) Execute(task *task.Task[TaskContext], ctx TaskContext
})
}
func (t *CacheMovePackage) do(ctx TaskContext) ([]models.ObjectCacheInfo, error) {
stgCli, err := globals.CloudreamStoragePool.Acquire()
func (t *CacheMovePackage) do(ctx TaskContext) ([]stgsdk.ObjectCacheInfo, error) {
stgCli, err := schglb.CloudreamStoragePool.Acquire()
if err != nil {
return nil, fmt.Errorf("new cloudream storage client: %w", err)
}
defer stgCli.Close()
resp, err := stgCli.CacheMovePackage(storage.CacheMovePackageReq{
resp, err := stgCli.CacheMovePackage(stgsdk.CacheMovePackageReq{
UserID: t.UserID,
PackageID: t.PackageID,
NodeID: t.StgNodeID,

View File

@ -4,11 +4,11 @@ import (
"fmt"
"time"
"gitlink.org.cn/cloudream/common/api/pcm"
pcmsdk "gitlink.org.cn/cloudream/common/sdks/pcm"
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/common/pkgs/task"
"gitlink.org.cn/cloudream/scheduler/common/globals"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
exectsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor/task"
)
@ -40,13 +40,13 @@ func (t *PCMScheduleTask) Execute(task *task.Task[TaskContext], ctx TaskContext,
}
func (t *PCMScheduleTask) do(taskID string, ctx TaskContext) error {
pcmCli, err := globals.PCMPool.Acquire()
pcmCli, err := schglb.PCMPool.Acquire()
if err != nil {
return fmt.Errorf("new pcm client: %w", err)
}
defer pcmCli.Close()
resp, err := pcmCli.ScheduleTask(pcm.ScheduleTaskReq{
resp, err := pcmCli.ScheduleTask(pcmsdk.ScheduleTaskReq{
SlwNodeID: t.SlwNodeID,
Envs: t.Envs,
ImageID: t.SlwNodeImageID,
@ -59,7 +59,7 @@ func (t *PCMScheduleTask) do(taskID string, ctx TaskContext) error {
var prevStatus string
for {
tsResp, err := pcmCli.GetTaskStatus(pcm.GetTaskStatusReq{
tsResp, err := pcmCli.GetTaskStatus(pcmsdk.GetTaskStatusReq{
SlwNodeID: t.SlwNodeID,
PCMJobID: resp.PCMJobID,
})

View File

@ -4,10 +4,10 @@ import (
"fmt"
"time"
"gitlink.org.cn/cloudream/common/api/pcm"
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/common/pkgs/task"
"gitlink.org.cn/cloudream/scheduler/common/globals"
pcmsdk "gitlink.org.cn/cloudream/common/sdks/pcm"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
exectsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor/task"
)
@ -39,13 +39,13 @@ func (t *PCMUploadImage) Execute(task *task.Task[TaskContext], ctx TaskContext,
}
func (t *PCMUploadImage) do(taskID string, ctx TaskContext) error {
pcmCli, err := globals.PCMPool.Acquire()
pcmCli, err := schglb.PCMPool.Acquire()
if err != nil {
return fmt.Errorf("new pcm client: %w", err)
}
defer pcmCli.Close()
resp, err := pcmCli.UploadImage(pcm.UploadImageReq{
resp, err := pcmCli.UploadImage(pcmsdk.UploadImageReq{
SlwNodeID: t.SlwNodeID,
ImagePath: t.ImagePath,
})

View File

@ -4,10 +4,10 @@ import (
"fmt"
"time"
"gitlink.org.cn/cloudream/common/api/storage"
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/common/pkgs/task"
"gitlink.org.cn/cloudream/scheduler/common/globals"
stgsdk "gitlink.org.cn/cloudream/common/sdks/storage"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
exectsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor/task"
)
@ -39,13 +39,13 @@ func (t *StorageCreatePackage) Execute(task *task.Task[TaskContext], ctx TaskCon
}
func (t *StorageCreatePackage) do(taskID string, ctx TaskContext) error {
stgCli, err := globals.CloudreamStoragePool.Acquire()
stgCli, err := schglb.CloudreamStoragePool.Acquire()
if err != nil {
return fmt.Errorf("new cloudream storage client: %w", err)
}
defer stgCli.Close()
resp, err := stgCli.StorageCreatePackage(storage.StorageCreatePackageReq{
resp, err := stgCli.StorageCreatePackage(stgsdk.StorageCreatePackageReq{
UserID: t.UserID,
StorageID: t.StorageID,
Path: t.Path,

View File

@ -4,10 +4,10 @@ import (
"fmt"
"time"
"gitlink.org.cn/cloudream/common/api/storage"
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/common/pkgs/task"
"gitlink.org.cn/cloudream/scheduler/common/globals"
stgsdk "gitlink.org.cn/cloudream/common/sdks/storage"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
exectsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor/task"
)
@ -41,13 +41,13 @@ func (t *StorageLoadPackage) Execute(task *task.Task[TaskContext], ctx TaskConte
}
func (t *StorageLoadPackage) do(ctx TaskContext) error {
stgCli, err := globals.CloudreamStoragePool.Acquire()
stgCli, err := schglb.CloudreamStoragePool.Acquire()
if err != nil {
return fmt.Errorf("new cloudream storage client: %w", err)
}
defer stgCli.Close()
return stgCli.StorageLoadPackage(storage.StorageLoadPackageReq{
return stgCli.StorageLoadPackage(stgsdk.StorageLoadPackageReq{
UserID: t.UserID,
PackageID: t.PackageID,
StorageID: t.StorageID,

View File

@ -6,7 +6,7 @@ import (
"time"
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/scheduler/common/globals"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
execmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor"
"gitlink.org.cn/cloudream/scheduler/executor/internal/config"
myglbs "gitlink.org.cn/cloudream/scheduler/executor/internal/globals"
@ -28,8 +28,8 @@ func main() {
os.Exit(1)
}
globals.InitCloudreamStoragePool(&config.Cfg().CloudreamStorage)
globals.InitPCMPool(&config.Cfg().PCM)
schglb.InitCloudreamStoragePool(&config.Cfg().CloudreamStorage)
schglb.InitPCMPool(&config.Cfg().PCM)
myglbs.Init()

View File

@ -5,8 +5,8 @@ import (
"sync"
"time"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/scheduler/common/globals"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
schmod "gitlink.org.cn/cloudream/scheduler/common/models"
advmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/advisor"
advtsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/advisor/task"
@ -14,7 +14,7 @@ import (
)
type jobTask struct {
JobID models.JobID
JobID schsdk.JobID
TaskID string
FullTaskID string
}
@ -25,8 +25,8 @@ type AdvisorInfo struct {
lastReportTime time.Time
}
type OnTaskUpdatedCallbackFn func(jobID models.JobID, fullTaskID string, taskStatus advtsk.TaskStatus)
type OnTimeoutCallbackFn func(jobID models.JobID, fullTaskID string)
type OnTaskUpdatedCallbackFn func(jobID schsdk.JobID, fullTaskID string, taskStatus advtsk.TaskStatus)
type OnTimeoutCallbackFn func(jobID schsdk.JobID, fullTaskID string)
type Manager struct {
advisors map[schmod.AdvisorID]*AdvisorInfo
@ -40,7 +40,7 @@ type Manager struct {
}
func NewManager(reportTimeout time.Duration) (*Manager, error) {
advCli, err := globals.AdvisorMQPool.Acquire()
advCli, err := schglb.AdvisorMQPool.Acquire()
if err != nil {
return nil, fmt.Errorf("new executor client: %w", err)
}
@ -86,7 +86,7 @@ func (m *Manager) Report(advID schmod.AdvisorID, taskStatus []mgrmq.AdvisorTaskS
}
// 启动一个Task并将其关联到指定的Job。返回一个在各Executor之间唯一的TaskID
func (m *Manager) StartTask(jobID models.JobID, info advtsk.TaskInfo) (string, error) {
func (m *Manager) StartTask(jobID schsdk.JobID, info advtsk.TaskInfo) (string, error) {
m.lock.Lock()
defer m.lock.Unlock()

View File

@ -5,8 +5,9 @@ import (
"sync"
"time"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/scheduler/common/globals"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
schmod "gitlink.org.cn/cloudream/scheduler/common/models"
exemq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor"
exetsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor/task"
@ -14,7 +15,7 @@ import (
)
type jobTask struct {
JobID models.JobID
JobID schsdk.JobID
TaskID string
FullTaskID string
}
@ -25,8 +26,8 @@ type ExecutorInfo struct {
lastReportTime time.Time
}
type OnTaskUpdatedCallbackFn func(jobID models.JobID, fullTaskID string, taskStatus exetsk.TaskStatus)
type OnTimeoutCallbackFn func(jobID models.JobID, fullTaskID string)
type OnTaskUpdatedCallbackFn func(jobID schsdk.JobID, fullTaskID string, taskStatus exetsk.TaskStatus)
type OnTimeoutCallbackFn func(jobID schsdk.JobID, fullTaskID string)
type Manager struct {
executors map[schmod.ExecutorID]*ExecutorInfo
@ -40,7 +41,7 @@ type Manager struct {
}
func NewManager(reportTimeout time.Duration) (*Manager, error) {
exeCli, err := globals.ExecutorMQPool.Acquire()
exeCli, err := schglb.ExecutorMQPool.Acquire()
if err != nil {
return nil, fmt.Errorf("new executor client: %w", err)
}
@ -86,7 +87,7 @@ func (m *Manager) Report(execID schmod.ExecutorID, taskStatus []mgrmq.ExecutorTa
}
// 启动一个Task并将其关联到指定的Job。返回一个在各Executor之间唯一的TaskID
func (m *Manager) StartTask(jobID models.JobID, info exetsk.TaskInfo) (string, error) {
func (m *Manager) StartTask(jobID schsdk.JobID, info exetsk.TaskInfo) (string, error) {
m.lock.Lock()
defer m.lock.Unlock()

View File

@ -4,7 +4,7 @@ import (
"fmt"
"sync"
"gitlink.org.cn/cloudream/common/models"
uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
schmod "gitlink.org.cn/cloudream/scheduler/common/models"
)
@ -33,7 +33,7 @@ func (m *Manager) GetImageInfo(imageID schmod.ImageID) (*schmod.ImageInfo, error
return info, nil
}
func (m *Manager) GetImageImportingInfo(imageID schmod.ImageID, slwNodeID models.SlwNodeID) (*schmod.ImageImportingInfo, error) {
func (m *Manager) GetImageImportingInfo(imageID schmod.ImageID, slwNodeID uopsdk.SlwNodeID) (*schmod.ImageImportingInfo, error) {
m.lock.Lock()
defer m.lock.Unlock()
@ -68,7 +68,7 @@ func (m *Manager) CreateImage(packageID int64) (*schmod.ImageInfo, error) {
return info, nil
}
func (m *Manager) AddImageImportingInfo(imageID schmod.ImageID, slwNodeID models.SlwNodeID, slwNodeImageID models.SlwNodeImageID) error {
func (m *Manager) AddImageImportingInfo(imageID schmod.ImageID, slwNodeID uopsdk.SlwNodeID, slwNodeImageID uopsdk.SlwNodeImageID) error {
m.lock.Lock()
defer m.lock.Unlock()

View File

@ -4,10 +4,12 @@ import (
"fmt"
"reflect"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/actor"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
stgsdk "gitlink.org.cn/cloudream/common/sdks/storage"
"gitlink.org.cn/cloudream/scheduler/common/globals"
uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
jobmod "gitlink.org.cn/cloudream/scheduler/common/models/job"
colmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/collector"
exectsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor/task"
@ -17,13 +19,13 @@ import (
type adjustingJob struct {
job *jobmod.NormalJob
state *jobmod.StateAdjusting
slwNodeInfo *models.SlwNode
slwNodeInfo *uopsdk.SlwNode
}
type AdjustingHandler struct {
mgr *Manager
jobs map[models.JobID]*adjustingJob
jobs map[schsdk.JobID]*adjustingJob
cmdChan actor.CommandChannel
}
@ -31,7 +33,7 @@ type AdjustingHandler struct {
func NewAdjustingHandler(mgr *Manager) *AdjustingHandler {
return &AdjustingHandler{
mgr: mgr,
jobs: make(map[models.JobID]*adjustingJob),
jobs: make(map[schsdk.JobID]*adjustingJob),
cmdChan: *actor.NewCommandChannel(),
}
}
@ -50,7 +52,7 @@ func (h *AdjustingHandler) Handle(job jobmod.Job) {
return
}
colCli, err := globals.CollectorMQPool.Acquire()
colCli, err := schglb.CollectorMQPool.Acquire()
if err != nil {
h.changeJobState(job, jobmod.NewStateFailed(fmt.Sprintf("new collector client: %s", err), job.GetState()))
return
@ -130,7 +132,7 @@ func (h *AdjustingHandler) changeJobState(job jobmod.Job, state jobmod.JobState)
h.mgr.pubLock.Unlock()
}
func (h *AdjustingHandler) doPackageScheduling(evt event.Event, job *adjustingJob, fileInfo models.JobFileInfo, file *jobmod.PackageJobFile, scheme *jobmod.FileScheduleScheme, state *jobmod.FileSchedulingState) error {
func (h *AdjustingHandler) doPackageScheduling(evt event.Event, job *adjustingJob, fileInfo schsdk.JobFileInfo, file *jobmod.PackageJobFile, scheme *jobmod.FileScheduleScheme, state *jobmod.FileSchedulingState) error {
if state.Step == jobmod.StepBegin {
state.Step = jobmod.StepUploaded
}
@ -209,7 +211,7 @@ func (h *AdjustingHandler) doPackageScheduling(evt event.Event, job *adjustingJo
return nil
}
func (h *AdjustingHandler) doImageScheduling(evt event.Event, job *adjustingJob, fileInfo models.JobFileInfo, file *jobmod.ImageJobFile, scheme *jobmod.FileScheduleScheme, state *jobmod.FileSchedulingState) error {
func (h *AdjustingHandler) doImageScheduling(evt event.Event, job *adjustingJob, fileInfo schsdk.JobFileInfo, file *jobmod.ImageJobFile, scheme *jobmod.FileScheduleScheme, state *jobmod.FileSchedulingState) error {
if state.Step == jobmod.StepBegin {
state.Step = jobmod.StepUploaded
}

View File

@ -3,7 +3,7 @@ package event
import (
"errors"
"gitlink.org.cn/cloudream/common/models"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
)
var ErrUnconcernedTask = errors.New("unconcerned task")
@ -22,8 +22,8 @@ const (
type Broadcast struct {
Type BroadcastType
JobSetID models.JobSetID
JobID models.JobID
JobSetID schsdk.JobSetID
JobID schsdk.JobID
}
func (b *Broadcast) ToAll() bool {
@ -44,14 +44,14 @@ func ToAll() Broadcast {
}
}
func ToJobSet(jobSetID models.JobSetID) Broadcast {
func ToJobSet(jobSetID schsdk.JobSetID) Broadcast {
return Broadcast{
Type: BroadcastJobSet,
JobSetID: jobSetID,
}
}
func ToJob(jobID models.JobID) Broadcast {
func ToJob(jobID schsdk.JobID) Broadcast {
return Broadcast{
Type: BroadcastJob,
JobID: jobID,

View File

@ -1,16 +1,16 @@
package event
import "gitlink.org.cn/cloudream/common/models"
import schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
// 本地文件上传结束
type LocalFileUploaded struct {
JobSetID models.JobSetID
JobSetID schsdk.JobSetID
LocalPath string
Error string
PackageID int64
}
func NewLocalFileUploaded(jobSetID models.JobSetID, localPath string, err string, packageID int64) *LocalFileUploaded {
func NewLocalFileUploaded(jobSetID schsdk.JobSetID, localPath string, err string, packageID int64) *LocalFileUploaded {
return &LocalFileUploaded{
JobSetID: jobSetID,
LocalPath: localPath,

View File

@ -4,9 +4,10 @@ import (
"fmt"
"reflect"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/actor"
"gitlink.org.cn/cloudream/scheduler/common/globals"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
jobmod "gitlink.org.cn/cloudream/scheduler/common/models/job"
colmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/collector"
exetsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor/task"
@ -21,7 +22,7 @@ type executingJob struct {
type ExecutingHandler struct {
mgr *Manager
jobs map[models.JobID]*executingJob
jobs map[schsdk.JobID]*executingJob
cmdChan actor.CommandChannel
}
@ -29,7 +30,7 @@ type ExecutingHandler struct {
func NewExecutingHandler(mgr *Manager) *ExecutingHandler {
return &ExecutingHandler{
mgr: mgr,
jobs: make(map[models.JobID]*executingJob),
jobs: make(map[schsdk.JobID]*executingJob),
cmdChan: *actor.NewCommandChannel(),
}
}
@ -141,7 +142,7 @@ func (h *ExecutingHandler) onResourceJobEvent(evt event.Event, job *executingJob
return
}
colCli, err := globals.CollectorMQPool.Acquire()
colCli, err := schglb.CollectorMQPool.Acquire()
if err != nil {
h.changeJobState(job.job, jobmod.NewStateFailed(fmt.Sprintf("new collector client: %s", err.Error()), job.state))
return

View File

@ -6,7 +6,7 @@ import (
"reflect"
"sync"
"gitlink.org.cn/cloudream/common/models"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
myreflect "gitlink.org.cn/cloudream/common/utils/reflect"
jobmod "gitlink.org.cn/cloudream/scheduler/common/models/job"
advtsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/advisor/task"
@ -34,9 +34,9 @@ type Manager struct {
defaultHandler StateHandler
jobSetIDIndex int
jobSets map[models.JobSetID]*jobmod.JobSet
jobSets map[schsdk.JobSetID]*jobmod.JobSet
jobIDIndex int
jobs map[models.JobID]*mgrJob
jobs map[schsdk.JobID]*mgrJob
}
func NewManager(execMgr *executormgr.Manager, advMgr *advisormgr.Manager, imageMgr *imagemgr.Manager) (*Manager, error) {
@ -84,21 +84,21 @@ func (m *Manager) Stop() {
m.defaultHandler.Stop()
}
func (m *Manager) SubmitJobSet(jobSetInfo models.JobSetInfo, preScheduleScheme jobmod.JobSetPreScheduleScheme) (*jobmod.JobSet, error) {
func (m *Manager) SubmitJobSet(jobSetInfo schsdk.JobSetInfo, preScheduleScheme jobmod.JobSetPreScheduleScheme) (*jobmod.JobSet, error) {
m.pubLock.Lock()
defer m.pubLock.Unlock()
jobSetID := models.JobSetID(fmt.Sprintf("%d", m.jobSetIDIndex))
jobSetID := schsdk.JobSetID(fmt.Sprintf("%d", m.jobSetIDIndex))
var jobs []jobmod.Job
var normalJobs []*jobmod.NormalJob
var resJobs []*jobmod.ResourceJob
var jobRefs []jobmod.JobSetJobRef
for i, jobInfo := range jobSetInfo.Jobs {
jobID := models.JobID(fmt.Sprintf("%d", m.jobIDIndex+i))
jobID := schsdk.JobID(fmt.Sprintf("%d", m.jobIDIndex+i))
switch info := jobInfo.(type) {
case *models.NormalJobInfo:
case *schsdk.NormalJobInfo:
job := jobmod.NewNormalJob(jobSetID, jobID, *info)
jobs = append(jobs, job)
normalJobs = append(normalJobs, job)
@ -115,7 +115,7 @@ func (m *Manager) SubmitJobSet(jobSetInfo models.JobSetInfo, preScheduleScheme j
job.State = jobmod.NewStatePreScheduling(preSch)
job.TargetSlwNodeID = preSch.TargetSlwNodeID
case *models.ResourceJobInfo:
case *schsdk.ResourceJobInfo:
job := jobmod.NewResourceJob(jobSetID, jobID, *info)
jobs = append(jobs, job)
resJobs = append(resJobs, job)
@ -147,7 +147,7 @@ func (m *Manager) SubmitJobSet(jobSetInfo models.JobSetInfo, preScheduleScheme j
return jobSet, nil
}
func (m *Manager) LocalFileUploaded(jobSetID models.JobSetID, localPath string, err string, packageID int64) error {
func (m *Manager) LocalFileUploaded(jobSetID schsdk.JobSetID, localPath string, err string, packageID int64) error {
m.pubLock.Lock()
defer m.pubLock.Unlock()
@ -158,7 +158,7 @@ func (m *Manager) LocalFileUploaded(jobSetID models.JobSetID, localPath string,
return nil
}
func (m *Manager) executorTaskUpdated(jobID models.JobID, fullTaskID string, taskStatus exectsk.TaskStatus) {
func (m *Manager) executorTaskUpdated(jobID schsdk.JobID, fullTaskID string, taskStatus exectsk.TaskStatus) {
m.pubLock.Lock()
defer m.pubLock.Unlock()
@ -170,7 +170,7 @@ func (m *Manager) executorTaskUpdated(jobID models.JobID, fullTaskID string, tas
job.Handler.OnEvent(event.ToJob(jobID), event.NewExecutorTaskUpdated(fullTaskID, taskStatus))
}
func (m *Manager) executorTaskTimeout(jobID models.JobID, fullTaskID string) {
func (m *Manager) executorTaskTimeout(jobID schsdk.JobID, fullTaskID string) {
m.pubLock.Lock()
defer m.pubLock.Unlock()
@ -182,7 +182,7 @@ func (m *Manager) executorTaskTimeout(jobID models.JobID, fullTaskID string) {
job.Handler.OnEvent(event.ToJob(jobID), event.NewExecutorTaskTimeout(fullTaskID))
}
func (m *Manager) advisorTaskUpdated(jobID models.JobID, fullTaskID string, taskStatus advtsk.TaskStatus) {
func (m *Manager) advisorTaskUpdated(jobID schsdk.JobID, fullTaskID string, taskStatus advtsk.TaskStatus) {
m.pubLock.Lock()
defer m.pubLock.Unlock()
@ -194,7 +194,7 @@ func (m *Manager) advisorTaskUpdated(jobID models.JobID, fullTaskID string, task
job.Handler.OnEvent(event.ToJob(jobID), event.NewAdvisorTaskUpdated(fullTaskID, taskStatus))
}
func (m *Manager) advisorTaskTimeout(jobID models.JobID, fullTaskID string) {
func (m *Manager) advisorTaskTimeout(jobID schsdk.JobID, fullTaskID string) {
m.pubLock.Lock()
defer m.pubLock.Unlock()
@ -206,7 +206,7 @@ func (m *Manager) advisorTaskTimeout(jobID models.JobID, fullTaskID string) {
job.Handler.OnEvent(event.ToJob(jobID), event.NewAdvisorTaskTimeout(fullTaskID))
}
func (m *Manager) CloneJob(jobID models.JobID) (jobmod.Job, error) {
func (m *Manager) CloneJob(jobID schsdk.JobID) (jobmod.Job, error) {
m.pubLock.Lock()
job, ok := m.jobs[jobID]

View File

@ -4,8 +4,8 @@ import (
"fmt"
"reflect"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/actor"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
jobmod "gitlink.org.cn/cloudream/scheduler/common/models/job"
advtsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/advisor/task"
"gitlink.org.cn/cloudream/scheduler/manager/internal/jobmgr/event"
@ -19,7 +19,7 @@ type makingAdjustSchemeJob struct {
type MakingAdjustSchemeHandler struct {
mgr *Manager
jobs map[models.JobID]*makingAdjustSchemeJob
jobs map[schsdk.JobID]*makingAdjustSchemeJob
cmdChan actor.CommandChannel
}
@ -27,7 +27,7 @@ type MakingAdjustSchemeHandler struct {
func NewMakingAdjustSchemeHandler(mgr *Manager) *MakingAdjustSchemeHandler {
return &MakingAdjustSchemeHandler{
mgr: mgr,
jobs: make(map[models.JobID]*makingAdjustSchemeJob),
jobs: make(map[schsdk.JobID]*makingAdjustSchemeJob),
cmdChan: *actor.NewCommandChannel(),
}
}

View File

@ -4,10 +4,12 @@ import (
"fmt"
"reflect"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/actor"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
stgsdk "gitlink.org.cn/cloudream/common/sdks/storage"
"gitlink.org.cn/cloudream/scheduler/common/globals"
uopsdk "gitlink.org.cn/cloudream/common/sdks/unifyops"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
jobmod "gitlink.org.cn/cloudream/scheduler/common/models/job"
colmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/collector"
exectsk "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/executor/task"
@ -19,14 +21,13 @@ var ErrPreScheduleFailed = fmt.Errorf("pre schedule failed")
type preSchedulingJob struct {
job *jobmod.NormalJob
state *jobmod.StatePreScheduling
slwNodeInfo *models.SlwNode
mgr *Manager
slwNodeInfo *uopsdk.SlwNode
}
type PreSchedulingHandler struct {
mgr *Manager
jobs map[models.JobID]*preSchedulingJob
jobs map[schsdk.JobID]*preSchedulingJob
cmdChan actor.CommandChannel
}
@ -34,7 +35,7 @@ type PreSchedulingHandler struct {
func NewPreSchedulingHandler(mgr *Manager) *PreSchedulingHandler {
return &PreSchedulingHandler{
mgr: mgr,
jobs: make(map[models.JobID]*preSchedulingJob),
jobs: make(map[schsdk.JobID]*preSchedulingJob),
cmdChan: *actor.NewCommandChannel(),
}
}
@ -53,7 +54,7 @@ func (h *PreSchedulingHandler) Handle(job jobmod.Job) {
return
}
colCli, err := globals.CollectorMQPool.Acquire()
colCli, err := schglb.CollectorMQPool.Acquire()
if err != nil {
h.changeJobState(job, jobmod.NewStateFailed(fmt.Sprintf("new collector client: %s", err), job.GetState()))
return
@ -133,13 +134,13 @@ func (h *PreSchedulingHandler) changeJobState(job jobmod.Job, state jobmod.JobSt
h.mgr.pubLock.Unlock()
}
func (h *PreSchedulingHandler) doPackageScheduling(evt event.Event, job *preSchedulingJob, fileInfo models.JobFileInfo, file *jobmod.PackageJobFile, scheme *jobmod.FileScheduleScheme, state *jobmod.FileSchedulingState) error {
func (h *PreSchedulingHandler) doPackageScheduling(evt event.Event, job *preSchedulingJob, fileInfo schsdk.JobFileInfo, file *jobmod.PackageJobFile, scheme *jobmod.FileScheduleScheme, state *jobmod.FileSchedulingState) error {
if state.Step == jobmod.StepBegin {
switch info := fileInfo.(type) {
case *models.LocalJobFileInfo:
case *schsdk.LocalJobFileInfo:
state.Step = jobmod.StepUploading
case *models.PackageJobFileInfo:
case *schsdk.PackageJobFileInfo:
file.PackageID = info.PackageID
state.Step = jobmod.StepUploaded
@ -158,7 +159,7 @@ func (h *PreSchedulingHandler) doPackageScheduling(evt event.Event, job *preSche
return nil
}
if localFileCmd.LocalPath != fileInfo.(*models.LocalJobFileInfo).LocalPath {
if localFileCmd.LocalPath != fileInfo.(*schsdk.LocalJobFileInfo).LocalPath {
return nil
}
@ -241,13 +242,13 @@ func (h *PreSchedulingHandler) doPackageScheduling(evt event.Event, job *preSche
return nil
}
func (h *PreSchedulingHandler) doImageScheduling(evt event.Event, job *preSchedulingJob, fileInfo models.JobFileInfo, file *jobmod.ImageJobFile, scheme *jobmod.FileScheduleScheme, state *jobmod.FileSchedulingState) error {
func (h *PreSchedulingHandler) doImageScheduling(evt event.Event, job *preSchedulingJob, fileInfo schsdk.JobFileInfo, file *jobmod.ImageJobFile, scheme *jobmod.FileScheduleScheme, state *jobmod.FileSchedulingState) error {
if state.Step == jobmod.StepBegin {
switch info := fileInfo.(type) {
case *models.LocalJobFileInfo:
case *schsdk.LocalJobFileInfo:
state.Step = jobmod.StepUploading
case *models.ImageJobFileInfo:
case *schsdk.ImageJobFileInfo:
imageInfo, err := h.mgr.imageMgr.GetImageInfo(file.ImageID)
if err != nil {
return fmt.Errorf("getting image info: %w", err)
@ -272,7 +273,7 @@ func (h *PreSchedulingHandler) doImageScheduling(evt event.Event, job *preSchedu
return nil
}
if localFileCmd.LocalPath != fileInfo.(*models.LocalJobFileInfo).LocalPath {
if localFileCmd.LocalPath != fileInfo.(*schsdk.LocalJobFileInfo).LocalPath {
return nil
}

View File

@ -4,8 +4,8 @@ import (
"fmt"
"reflect"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/actor"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
jobmod "gitlink.org.cn/cloudream/scheduler/common/models/job"
"gitlink.org.cn/cloudream/scheduler/manager/internal/jobmgr/event"
)
@ -18,7 +18,7 @@ type readyToAdjustJob struct {
type ReadyToAdjustHandler struct {
mgr *Manager
jobs map[models.JobID]*readyToAdjustJob
jobs map[schsdk.JobID]*readyToAdjustJob
cmdChan actor.CommandChannel
}
@ -26,7 +26,7 @@ type ReadyToAdjustHandler struct {
func NewReadyToAdjustHandler(mgr *Manager) *ReadyToAdjustHandler {
return &ReadyToAdjustHandler{
mgr: mgr,
jobs: make(map[models.JobID]*readyToAdjustJob),
jobs: make(map[schsdk.JobID]*readyToAdjustJob),
cmdChan: *actor.NewCommandChannel(),
}
}
@ -74,7 +74,7 @@ func (h *ReadyToAdjustHandler) onNormalJobEvent(evt event.Event, job *readyToAdj
needWait := true
// 无论发生什么事件,都检查一下前置任务的状态
if resFile, ok := norJob.Info.Files.Dataset.(*models.ResourceJobFileInfo); ok {
if resFile, ok := norJob.Info.Files.Dataset.(*schsdk.ResourceJobFileInfo); ok {
ref := jobSet.FindRefByLocalJobID(resFile.ResourceLocalJobID)
if ref == nil {
h.changeJobState(job.job, jobmod.NewStateFailed(

View File

@ -4,8 +4,8 @@ import (
"fmt"
"reflect"
"gitlink.org.cn/cloudream/common/models"
"gitlink.org.cn/cloudream/common/pkgs/actor"
schsdk "gitlink.org.cn/cloudream/common/sdks/scheduler"
jobmod "gitlink.org.cn/cloudream/scheduler/common/models/job"
"gitlink.org.cn/cloudream/scheduler/manager/internal/jobmgr/event"
)
@ -18,7 +18,7 @@ type readyToExecuteJob struct {
type ReadyToExecuteHandler struct {
mgr *Manager
jobs map[models.JobID]*readyToExecuteJob
jobs map[schsdk.JobID]*readyToExecuteJob
cmdChan actor.CommandChannel
}
@ -26,7 +26,7 @@ type ReadyToExecuteHandler struct {
func NewReadyToExecuteHandler(mgr *Manager) *ReadyToExecuteHandler {
return &ReadyToExecuteHandler{
mgr: mgr,
jobs: make(map[models.JobID]*readyToExecuteJob),
jobs: make(map[schsdk.JobID]*readyToExecuteJob),
cmdChan: *actor.NewCommandChannel(),
}
}

View File

@ -8,7 +8,7 @@ import (
_ "google.golang.org/grpc/balancer/grpclb"
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/scheduler/common/globals"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
mgrmq "gitlink.org.cn/cloudream/scheduler/common/pkgs/mq/manager"
"gitlink.org.cn/cloudream/scheduler/manager/internal/advisormgr"
"gitlink.org.cn/cloudream/scheduler/manager/internal/config"
@ -31,7 +31,7 @@ func main() {
os.Exit(1)
}
globals.InitMQPool(&config.Cfg().RabbitMQ)
schglb.InitMQPool(&config.Cfg().RabbitMQ)
exeMgr, err := executormgr.NewManager(time.Duration(config.Cfg().ReportTimeoutSecs) * time.Second)
if err != nil {