diff options
author | wxiaoguang <wxiaoguang@gmail.com> | 2023-04-12 18:16:45 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-04-12 18:16:45 +0800 |
commit | 50a72e7a83a16d183a264e969a73cdbc7fb808f4 (patch) | |
tree | 013456110621c36edb3fa0d1bb77906ba8d4e013 /routers/install | |
parent | 42919ccb7cd32ab67d0878baf2bac6cd007899a8 (diff) | |
download | gitea-50a72e7a83a16d183a264e969a73cdbc7fb808f4.tar.gz gitea-50a72e7a83a16d183a264e969a73cdbc7fb808f4.zip |
Use a general approach to access custom/static/builtin assets (#24022)
The idea is to use a Layered Asset File-system (modules/assetfs/layered.go)
For example: when there are 2 layers: "custom", "builtin", when access
to asset "my/page.tmpl", the Layered Asset File-system will first try to
use "custom" assets, if not found, then use "builtin" assets.
This approach will hugely simplify a lot of code, make them testable.
Other changes:
* Simplify the AssetsHandlerFunc code
* Simplify the `gitea embedded` sub-command code
---------
Co-authored-by: Jason Song <i@wolfogre.com>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Diffstat (limited to 'routers/install')
-rw-r--r-- | routers/install/routes.go | 6 | ||||
-rw-r--r-- | routers/install/setting.go | 3 |
2 files changed, 2 insertions, 7 deletions
diff --git a/routers/install/routes.go b/routers/install/routes.go index 82d9c34b41..df82ba2e4c 100644 --- a/routers/install/routes.go +++ b/routers/install/routes.go @@ -8,7 +8,6 @@ import ( "fmt" "html" "net/http" - "path" "code.gitea.io/gitea/modules/httpcache" "code.gitea.io/gitea/modules/log" @@ -89,10 +88,7 @@ func Routes(ctx goctx.Context) *web.Route { r.Use(middle) } - r.Use(web.WrapWithPrefix(public.AssetsURLPathPrefix, public.AssetsHandlerFunc(&public.Options{ - Directory: path.Join(setting.StaticRootPath, "public"), - Prefix: public.AssetsURLPathPrefix, - }), "InstallAssetsHandler")) + r.Use(web.WrapWithPrefix("/assets/", public.AssetsHandlerFunc("/assets/"), "AssetsHandler")) r.Use(session.Sessioner(session.Options{ Provider: setting.SessionConfig.Provider, diff --git a/routers/install/setting.go b/routers/install/setting.go index 68984f1e78..dadefa26a2 100644 --- a/routers/install/setting.go +++ b/routers/install/setting.go @@ -30,7 +30,7 @@ func PreloadSettings(ctx context.Context) bool { } setting.LoadSettingsForInstall() - svg.Init() + _ = svg.Init() } return !setting.InstallLock @@ -47,6 +47,5 @@ func reloadSettings(ctx context.Context) { } else { log.Fatal("ORM engine initialization failed: %v", err) } - svg.Init() } } |