diff options
author | guillep2k <18600385+guillep2k@users.noreply.github.com> | 2020-02-01 23:17:44 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-02-02 10:17:44 +0800 |
commit | bcb52aef09160c1057baa97b9275e8fb63587b12 (patch) | |
tree | 30aa80530dc41a0a742a2eac87dd2141b4cfe621 /modules/options/static.go | |
parent | 9b9dd19d7dfe826789f0690f84d9f59470ad9e82 (diff) | |
download | gitea-bcb52aef09160c1057baa97b9275e8fb63587b12.tar.gz gitea-bcb52aef09160c1057baa97b9275e8fb63587b12.zip |
Implement "embedded" command to extract static resources (#9982)
* draft
* Implement extract command
* Fix nits and force args on extract
* Add !bindata stub, support Windows, fmt
* fix vendored flag
* Remove leading slash for matching
* Add docs
* Fix typos
* Add embedded view command
Co-authored-by: zeripath <art27@cantab.net>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
Diffstat (limited to 'modules/options/static.go')
-rw-r--r-- | modules/options/static.go | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/modules/options/static.go b/modules/options/static.go index f8811e43ac..39f56f42f4 100644 --- a/modules/options/static.go +++ b/modules/options/static.go @@ -113,6 +113,37 @@ func fileFromDir(name string) ([]byte, error) { return ioutil.ReadAll(f) } +func Asset(name string) ([]byte, error) { + f, err := Assets.Open("/" + name) + if err != nil { + return nil, err + } + defer f.Close() + return ioutil.ReadAll(f) +} + +func AssetNames() []string { + realFS := Assets.(vfsgen۰FS) + var results = make([]string, 0, len(realFS)) + for k := range realFS { + results = append(results, k[1:]) + } + return results +} + +func AssetIsDir(name string) (bool, error) { + if f, err := Assets.Open("/" + name); err != nil { + return false, err + } else { + defer f.Close() + if fi, err := f.Stat(); err != nil { + return false, err + } else { + return fi.IsDir(), nil + } + } +} + // IsDynamic will return false when using embedded data (-tags bindata) func IsDynamic() bool { return false |