Add gitea manager reload-templates command (#24843)
This can be useful to update custom templates in production mode, when they are updated frequently and a full Gitea restart each time is disruptive.
This commit is contained in:

committed by
GitHub

parent
922c83eea3
commit
3588edbb08
@ -67,6 +67,7 @@ func Routes() *web.Route {
|
||||
r.Get("/serv/command/{keyid}/{owner}/{repo}", ServCommand)
|
||||
r.Post("/manager/shutdown", Shutdown)
|
||||
r.Post("/manager/restart", Restart)
|
||||
r.Post("/manager/reload-templates", ReloadTemplates)
|
||||
r.Post("/manager/flush-queues", bind(private.FlushOptions{}), FlushQueues)
|
||||
r.Post("/manager/pause-logging", PauseLogging)
|
||||
r.Post("/manager/resume-logging", ResumeLogging)
|
||||
|
@ -15,9 +15,22 @@ import (
|
||||
"code.gitea.io/gitea/modules/private"
|
||||
"code.gitea.io/gitea/modules/queue"
|
||||
"code.gitea.io/gitea/modules/setting"
|
||||
"code.gitea.io/gitea/modules/templates"
|
||||
"code.gitea.io/gitea/modules/web"
|
||||
)
|
||||
|
||||
// ReloadTemplates reloads all the templates
|
||||
func ReloadTemplates(ctx *context.PrivateContext) {
|
||||
err := templates.ReloadHTMLTemplates()
|
||||
if err != nil {
|
||||
ctx.JSON(http.StatusInternalServerError, private.Response{
|
||||
UserMsg: fmt.Sprintf("Template error: %v", err),
|
||||
})
|
||||
return
|
||||
}
|
||||
ctx.PlainText(http.StatusOK, "success")
|
||||
}
|
||||
|
||||
// FlushQueues flushes all the Queues
|
||||
func FlushQueues(ctx *context.PrivateContext) {
|
||||
opts := web.GetForm(ctx).(*private.FlushOptions)
|
||||
|
Reference in New Issue
Block a user