pkg/flags: export 'FlagToEnv' for e2e tests

This commit is contained in:
Gyu-Ho Lee 2016-10-14 11:15:28 -07:00
parent 77d6ecbc5f
commit a00ed609c3

View File

@ -74,7 +74,7 @@ func SetFlagsFromEnv(prefix string, fs *flag.FlagSet) error {
var err error var err error
alreadySet := make(map[string]bool) alreadySet := make(map[string]bool)
fs.Visit(func(f *flag.Flag) { fs.Visit(func(f *flag.Flag) {
alreadySet[flagToEnv(prefix, f.Name)] = true alreadySet[FlagToEnv(prefix, f.Name)] = true
}) })
usedEnvKey := make(map[string]bool) usedEnvKey := make(map[string]bool)
fs.VisitAll(func(f *flag.Flag) { fs.VisitAll(func(f *flag.Flag) {
@ -94,7 +94,7 @@ func SetPflagsFromEnv(prefix string, fs *pflag.FlagSet) error {
usedEnvKey := make(map[string]bool) usedEnvKey := make(map[string]bool)
fs.VisitAll(func(f *pflag.Flag) { fs.VisitAll(func(f *pflag.Flag) {
if f.Changed { if f.Changed {
alreadySet[flagToEnv(prefix, f.Name)] = true alreadySet[FlagToEnv(prefix, f.Name)] = true
} }
if serr := setFlagFromEnv(fs, prefix, f.Name, usedEnvKey, alreadySet, false); serr != nil { if serr := setFlagFromEnv(fs, prefix, f.Name, usedEnvKey, alreadySet, false); serr != nil {
err = serr err = serr
@ -103,7 +103,8 @@ func SetPflagsFromEnv(prefix string, fs *pflag.FlagSet) error {
return err return err
} }
func flagToEnv(prefix, name string) string { // FlagToEnv converts flag string to upper-case environment variable key string.
func FlagToEnv(prefix, name string) string {
return prefix + "_" + strings.ToUpper(strings.Replace(name, "-", "_", -1)) return prefix + "_" + strings.ToUpper(strings.Replace(name, "-", "_", -1))
} }
@ -131,7 +132,7 @@ type flagSetter interface {
} }
func setFlagFromEnv(fs flagSetter, prefix, fname string, usedEnvKey, alreadySet map[string]bool, log bool) error { func setFlagFromEnv(fs flagSetter, prefix, fname string, usedEnvKey, alreadySet map[string]bool, log bool) error {
key := flagToEnv(prefix, fname) key := FlagToEnv(prefix, fname)
if !alreadySet[key] { if !alreadySet[key] {
val := os.Getenv(key) val := os.Getenv(key)
if val != "" { if val != "" {