pcm-coordinator/api/internal/pkg/scheduler/hpcScheduler.go

33 lines
854 B
Go

package scheduler
import (
"gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/algo"
"gitlink.org.cn/jcce-pcm/pcm-coordinator/api/internal/types"
"gitlink.org.cn/jcce-pcm/pcm-coordinator/model"
"gitlink.org.cn/jcce-pcm/utils/tool"
)
type hpcScheduler struct {
yamlString string
}
func NewHpcScheduler(val string) *hpcScheduler {
return &hpcScheduler{yamlString: val}
}
func (h *hpcScheduler) getNewStructForDb(task *types.TaskInfo, participantId int64) (interface{}, error) {
hpc := model.Hpc{
Id: tool.GenSnowflakeID(),
TaskId: task.TaskId,
Status: "Saved",
ParticipantId: participantId,
YamlString: h.yamlString,
}
tool.Convert(task.Metadata, &hpc)
return hpc, nil
}
func (h *hpcScheduler) pickOptimalStrategy(task *algo.Task, providers ...*algo.Provider) (*algo.Task, error) {
return nil, nil
}