55 lines
1.2 KiB
Go
55 lines
1.2 KiB
Go
package boot
|
|
|
|
import (
|
|
"flag"
|
|
"git.inspur.com/sbg-jszt/cfn/cfn-schedule/config"
|
|
"git.inspur.com/sbg-jszt/cfn/cfn-schedule/data"
|
|
"git.inspur.com/sbg-jszt/cfn/cfn-schedule/internal/service"
|
|
"git.inspur.com/sbg-jszt/cfn/cfn-schedule/internal/service/app_manage"
|
|
"git.inspur.com/sbg-jszt/cfn/cfn-schedule/internal/service/event_engine"
|
|
"git.inspur.com/sbg-jszt/cfn/cfn-schedule/internal/validator"
|
|
"git.inspur.com/sbg-jszt/cfn/cfn-schedule/pkg/log"
|
|
"os"
|
|
)
|
|
|
|
var (
|
|
configPath string
|
|
printVersion bool
|
|
Run string
|
|
)
|
|
|
|
func init() {
|
|
flag.StringVar(&Run, "r", "http", "执行命令默认运行http服务")
|
|
flag.StringVar(&configPath, "c", "", "请输入配置文件绝对路径")
|
|
flag.BoolVar(&printVersion, "version", false, "查看版本")
|
|
flag.Parse()
|
|
|
|
if printVersion {
|
|
// 打印版本号
|
|
println(version)
|
|
os.Exit(0)
|
|
}
|
|
|
|
// 1、初始化配置
|
|
// 从环境变量读取配置文件路径
|
|
if envConfigPath := os.Getenv("CFN_SCHEDULE_CONFIG_PATH"); envConfigPath != "" {
|
|
configPath = envConfigPath
|
|
}
|
|
config.InitConfig(configPath)
|
|
|
|
// 2、初始化zap日志
|
|
log.InitLogger()
|
|
|
|
// 3、初始化数据库
|
|
data.InitData()
|
|
|
|
// 4、初始化验证器
|
|
validator.InitValidatorTrans("zh")
|
|
|
|
service.Start()
|
|
|
|
event_engine.Init()
|
|
|
|
app_manage.Init()
|
|
}
|