JCC-CSScheduler/client/main.go

48 lines
1.1 KiB
Go

package main
import (
"fmt"
"os"
_ "google.golang.org/grpc/balancer/grpclb"
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/scheduler/client/internal/cmdline"
"gitlink.org.cn/cloudream/scheduler/client/internal/config"
"gitlink.org.cn/cloudream/scheduler/client/internal/prescheduler"
"gitlink.org.cn/cloudream/scheduler/client/internal/services"
schglb "gitlink.org.cn/cloudream/scheduler/common/globals"
)
func main() {
err := config.Init()
if err != nil {
fmt.Printf("init config failed, err: %s", err.Error())
os.Exit(1)
}
err = logger.Init(&config.Cfg().Logger)
if err != nil {
fmt.Printf("init logger failed, err: %s", err.Error())
os.Exit(1)
}
schglb.InitMQPool(&config.Cfg().RabbitMQ)
preSchr := prescheduler.NewDefaultPreScheduler()
svc, err := services.NewService(preSchr)
if err != nil {
logger.Warnf("new services failed, err: %s", err.Error())
os.Exit(1)
}
cmds, err := cmdline.NewCommandline(svc)
if err != nil {
logger.Warnf("new command line failed, err: %s", err.Error())
os.Exit(1)
}
cmds.DispatchCommand(os.Args[1:])
}