diff --git a/build/generate-gitignores.go b/build/generate-gitignores.go index 164af8f71e..1e09c83a6a 100644 --- a/build/generate-gitignores.go +++ b/build/generate-gitignores.go @@ -15,7 +15,6 @@ import ( "path/filepath" "strings" - "code.gitea.io/gitea/modules/setting" "code.gitea.io/gitea/modules/util" ) @@ -33,7 +32,7 @@ func main() { flag.StringVar(&githubApiToken, "token", "", "github api token") flag.Parse() - file, err := os.CreateTemp(setting.TempDir(), prefix) + file, err := os.CreateTemp(os.TempDir(), prefix) if err != nil { log.Fatalf("Failed to create temp file. %s", err) } diff --git a/build/generate-licenses.go b/build/generate-licenses.go index 23236e32e1..66e1d37755 100644 --- a/build/generate-licenses.go +++ b/build/generate-licenses.go @@ -22,7 +22,6 @@ import ( "code.gitea.io/gitea/build/license" "code.gitea.io/gitea/modules/json" - "code.gitea.io/gitea/modules/setting" "code.gitea.io/gitea/modules/util" ) @@ -40,7 +39,7 @@ func main() { flag.StringVar(&githubApiToken, "token", "", "github api token") flag.Parse() - file, err := os.CreateTemp(setting.TempDir(), prefix) + file, err := os.CreateTemp(os.TempDir(), prefix) if err != nil { log.Fatalf("Failed to create temp file. %s", err) } diff --git a/modules/repository/temp.go b/modules/repository/temp.go index 9398b4c0cc..4a0ad24876 100644 --- a/modules/repository/temp.go +++ b/modules/repository/temp.go @@ -15,7 +15,12 @@ import ( // localCopyPath returns the local repository temporary copy path. func localCopyPath() string { - return filepath.Join(setting.TempDir(), "local-repo") + if setting.Repository.Local.LocalCopyPath == "" { + return filepath.Join(os.TempDir(), "local-repo") + } else if !filepath.IsAbs(setting.Repository.Local.LocalCopyPath) { + return filepath.Join(os.TempDir(), setting.Repository.Local.LocalCopyPath) + } + return setting.Repository.Local.LocalCopyPath } func CleanUpTemporaryPaths() { diff --git a/tests/test_utils.go b/tests/test_utils.go index 6f9592b204..e5caf6cb48 100644 --- a/tests/test_utils.go +++ b/tests/test_utils.go @@ -78,7 +78,7 @@ func InitTest(requireGitea bool) { unittest.InitSettings() setting.Repository.DefaultBranch = "master" // many test code still assume that default branch is called "master" - _ = util.RemoveAll(repo_module.LocalCopyPath()) + repo_module.CleanUpTemporaryPaths() if err := git.InitFull(context.Background()); err != nil { log.Fatal("git.InitOnceWithSync: %v", err)