openreplay/backend/pkg/env/vars.go

52 lines
No EOL
847 B
Go

package env
import (
"log"
"os"
"strconv"
)
func String(key string) string {
v := os.Getenv(key)
if v == "" {
log.Fatalln(key + " is missing")
}
return v
}
func StringOptional(key string) string {
return os.Getenv(key)
}
func Uint64(key string) uint64 {
v := String(key)
n, err := strconv.ParseUint(v, 10, 64)
if err != nil {
log.Fatalln(key + " has a wrong value. ", err)
}
return n
}
func Uint16(key string) uint16 {
v := String(key)
n, err := strconv.ParseUint(v, 10, 16)
if err != nil {
log.Fatalln(key + " has a wrong value. ", err)
}
return uint16(n)
}
func Int(key string) int {
return int(Uint64(key))
}
func Bool(key string) bool {
v := String(key)
if v != "true" && v != "false" {
log.Fatalln(key + " has wrong value. Accepted only true or false")
}
if v == "true" {
return true
}
return false
}