1
0
mirror of https://github.com/astaxie/beego.git synced 2024-12-26 12:00:50 +00:00

Support run mode set by env var BEEGO_RUNMODE

This commit is contained in:
Bill Davis 2014-10-08 15:00:07 -04:00
parent a760e46f98
commit a06e0f27ad

View File

@ -26,6 +26,7 @@ import (
"github.com/astaxie/beego/logs"
"github.com/astaxie/beego/session"
"github.com/astaxie/beego/utils"
"github.com/kelseyhightower/envconfig"
)
var (
@ -83,9 +84,14 @@ var (
RouterCaseSensitive bool // router case sensitive default is true
)
type beegoAppConfig struct {
innerConfig config.ConfigContainer
}
type (
beegoAppConfig struct {
innerConfig config.ConfigContainer
}
beegoEnvConfig struct {
RunMode string
}
)
func newAppConfig(AppConfigProvider, AppConfigPath string) *beegoAppConfig {
ac, err := config.NewConfig(AppConfigProvider, AppConfigPath)
@ -288,8 +294,16 @@ func init() {
func ParseConfig() (err error) {
AppConfig = newAppConfig(AppConfigProvider, AppConfigPath)
var ec beegoEnvConfig
err = envconfig.Process("beego", &ec)
if err != nil {
return err
}
// set the runmode first
if runmode := AppConfig.String("RunMode"); runmode != "" {
if ec.RunMode != "" {
RunMode = ec.RunMode
} else if runmode := AppConfig.String("RunMode"); runmode != "" {
RunMode = runmode
}