Support run mode set by env var BEEGO_RUNMODE
Showing
1 changed file
with
18 additions
and
4 deletions
| ... | @@ -26,6 +26,7 @@ import ( | ... | @@ -26,6 +26,7 @@ import ( |
| 26 | "github.com/astaxie/beego/logs" | 26 | "github.com/astaxie/beego/logs" |
| 27 | "github.com/astaxie/beego/session" | 27 | "github.com/astaxie/beego/session" |
| 28 | "github.com/astaxie/beego/utils" | 28 | "github.com/astaxie/beego/utils" |
| 29 | "github.com/kelseyhightower/envconfig" | ||
| 29 | ) | 30 | ) |
| 30 | 31 | ||
| 31 | var ( | 32 | var ( |
| ... | @@ -83,9 +84,14 @@ var ( | ... | @@ -83,9 +84,14 @@ var ( |
| 83 | RouterCaseSensitive bool // router case sensitive default is true | 84 | RouterCaseSensitive bool // router case sensitive default is true |
| 84 | ) | 85 | ) |
| 85 | 86 | ||
| 86 | type beegoAppConfig struct { | 87 | type ( |
| 87 | innerConfig config.ConfigContainer | 88 | beegoAppConfig struct { |
| 88 | } | 89 | innerConfig config.ConfigContainer |
| 90 | } | ||
| 91 | beegoEnvConfig struct { | ||
| 92 | RunMode string | ||
| 93 | } | ||
| 94 | ) | ||
| 89 | 95 | ||
| 90 | func newAppConfig(AppConfigProvider, AppConfigPath string) *beegoAppConfig { | 96 | func newAppConfig(AppConfigProvider, AppConfigPath string) *beegoAppConfig { |
| 91 | ac, err := config.NewConfig(AppConfigProvider, AppConfigPath) | 97 | ac, err := config.NewConfig(AppConfigProvider, AppConfigPath) |
| ... | @@ -288,8 +294,16 @@ func init() { | ... | @@ -288,8 +294,16 @@ func init() { |
| 288 | func ParseConfig() (err error) { | 294 | func ParseConfig() (err error) { |
| 289 | AppConfig = newAppConfig(AppConfigProvider, AppConfigPath) | 295 | AppConfig = newAppConfig(AppConfigProvider, AppConfigPath) |
| 290 | 296 | ||
| 297 | var ec beegoEnvConfig | ||
| 298 | err = envconfig.Process("beego", &ec) | ||
| 299 | if err != nil { | ||
| 300 | return err | ||
| 301 | } | ||
| 302 | |||
| 291 | // set the runmode first | 303 | // set the runmode first |
| 292 | if runmode := AppConfig.String("RunMode"); runmode != "" { | 304 | if ec.RunMode != "" { |
| 305 | RunMode = ec.RunMode | ||
| 306 | } else if runmode := AppConfig.String("RunMode"); runmode != "" { | ||
| 293 | RunMode = runmode | 307 | RunMode = runmode |
| 294 | } | 308 | } |
| 295 | 309 | ... | ... |
-
Please register or sign in to post a comment