aboutsummaryrefslogtreecommitdiffstats
path: root/modules
diff options
context:
space:
mode:
authorwxiaoguang <wxiaoguang@gmail.com>2023-06-24 17:13:35 +0800
committerGitHub <noreply@github.com>2023-06-24 09:13:35 +0000
commitcc1d61f1f5d4b2e60135186e44550745f0e13f0f (patch)
tree045c7dfd007eb94109b8661c05e4b022a036ca1b /modules
parent71446eee99eaa78d65a85f4986b0466f48bc3d27 (diff)
downloadgitea-cc1d61f1f5d4b2e60135186e44550745f0e13f0f.tar.gz
gitea-cc1d61f1f5d4b2e60135186e44550745f0e13f0f.zip
Use InitWorkPathAndCfgProvider for environment-to-ini to avoid unnecessary checks (#25480)
Fix #25481 The `InitWorkPathAndCommonConfig` calls `LoadCommonSettings` which does many checks like "current user is root or not". Some commands like "environment-to-ini" shouldn't do such check, because it might be run with "root" user at the moment (eg: the docker's setup script) ps: in the future, the docker's setup script should be improved to avoid Gitea's command running with "root"
Diffstat (limited to 'modules')
-rw-r--r--modules/setting/path.go8
1 files changed, 6 insertions, 2 deletions
diff --git a/modules/setting/path.go b/modules/setting/path.go
index 91bb2e9bb7..163f1d1590 100644
--- a/modules/setting/path.go
+++ b/modules/setting/path.go
@@ -89,6 +89,12 @@ func (s *stringWithDefault) Set(v string) {
// InitWorkPathAndCommonConfig will set AppWorkPath, CustomPath and CustomConf, init default config provider by CustomConf and load common settings,
func InitWorkPathAndCommonConfig(getEnvFn func(name string) string, args ArgWorkPathAndCustomConf) {
+ InitWorkPathAndCfgProvider(getEnvFn, args)
+ LoadCommonSettings()
+}
+
+// InitWorkPathAndCfgProvider will set AppWorkPath, CustomPath and CustomConf, init default config provider by CustomConf
+func InitWorkPathAndCfgProvider(getEnvFn func(name string) string, args ArgWorkPathAndCustomConf) {
tryAbsPath := func(paths ...string) string {
s := paths[len(paths)-1]
for i := len(paths) - 2; i >= 0; i-- {
@@ -186,6 +192,4 @@ func InitWorkPathAndCommonConfig(getEnvFn func(name string) string, args ArgWork
AppWorkPath = tmpWorkPath.Value
CustomPath = tmpCustomPath.Value
CustomConf = tmpCustomConf.Value
-
- LoadCommonSettings()
}