switch workstation
This commit is contained in:
parent
a0dad29950
commit
dc6d575fae
@ -28,7 +28,8 @@ func (v Version) Cmd(cmd *cobra.Command) {
|
||||
}
|
||||
|
||||
func (v Version) Flag(cmd *cobra.Command) {
|
||||
cmd.PersistentFlags().Count(versionFlag, "print version")
|
||||
viper.SetDefault(versionFlag, false)
|
||||
cmd.PersistentFlags().Bool(versionFlag, false, "print version")
|
||||
_ = viper.BindPFlag(versionFlag, cmd.PersistentFlags().Lookup(versionFlag))
|
||||
}
|
||||
|
||||
|
||||
@ -23,11 +23,10 @@ type execApp struct {
|
||||
}
|
||||
|
||||
const (
|
||||
setsidFlag = "setsid"
|
||||
EnvSetsid = "SETSID"
|
||||
userFlag = "user"
|
||||
EnvUser = "USER"
|
||||
versionFlag = "version"
|
||||
setsidFlag = "setsid"
|
||||
EnvSetsid = "SETSID"
|
||||
userFlag = "user"
|
||||
EnvUser = "USER"
|
||||
)
|
||||
|
||||
var (
|
||||
@ -56,16 +55,16 @@ func main() {
|
||||
}
|
||||
|
||||
rootCmd.PersistentFlags().BoolP(setsidFlag, "s", false, "set to true to run setsid() before exec")
|
||||
viper.BindPFlag(EnvSetsid, rootCmd.PersistentFlags().Lookup(setsidFlag))
|
||||
_ = viper.BindPFlag(EnvSetsid, rootCmd.PersistentFlags().Lookup(setsidFlag))
|
||||
|
||||
rootCmd.PersistentFlags().StringP(userFlag, "u", "", "\"user:[group]\"")
|
||||
viper.BindPFlag(EnvUser, rootCmd.PersistentFlags().Lookup(userFlag))
|
||||
_ = viper.BindPFlag(EnvUser, rootCmd.PersistentFlags().Lookup(userFlag))
|
||||
|
||||
app.version.Flag(rootCmd)
|
||||
|
||||
viper.SetEnvPrefix(wingmate.EnvPrefix)
|
||||
viper.BindEnv(EnvUser)
|
||||
viper.BindEnv(EnvSetsid)
|
||||
_ = viper.BindEnv(EnvUser)
|
||||
_ = viper.BindEnv(EnvSetsid)
|
||||
viper.SetDefault(EnvSetsid, false)
|
||||
viper.SetDefault(EnvUser, "")
|
||||
|
||||
@ -84,7 +83,7 @@ func main() {
|
||||
}
|
||||
}
|
||||
|
||||
func (e *execApp) execCmd(cmd *cobra.Command, args []string) error {
|
||||
func (e *execApp) execCmd(_ *cobra.Command, _ []string) error {
|
||||
e.version.FlagHook()
|
||||
|
||||
if e.err != nil {
|
||||
|
||||
@ -15,7 +15,7 @@ import (
|
||||
|
||||
const (
|
||||
EnvPrefix = "WINGMATE"
|
||||
ConfigPath = "config_path"
|
||||
PathConfig = "config_path"
|
||||
DefaultConfigPath = "/etc/wingmate"
|
||||
ServiceDirName = "service"
|
||||
CrontabFileName = "crontab"
|
||||
@ -30,7 +30,7 @@ const (
|
||||
VersionFlag = "version"
|
||||
WMPidProxyPathFlag = "pid-proxy"
|
||||
WMExecPathFlag = "exec"
|
||||
ConfigPathFlag = "config"
|
||||
PathConfigFlag = "config"
|
||||
VersionCheckKey = "check-version"
|
||||
)
|
||||
|
||||
@ -83,10 +83,10 @@ func SetVersion(version string) {
|
||||
|
||||
func Read() (*Config, error) {
|
||||
viper.SetEnvPrefix(EnvPrefix)
|
||||
_ = viper.BindEnv(ConfigPath)
|
||||
_ = viper.BindEnv(PathConfig)
|
||||
_ = viper.BindEnv(PidProxyPathConfig)
|
||||
_ = viper.BindEnv(ExecPathConfig)
|
||||
viper.SetDefault(ConfigPath, DefaultConfigPath)
|
||||
viper.SetDefault(PathConfig, DefaultConfigPath)
|
||||
viper.SetDefault(PidProxyPathConfig, PidProxyPathDefault)
|
||||
viper.SetDefault(ExecPathConfig, ExecPathDefault)
|
||||
|
||||
@ -109,7 +109,7 @@ func Read() (*Config, error) {
|
||||
viperMtx: &sync.Mutex{},
|
||||
ServiceV0: make([]string, 0),
|
||||
}
|
||||
configPath := viper.GetString(ConfigPath)
|
||||
configPath := viper.GetString(PathConfig)
|
||||
svcdir = filepath.Join(configPath, ServiceDirName)
|
||||
dirent, err = os.ReadDir(svcdir)
|
||||
if err != nil {
|
||||
|
||||
@ -23,7 +23,7 @@ func setup(t *testing.T) {
|
||||
if configDir, err = os.MkdirTemp("", "wingmate-*-test"); err != nil {
|
||||
t.Fatal("setup", err)
|
||||
}
|
||||
viper.Set(ConfigPath, configDir)
|
||||
viper.Set(PathConfig, configDir)
|
||||
}
|
||||
|
||||
func tear(t *testing.T) {
|
||||
|
||||
@ -12,12 +12,12 @@ func ParseFlags() {
|
||||
pflag.CountP(VersionFlag, "v", "check version")
|
||||
pflag.String(WMPidProxyPathFlag, "", "wmpidproxy path")
|
||||
pflag.String(WMExecPathFlag, "", "wmexec path")
|
||||
pflag.StringP(ConfigPathFlag, "c", "", "config path")
|
||||
pflag.StringP(PathConfigFlag, "c", "", "config path")
|
||||
|
||||
pflag.Parse()
|
||||
|
||||
_ = viper.BindPFlag(VersionCheckKey, pflag.CommandLine.Lookup(VersionFlag))
|
||||
_ = viper.BindPFlag(ConfigPath, pflag.CommandLine.Lookup(ConfigPathFlag))
|
||||
_ = viper.BindPFlag(PathConfig, pflag.CommandLine.Lookup(PathConfigFlag))
|
||||
_ = viper.BindPFlag(PidProxyPathConfig, pflag.CommandLine.Lookup(WMPidProxyPathFlag))
|
||||
_ = viper.BindPFlag(ExecPathConfig, pflag.CommandLine.Lookup(WMExecPathFlag))
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user