上传cmd flag 外部参数绑定
This commit is contained in:
parent
01f309da8f
commit
9d91d35501
@ -24,9 +24,9 @@ import (
|
||||
服务描述:通过读取游戏json配置,启动服务程序
|
||||
*/
|
||||
var (
|
||||
gmpath = flag.String("g", "./gm.json", "游戏区服配置") //服务列表下标
|
||||
crosspath = flag.String("c", "./cross.json", "游戏跨服配置") //服务列表下标
|
||||
sid = flag.String("i", "", "曲阜列表下标") //服务列表下标
|
||||
gmpath string //服务列表下标
|
||||
crosspath string //服务列表下标
|
||||
sid string //服务列表下标
|
||||
)
|
||||
var startCmd = &cobra.Command{
|
||||
Use: "start",
|
||||
@ -54,6 +54,9 @@ var RootCmd = &cobra.Command{
|
||||
|
||||
//初始化自定义cmd
|
||||
func init() {
|
||||
RootCmd.PersistentFlags().StringVarP(&gmpath, "gm", "g", "./gm.json", "游戏区服配置")
|
||||
RootCmd.PersistentFlags().StringVarP(&crosspath, "cross", "c", "./cross.json", "游戏跨服配置")
|
||||
RootCmd.PersistentFlags().StringVarP(&sid, "sid", "i", "", "区服id")
|
||||
RootCmd.AddCommand(startCmd, stopCmd)
|
||||
}
|
||||
|
||||
@ -80,7 +83,7 @@ func Execute() {
|
||||
|
||||
//启动程序
|
||||
func start() {
|
||||
if config, err := readergmconf(*gmpath); err != nil {
|
||||
if config, err := readergmconf(gmpath); err != nil {
|
||||
log.Error("读取区服配置失败!", log.Field{Key: "err", Value: err})
|
||||
} else {
|
||||
var (
|
||||
@ -92,7 +95,7 @@ func start() {
|
||||
log.Error("转换服务配置异常!", log.Field{Key: "err", Value: err})
|
||||
} else {
|
||||
for _, v := range ss {
|
||||
if *sid == "" || fmt.Sprintf("%s_%s", v.Tag, *sid) == v.Id {
|
||||
if sid == "" || fmt.Sprintf("%s_%s", v.Tag, sid) == v.Id {
|
||||
if err = writeServiceConfig(fmt.Sprintf("./conf/%s.yaml", v.Id), v); err != nil {
|
||||
log.Error("写入配置文件失败!", log.Field{Key: "err", Value: err})
|
||||
return
|
||||
@ -144,7 +147,7 @@ func start() {
|
||||
|
||||
//关闭程序
|
||||
func stop() {
|
||||
if config, err := readergmconf(*gmpath); err != nil {
|
||||
if config, err := readergmconf(gmpath); err != nil {
|
||||
log.Error("读取区服配置失败!", log.Field{Key: "err", Value: err})
|
||||
} else {
|
||||
|
||||
@ -152,7 +155,7 @@ func stop() {
|
||||
log.Error("转换服务配置异常!", log.Field{Key: "err", Value: err})
|
||||
} else {
|
||||
for _, v := range ss {
|
||||
if *sid == "" || fmt.Sprintf("%s_%s", v.Tag, *sid) == v.Id {
|
||||
if sid == "" || fmt.Sprintf("%s_%s", v.Tag, sid) == v.Id {
|
||||
stopService(v)
|
||||
}
|
||||
}
|
||||
@ -276,7 +279,7 @@ func convertServiceSttings(config *comm.GameConfig, id int, stype string, ip str
|
||||
"RedisDB": config.LoaclDB.RedisDB,
|
||||
"MongodbUrl": config.LoaclDB.MongodbUrl,
|
||||
"MongodbDatabase": config.LoaclDB.MongodbDatabase,
|
||||
"CrossConfig": *crosspath,
|
||||
"CrossConfig": crosspath,
|
||||
}
|
||||
return
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user