From 78d17b4b432a4d670843e7e1d99a49e8ffea79b5 Mon Sep 17 00:00:00 2001 From: 6543 <6543@obermui.de> Date: Sat, 8 Aug 2020 16:02:22 +0200 Subject: [PATCH] Make default StaticRootPath compile time settable (#12371) Make it possible to compile the default location of StaticRootPath independent from AppWorkPath Co-authored-by: Andrew Thornton --- docs/content/doc/installation/from-source.en-us.md | 3 ++- modules/setting/setting.go | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/content/doc/installation/from-source.en-us.md b/docs/content/doc/installation/from-source.en-us.md index cf3f599c56..9c7016577f 100644 --- a/docs/content/doc/installation/from-source.en-us.md +++ b/docs/content/doc/installation/from-source.en-us.md @@ -143,7 +143,7 @@ Gitea will search for a number of things from the `CustomPath`. By default this the `custom/` directory in the current working directory when running Gitea. It will also look for its configuration file `CustomConf` in `$CustomPath/conf/app.ini`, and will use the current working directory as the relative base path `AppWorkPath` for a number configurable -values. +values. Finally the static files will be served from `StaticRootPath` which defaults to the `AppWorkPath`. These values, although useful when developing, may conflict with downstream users preferences. @@ -154,6 +154,7 @@ using the `LDFLAGS` environment variable for `make`. The appropriate settings ar * To set the `CustomPath` use `LDFLAGS="-X \"code.gitea.io/gitea/modules/setting.CustomPath=custom-path\""` * For `CustomConf` you should use `-X \"code.gitea.io/gitea/modules/setting.CustomConf=conf.ini\"` * For `AppWorkPath` you should use `-X \"code.gitea.io/gitea/modules/setting.AppWorkPath=working-path\"` +* For `StaticRootPath` you should use `-X \"code.gitea.io/gitea/modules/setting.StaticRootPath=static-root-path\"` Add as many of the strings with their preceding `-X` to the `LDFLAGS` variable and run `make build` with the appropriate `TAGS` as above. diff --git a/modules/setting/setting.go b/modules/setting/setting.go index f98addb3cd..f4b10feee8 100644 --- a/modules/setting/setting.go +++ b/modules/setting/setting.go @@ -652,7 +652,10 @@ func NewContext() { PortToRedirect = sec.Key("PORT_TO_REDIRECT").MustString("80") OfflineMode = sec.Key("OFFLINE_MODE").MustBool() DisableRouterLog = sec.Key("DISABLE_ROUTER_LOG").MustBool() - StaticRootPath = sec.Key("STATIC_ROOT_PATH").MustString(AppWorkPath) + if len(StaticRootPath) == 0 { + StaticRootPath = AppWorkPath + } + StaticRootPath = sec.Key("STATIC_ROOT_PATH").MustString(StaticRootPath) StaticCacheTime = sec.Key("STATIC_CACHE_TIME").MustDuration(6 * time.Hour) AppDataPath = sec.Key("APP_DATA_PATH").MustString(path.Join(AppWorkPath, "data")) EnableGzip = sec.Key("ENABLE_GZIP").MustBool()