支持debug参数,debug时从本地目录读取配置
This commit is contained in:
parent
9c14e806dc
commit
82a7798b2b
|
|
@ -31,6 +31,15 @@ func isForce() bool {
|
||||||
return len(os.Args) > 1 && os.Args[1] == constants.ForceFlag
|
return len(os.Args) > 1 && os.Args[1] == constants.ForceFlag
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func isDebug() bool {
|
||||||
|
for _, arg := range os.Args[1:] {
|
||||||
|
if arg == constants.DebugFlag {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
|
|
||||||
// 初始化配置
|
// 初始化配置
|
||||||
|
|
@ -157,7 +166,26 @@ func run() error {
|
||||||
|
|
||||||
// initConfig 初始化配置
|
// initConfig 初始化配置
|
||||||
func initConfig() error {
|
func initConfig() error {
|
||||||
viper.AddConfigPath(constants.ConfigPath)
|
var configDir string
|
||||||
|
|
||||||
|
// 检查是否包含 --debug 参数
|
||||||
|
if isDebug() {
|
||||||
|
// 调试模式:使用常量路径
|
||||||
|
configDir = constants.ConfigPath
|
||||||
|
} else {
|
||||||
|
// 非调试模式:使用可执行文件路径拼接
|
||||||
|
exePath, err := os.Executable()
|
||||||
|
if err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
exeDir := filepath.Dir(exePath)
|
||||||
|
configDir = filepath.Join(exeDir, constants.ConfigPath)
|
||||||
|
}
|
||||||
|
|
||||||
|
viper.AddConfigPath(configDir)
|
||||||
|
viper.SetConfigName("config")
|
||||||
|
viper.SetConfigType("yaml")
|
||||||
|
|
||||||
return viper.ReadInConfig()
|
return viper.ReadInConfig()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -13,6 +13,7 @@ const (
|
||||||
PidFilePath = "/tmp/bash_service.pid" // PID 文件路径
|
PidFilePath = "/tmp/bash_service.pid" // PID 文件路径
|
||||||
DaemonFlag = "-daemon" // 后台进程标志
|
DaemonFlag = "-daemon" // 后台进程标志
|
||||||
ForceFlag = "-force" // 强制结束之前的后台进程
|
ForceFlag = "-force" // 强制结束之前的后台进程
|
||||||
|
DebugFlag = "-debug" // 强制结束之前的后台进程
|
||||||
ConfigFileMode = 0644 // 文件权限
|
ConfigFileMode = 0644 // 文件权限
|
||||||
ConfigPath = "./config" // 配置文件路径
|
ConfigPath = "./config" // 配置文件路径
|
||||||
LogFileMode = 0755 // 日志文件权限
|
LogFileMode = 0755 // 日志文件权限
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue