Since #20218 introduced internal watching template, template watching should be removed from `air`. This will prevent restart the whole server once the template files changed to speed up developing when using `make watch`. To ensure `make watch` will reuse template watching, this PR introduced a new ENV `GITEA_RUN_MODE` to make sure `make watch` will always run in a dev mode of Gitea so that template watching will open. This PR also added more exclude testdata directories.tags/v1.19.0-rc0
@@ -5,6 +5,6 @@ tmp_dir = ".air" | |||
cmd = "make backend" | |||
bin = "gitea" | |||
include_ext = ["go", "tmpl"] | |||
exclude_dir = ["modules/git/tests", "services/gitdiff/testdata", "modules/avatar/testdata"] | |||
include_dir = ["cmd", "models", "modules", "options", "routers", "services", "templates"] | |||
exclude_dir = ["modules/git/tests", "services/gitdiff/testdata", "modules/avatar/testdata", "models/fixtures", "models/migrations/fixtures", "modules/migration/file_format_testdata", "modules/avatar/identicon/testdata"] | |||
include_dir = ["cmd", "models", "modules", "options", "routers", "services"] | |||
exclude_regex = ["_test.go$", "_gen.go$"] |
@@ -359,7 +359,7 @@ watch-frontend: node-check node_modules | |||
.PHONY: watch-backend | |||
watch-backend: go-check | |||
$(GO) run $(AIR_PACKAGE) -c .air.toml | |||
GITEA_RUN_MODE=dev $(GO) run $(AIR_PACKAGE) -c .air.toml | |||
.PHONY: test | |||
test: test-frontend test-backend |
@@ -1043,7 +1043,10 @@ func loadFromConf(allowEmpty bool, extraConfig string) { | |||
// The following is a purposefully undocumented option. Please do not run Gitea as root. It will only cause future headaches. | |||
// 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) | |||
RunMode = Cfg.Section("").Key("RUN_MODE").MustString("prod") | |||
RunMode = os.Getenv("GITEA_RUN_MODE") | |||
if RunMode == "" { | |||
RunMode = Cfg.Section("").Key("RUN_MODE").MustString("prod") | |||
} | |||
IsProd = strings.EqualFold(RunMode, "prod") | |||
// Does not check run user when the install lock is off. | |||
if InstallLock { |