Lookup _ rather than - for env

master
Bel LaPointe 2020-07-30 15:54:12 -06:00
parent c77264f85a
commit 853960e754
1 changed files with 21 additions and 0 deletions

View File

@ -42,6 +42,26 @@ func (as *ArgSet) Get(key string) *Arg {
return nil return nil
} }
func (as *ArgSet) GetInt(key string) int {
a := as.Get(key)
return a.GetInt()
}
func (as *ArgSet) GetBool(key string) bool {
a := as.Get(key)
return a.GetBool()
}
func (as *ArgSet) GetDuration(key string) time.Duration {
a := as.Get(key)
return a.GetDuration()
}
func (as *ArgSet) GetString(key string) string {
a := as.Get(key)
return a.GetString()
}
func (as *ArgSet) Parse() error { func (as *ArgSet) Parse() error {
if as.parsed { if as.parsed {
return nil return nil
@ -78,6 +98,7 @@ func (as *ArgSet) setValueFromDefaults() error {
func (as *ArgSet) setValueFromEnv() error { func (as *ArgSet) setValueFromEnv() error {
for i := range as.args { for i := range as.args {
key := as.args[i].Env key := as.args[i].Env
key = strings.ReplaceAll(key, "-", "_")
if v, ok := os.LookupEnv(key); ok { if v, ok := os.LookupEnv(key); ok {
if err := as.args[i].Set(v); err != nil { if err := as.args[i].Set(v); err != nil {
return err return err