36 lines
467 B
Go
36 lines
467 B
Go
package mode
|
|
|
|
import "os"
|
|
|
|
const (
|
|
EnvMode = "mode"
|
|
DevelopmentMode = "development"
|
|
ProductionMode = "production"
|
|
TestMode = "test"
|
|
)
|
|
|
|
var mode = DevelopmentMode
|
|
|
|
func init() {
|
|
Set(os.Getenv(EnvMode))
|
|
}
|
|
|
|
func Set(value string) {
|
|
if value == "" {
|
|
value = DevelopmentMode
|
|
}
|
|
|
|
switch value {
|
|
case DevelopmentMode,
|
|
ProductionMode,
|
|
TestMode:
|
|
mode = value
|
|
default:
|
|
panic("unknown mode: " + value)
|
|
}
|
|
}
|
|
|
|
func Get() string {
|
|
return mode
|
|
}
|