forked from JointCloud/JCC-CSScheduler
调整代码结构
This commit is contained in:
parent
36e4c8993d
commit
d96a897f8e
|
@ -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)
|
||||
}
|
||||
|
|
|
@ -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)
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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"`
|
||||
|
|
|
@ -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) {
|
||||
|
||||
}
|
||||
|
|
|
@ -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)
|
||||
}
|
||||
|
|
|
@ -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()
|
||||
|
||||
|
|
|
@ -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"`
|
||||
}
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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")
|
||||
|
|
|
@ -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,
|
||||
})
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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)
|
||||
}
|
||||
|
|
|
@ -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 {
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
package job
|
||||
package jobmod
|
||||
|
||||
import (
|
||||
"gitlink.org.cn/cloudream/common/pkgs/types"
|
||||
|
|
|
@ -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"`
|
||||
}
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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)
|
||||
}
|
||||
|
|
|
@ -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,
|
||||
}
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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,
|
||||
}
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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)
|
||||
}
|
||||
|
|
|
@ -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,
|
||||
})
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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,
|
||||
})
|
||||
|
|
|
@ -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,
|
||||
})
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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()
|
||||
|
||||
|
|
|
@ -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()
|
||||
|
||||
|
|
|
@ -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()
|
||||
|
||||
|
|
|
@ -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()
|
||||
|
||||
|
|
|
@ -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
|
||||
}
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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,
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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]
|
||||
|
|
|
@ -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(),
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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
|
||||
}
|
||||
|
||||
|
|
|
@ -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(
|
||||
|
|
|
@ -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(),
|
||||
}
|
||||
}
|
||||
|
|
|
@ -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 {
|
||||
|
|
Loading…
Reference in New Issue