From 556db3efada0166880b20ff7b733cdffa2480de8 Mon Sep 17 00:00:00 2001 From: Jaime Pillora Date: Mon, 31 Oct 2022 16:08:20 +1100 Subject: [PATCH] add EnvBool --- share/settings/env.go | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/share/settings/env.go b/share/settings/env.go index 17b002b..53beefc 100644 --- a/share/settings/env.go +++ b/share/settings/env.go @@ -3,15 +3,16 @@ package settings import ( "os" "strconv" + "strings" "time" ) -//Env returns a chisel environment variable +// Env returns a chisel environment variable func Env(name string) string { return os.Getenv("CHISEL_" + name) } -//EnvInt returns an integer using an environment variable, with a default fallback +// EnvInt returns an integer using an environment variable, with a default fallback func EnvInt(name string, def int) int { if n, err := strconv.Atoi(Env(name)); err == nil { return n @@ -19,10 +20,16 @@ func EnvInt(name string, def int) int { return def } -//EnvDuration returns a duration using an environment variable, with a default fallback +// EnvDuration returns a duration using an environment variable, with a default fallback func EnvDuration(name string, def time.Duration) time.Duration { if n, err := time.ParseDuration(Env(name)); err == nil { return n } return def } + +// EnvBool returns a boolean using an environment variable +func EnvBool(name string) bool { + v := Env(name) + return v == "1" || strings.ToLower(v) == "true" +}