Files
old-xmpploadtesting/config/helpers.go
2021-09-14 19:25:37 +02:00

57 lines
1.2 KiB
Go

package config
import (
"log"
"os"
"strconv"
)
// getEnv returns value for give key from environment
// if key is not present in environment it returns defaultValue
func getEnv(key, defaultValue string) string {
v := os.Getenv(key)
if len(v) > 0 {
return v
}
return defaultValue
}
// getEnvInt returns integer value for give key from environment
// if key is not present in environment it returns defaultValue
// if key cannot be parsed to integer function will panic
func getEnvInt(key string, defaultValue int) int {
v := os.Getenv(key)
if len(v) == 0 {
return defaultValue
}
valInteger, err := strconv.Atoi(v)
if err != nil {
log.Fatalf("variable `%s` cannot be parsed to INTEGER", key)
}
return valInteger
}
// getEnv extracts the bool value from environment variable
func getEnvBool(env string) bool {
envVal := mustGetEnv(env)
value, err := strconv.ParseBool(envVal)
if err != nil {
value = false
}
return value
}
// mustGetEnv returns value for give key from environment
// if key is not present in environment function will panic
func mustGetEnv(key string) string {
v := os.Getenv(key)
if len(v) == 0 {
log.Fatalf(" variable `%s` is not present in ENVIRONMENT", key)
}
return v
}