[config] config:get exit with status 1 if key is not set in env
This commit is contained in:
@@ -17,6 +17,20 @@ func GetWithDefault(appName string, key string, defaultValue string) string {
|
|||||||
return env.GetDefault(key, defaultValue)
|
return env.GetDefault(key, defaultValue)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//HasKey determines if the config given by appName has a value for the given key
|
||||||
|
func HasKey(appName string, key string) bool {
|
||||||
|
env, err := loadConfig(appName)
|
||||||
|
if err != nil {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
for _, v := range env.Keys() {
|
||||||
|
if v == key {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
|
||||||
//SetMany variables in the environment. If appName is empty the global config is used. If restart is true the app is restarted.
|
//SetMany variables in the environment. If appName is empty the global config is used. If restart is true the app is restarted.
|
||||||
func SetMany(appName string, entries map[string]string, restart bool) {
|
func SetMany(appName string, entries map[string]string, restart bool) {
|
||||||
global := appName == ""
|
global := appName == ""
|
||||||
|
|||||||
@@ -24,8 +24,11 @@ func main() {
|
|||||||
if len(keys) == 0 {
|
if len(keys) == 0 {
|
||||||
common.LogFail("Expected: key")
|
common.LogFail("Expected: key")
|
||||||
}
|
}
|
||||||
value := config.GetWithDefault(appName, keys[0], "")
|
if !config.HasKey(appName, keys[0]) {
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
value := config.GetWithDefault(appName, keys[0], "")
|
||||||
if *quoted {
|
if *quoted {
|
||||||
fmt.Printf("'%s'", configenv.SingleQuoteEscape(value))
|
fmt.Printf("'%s'", configenv.SingleQuoteEscape(value))
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user