gosuki/mode.go

48 lines
693 B
Go
Raw Normal View History

package main
import "os"
2017-11-19 16:00:37 +00:00
const ENV_GOMARK_MODE = "GOMARK_MODE"
const (
DebugMode string = "debug"
ReleaseMode string = "release"
TestMode string = "test"
)
const (
debugCode = iota
releaseCode
testCode
)
2017-11-19 16:00:37 +00:00
var gomarkMode = debugCode
var modeName = DebugMode
2017-11-19 16:00:37 +00:00
func initMode() {
mode := os.Getenv(ENV_GOMARK_MODE)
if mode == "" {
SetMode(DebugMode)
} else {
SetMode(mode)
}
}
func SetMode(value string) {
switch value {
case DebugMode:
2017-11-19 16:00:37 +00:00
gomarkMode = debugCode
case ReleaseMode:
2017-11-19 16:00:37 +00:00
gomarkMode = releaseCode
case TestMode:
2017-11-19 16:00:37 +00:00
gomarkMode = testCode
default:
panic("go-bookmark mode unknown: " + value)
}
modeName = value
}
2017-11-19 20:42:20 +00:00
func RunMode() string {
return modeName
}