pkg/flags: warns on shadowed environment variable flags

Signed-off-by: Gyu-Ho Lee <gyuhox@gmail.com>
release-3.3
Gyu-Ho Lee 2017-08-09 15:58:48 -07:00
parent 04413454ac
commit 195744aea6
1 changed files with 3 additions and 3 deletions

View File

@ -80,9 +80,7 @@ func SetFlagsFromEnv(prefix string, fs *flag.FlagSet) error {
fs.VisitAll(func(f *flag.Flag) { fs.VisitAll(func(f *flag.Flag) {
err = setFlagFromEnv(fs, prefix, f.Name, usedEnvKey, alreadySet, true) err = setFlagFromEnv(fs, prefix, f.Name, usedEnvKey, alreadySet, true)
}) })
verifyEnv(prefix, usedEnvKey, alreadySet) verifyEnv(prefix, usedEnvKey, alreadySet)
return err return err
} }
@ -100,6 +98,7 @@ func SetPflagsFromEnv(prefix string, fs *pflag.FlagSet) error {
err = serr err = serr
} }
}) })
verifyEnv(prefix, usedEnvKey, alreadySet)
return err return err
} }
@ -118,7 +117,8 @@ func verifyEnv(prefix string, usedEnvKey, alreadySet map[string]bool) {
continue continue
} }
if alreadySet[kv[0]] { if alreadySet[kv[0]] {
plog.Infof("recognized environment variable %s, but unused: shadowed by corresponding flag ", kv[0]) // TODO: exit with error in v3.4
plog.Warningf("recognized environment variable %s, but unused: shadowed by corresponding flag", kv[0])
continue continue
} }
if strings.HasPrefix(env, prefix+"_") { if strings.HasPrefix(env, prefix+"_") {