sessions/cmd/sessions/internal/appmode/appmode.go

35 lines
501 B
Go

package appmode
import (
"errors"
"fmt"
"os"
)
const (
envKey = "APP_MODE"
Development = "development"
Production = "production"
)
var (
ErrUnsupported = errors.New("unsupported app mode")
)
func Parse() (string, error) {
appModeStr, ok := os.LookupEnv(envKey)
if !ok {
return Development, nil
}
switch appModeStr {
case Development:
return Development, nil
case Production:
return Production, nil
default:
return "", fmt.Errorf("%w: %s", ErrUnsupported, appModeStr)
}
}