Use a variable but a function for IsProd because of a slight performance increment (#17368)
This commit is contained in:
parent
0208ea0248
commit
f494776931
12 changed files with 19 additions and 22 deletions
|
@ -80,7 +80,7 @@ func fail(userMessage, logMessage string, args ...interface{}) error {
|
||||||
fmt.Fprintln(os.Stderr, "Gitea:", userMessage)
|
fmt.Fprintln(os.Stderr, "Gitea:", userMessage)
|
||||||
|
|
||||||
if len(logMessage) > 0 {
|
if len(logMessage) > 0 {
|
||||||
if !setting.IsProd() {
|
if !setting.IsProd {
|
||||||
fmt.Fprintf(os.Stderr, logMessage+"\n", args...)
|
fmt.Fprintf(os.Stderr, logMessage+"\n", args...)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -136,8 +136,8 @@ func NewTestEngine() (err error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
x.SetMapper(names.GonicMapper{})
|
x.SetMapper(names.GonicMapper{})
|
||||||
x.SetLogger(NewXORMLogger(!setting.IsProd()))
|
x.SetLogger(NewXORMLogger(!setting.IsProd))
|
||||||
x.ShowSQL(!setting.IsProd())
|
x.ShowSQL(!setting.IsProd)
|
||||||
return syncTables()
|
return syncTables()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -95,7 +95,7 @@ func (ctx *APIContext) Error(status int, title string, obj interface{}) {
|
||||||
if status == http.StatusInternalServerError {
|
if status == http.StatusInternalServerError {
|
||||||
log.ErrorWithSkip(1, "%s: %s", title, message)
|
log.ErrorWithSkip(1, "%s: %s", title, message)
|
||||||
|
|
||||||
if setting.IsProd() && !(ctx.User != nil && ctx.User.IsAdmin) {
|
if setting.IsProd && !(ctx.User != nil && ctx.User.IsAdmin) {
|
||||||
message = ""
|
message = ""
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -112,7 +112,7 @@ func (ctx *APIContext) InternalServerError(err error) {
|
||||||
log.ErrorWithSkip(1, "InternalServerError: %v", err)
|
log.ErrorWithSkip(1, "InternalServerError: %v", err)
|
||||||
|
|
||||||
var message string
|
var message string
|
||||||
if !setting.IsProd() || (ctx.User != nil && ctx.User.IsAdmin) {
|
if !setting.IsProd || (ctx.User != nil && ctx.User.IsAdmin) {
|
||||||
message = err.Error()
|
message = err.Error()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -225,7 +225,7 @@ func (ctx *Context) NotFound(title string, err error) {
|
||||||
func (ctx *Context) notFoundInternal(title string, err error) {
|
func (ctx *Context) notFoundInternal(title string, err error) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.ErrorWithSkip(2, "%s: %v", title, err)
|
log.ErrorWithSkip(2, "%s: %v", title, err)
|
||||||
if !setting.IsProd() {
|
if !setting.IsProd {
|
||||||
ctx.Data["ErrorMsg"] = err
|
ctx.Data["ErrorMsg"] = err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -261,7 +261,7 @@ func (ctx *Context) ServerError(title string, err error) {
|
||||||
func (ctx *Context) serverErrorInternal(title string, err error) {
|
func (ctx *Context) serverErrorInternal(title string, err error) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.ErrorWithSkip(2, "%s: %v", title, err)
|
log.ErrorWithSkip(2, "%s: %v", title, err)
|
||||||
if !setting.IsProd() {
|
if !setting.IsProd {
|
||||||
ctx.Data["ErrorMsg"] = err
|
ctx.Data["ErrorMsg"] = err
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -645,7 +645,7 @@ func Contexter() func(next http.Handler) http.Handler {
|
||||||
"CurrentURL": setting.AppSubURL + req.URL.RequestURI(),
|
"CurrentURL": setting.AppSubURL + req.URL.RequestURI(),
|
||||||
"PageStartTime": startTime,
|
"PageStartTime": startTime,
|
||||||
"Link": link,
|
"Link": link,
|
||||||
"IsProd": setting.IsProd(),
|
"IsProd": setting.IsProd,
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
// PageData is passed by reference, and it will be rendered to `window.config.pageData` in `head.tmpl` for JavaScript modules
|
// PageData is passed by reference, and it will be rendered to `window.config.pageData` in `head.tmpl` for JavaScript modules
|
||||||
|
|
|
@ -18,7 +18,7 @@ import (
|
||||||
|
|
||||||
// AddCacheControlToHeader adds suitable cache-control headers to response
|
// AddCacheControlToHeader adds suitable cache-control headers to response
|
||||||
func AddCacheControlToHeader(h http.Header, d time.Duration) {
|
func AddCacheControlToHeader(h http.Header, d time.Duration) {
|
||||||
if setting.IsProd() {
|
if setting.IsProd {
|
||||||
h.Set("Cache-Control", "private, max-age="+strconv.Itoa(int(d.Seconds())))
|
h.Set("Cache-Control", "private, max-age="+strconv.Itoa(int(d.Seconds())))
|
||||||
} else {
|
} else {
|
||||||
h.Set("Cache-Control", "no-store")
|
h.Set("Cache-Control", "no-store")
|
||||||
|
|
|
@ -419,17 +419,13 @@ var (
|
||||||
PIDFile = "/run/gitea.pid"
|
PIDFile = "/run/gitea.pid"
|
||||||
WritePIDFile bool
|
WritePIDFile bool
|
||||||
RunMode string
|
RunMode string
|
||||||
|
IsProd bool
|
||||||
RunUser string
|
RunUser string
|
||||||
IsWindows bool
|
IsWindows bool
|
||||||
HasRobotsTxt bool
|
HasRobotsTxt bool
|
||||||
InternalToken string // internal access token
|
InternalToken string // internal access token
|
||||||
)
|
)
|
||||||
|
|
||||||
// IsProd if it's a production mode
|
|
||||||
func IsProd() bool {
|
|
||||||
return strings.EqualFold(RunMode, "prod")
|
|
||||||
}
|
|
||||||
|
|
||||||
func getAppPath() (string, error) {
|
func getAppPath() (string, error) {
|
||||||
var appPath string
|
var appPath string
|
||||||
var err error
|
var err error
|
||||||
|
@ -906,6 +902,7 @@ func NewContext() {
|
||||||
// Please don't use root as a bandaid to "fix" something that is broken, instead the broken thing should instead be fixed properly.
|
// Please don't use root as a bandaid to "fix" something that is broken, instead the broken thing should instead be fixed properly.
|
||||||
unsafeAllowRunAsRoot := Cfg.Section("").Key("I_AM_BEING_UNSAFE_RUNNING_AS_ROOT").MustBool(false)
|
unsafeAllowRunAsRoot := Cfg.Section("").Key("I_AM_BEING_UNSAFE_RUNNING_AS_ROOT").MustBool(false)
|
||||||
RunMode = Cfg.Section("").Key("RUN_MODE").MustString("prod")
|
RunMode = Cfg.Section("").Key("RUN_MODE").MustString("prod")
|
||||||
|
IsProd = strings.EqualFold(RunMode, "prod")
|
||||||
// Does not check run user when the install lock is off.
|
// Does not check run user when the install lock is off.
|
||||||
if InstallLock {
|
if InstallLock {
|
||||||
currentUser, match := IsRunUserMatchCurrentUser(RunUser)
|
currentUser, match := IsRunUserMatchCurrentUser(RunUser)
|
||||||
|
|
|
@ -91,7 +91,7 @@ func HTMLRenderer() *render.Render {
|
||||||
Funcs: NewFuncMap(),
|
Funcs: NewFuncMap(),
|
||||||
Asset: GetAsset,
|
Asset: GetAsset,
|
||||||
AssetNames: GetAssetNames,
|
AssetNames: GetAssetNames,
|
||||||
IsDevelopment: !setting.IsProd(),
|
IsDevelopment: !setting.IsProd,
|
||||||
DisableHTTPErrorRendering: true,
|
DisableHTTPErrorRendering: true,
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
@ -62,7 +62,7 @@ func Middlewares() []func(http.Handler) http.Handler {
|
||||||
if err := recover(); err != nil {
|
if err := recover(); err != nil {
|
||||||
combinedErr := fmt.Sprintf("PANIC: %v\n%s", err, string(log.Stack(2)))
|
combinedErr := fmt.Sprintf("PANIC: %v\n%s", err, string(log.Stack(2)))
|
||||||
log.Error("%v", combinedErr)
|
log.Error("%v", combinedErr)
|
||||||
if setting.IsProd() {
|
if setting.IsProd {
|
||||||
http.Error(resp, http.StatusText(500), 500)
|
http.Error(resp, http.StatusText(500), 500)
|
||||||
} else {
|
} else {
|
||||||
http.Error(resp, combinedErr, 500)
|
http.Error(resp, combinedErr, 500)
|
||||||
|
|
|
@ -40,7 +40,7 @@ func installRecovery() func(next http.Handler) http.Handler {
|
||||||
if err := recover(); err != nil {
|
if err := recover(); err != nil {
|
||||||
combinedErr := fmt.Sprintf("PANIC: %v\n%s", err, string(log.Stack(2)))
|
combinedErr := fmt.Sprintf("PANIC: %v\n%s", err, string(log.Stack(2)))
|
||||||
log.Error(combinedErr)
|
log.Error(combinedErr)
|
||||||
if setting.IsProd() {
|
if setting.IsProd {
|
||||||
http.Error(w, http.StatusText(500), 500)
|
http.Error(w, http.StatusText(500), 500)
|
||||||
} else {
|
} else {
|
||||||
http.Error(w, combinedErr, 500)
|
http.Error(w, combinedErr, 500)
|
||||||
|
@ -63,7 +63,7 @@ func installRecovery() func(next http.Handler) http.Handler {
|
||||||
|
|
||||||
w.Header().Set(`X-Frame-Options`, setting.CORSConfig.XFrameOptions)
|
w.Header().Set(`X-Frame-Options`, setting.CORSConfig.XFrameOptions)
|
||||||
|
|
||||||
if !setting.IsProd() {
|
if !setting.IsProd {
|
||||||
store["ErrorMsg"] = combinedErr
|
store["ErrorMsg"] = combinedErr
|
||||||
}
|
}
|
||||||
err = rnd.HTML(w, 500, "status/500", templates.BaseVars().Merge(store))
|
err = rnd.HTML(w, 500, "status/500", templates.BaseVars().Merge(store))
|
||||||
|
|
|
@ -131,7 +131,7 @@ func Recovery() func(next http.Handler) http.Handler {
|
||||||
|
|
||||||
sessionStore := session.GetSession(req)
|
sessionStore := session.GetSession(req)
|
||||||
if sessionStore == nil {
|
if sessionStore == nil {
|
||||||
if setting.IsProd() {
|
if setting.IsProd {
|
||||||
http.Error(w, http.StatusText(500), 500)
|
http.Error(w, http.StatusText(500), 500)
|
||||||
} else {
|
} else {
|
||||||
http.Error(w, combinedErr, 500)
|
http.Error(w, combinedErr, 500)
|
||||||
|
@ -164,7 +164,7 @@ func Recovery() func(next http.Handler) http.Handler {
|
||||||
|
|
||||||
w.Header().Set(`X-Frame-Options`, setting.CORSConfig.XFrameOptions)
|
w.Header().Set(`X-Frame-Options`, setting.CORSConfig.XFrameOptions)
|
||||||
|
|
||||||
if !setting.IsProd() {
|
if !setting.IsProd {
|
||||||
store["ErrorMsg"] = combinedErr
|
store["ErrorMsg"] = combinedErr
|
||||||
}
|
}
|
||||||
err = rnd.HTML(w, 500, "status/500", templates.BaseVars().Merge(store))
|
err = rnd.HTML(w, 500, "status/500", templates.BaseVars().Merge(store))
|
||||||
|
|
|
@ -477,7 +477,7 @@ func RegisterRoutes(m *web.Route) {
|
||||||
m.Post("/action/{action}", user.Action)
|
m.Post("/action/{action}", user.Action)
|
||||||
}, reqSignIn)
|
}, reqSignIn)
|
||||||
|
|
||||||
if !setting.IsProd() {
|
if !setting.IsProd {
|
||||||
m.Get("/template/*", dev.TemplatePreview)
|
m.Get("/template/*", dev.TemplatePreview)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -64,7 +64,7 @@ func (s *SSPI) Init() error {
|
||||||
Funcs: templates.NewFuncMap(),
|
Funcs: templates.NewFuncMap(),
|
||||||
Asset: templates.GetAsset,
|
Asset: templates.GetAsset,
|
||||||
AssetNames: templates.GetAssetNames,
|
AssetNames: templates.GetAssetNames,
|
||||||
IsDevelopment: !setting.IsProd(),
|
IsDevelopment: !setting.IsProd,
|
||||||
})
|
})
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue