mirror of
https://codeberg.org/forgejo/forgejo
synced 2024-11-30 13:56:09 +01:00
50a72e7a83
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>
25 lines
540 B
Go
25 lines
540 B
Go
// Copyright 2016 The Gitea Authors. All rights reserved.
|
||
// SPDX-License-Identifier: MIT
|
||
|
||
//go:build bindata
|
||
|
||
package public
|
||
|
||
import (
|
||
"time"
|
||
|
||
"code.gitea.io/gitea/modules/assetfs"
|
||
"code.gitea.io/gitea/modules/timeutil"
|
||
)
|
||
|
||
var _ GzipBytesProvider = (*vfsgen۰CompressedFileInfo)(nil)
|
||
|
||
// GlobalModTime provide a global mod time for embedded asset files
|
||
func GlobalModTime(filename string) time.Time {
|
||
return timeutil.GetExecutableModTime()
|
||
}
|
||
|
||
func BuiltinAssets() *assetfs.Layer {
|
||
return assetfs.Bindata("builtin(bindata)", Assets)
|
||
}
|