Merge pull request #2027 from bingoohuang/master

promote to go:embed instead of github.com/rakyll/statik
This commit is contained in:
Chris Lu authored and GitHub committed 2021-04-27 02:48:47 -07:00
commit 5861ba4608
4 files changed
+18 -28

No files matched your search

+1 -3
View File
@@ -1,6 +1,6 @@
module github.com/chrislusf/seaweedfs
go 1.12
go 1.16
require (
cloud.google.com/go v0.58.0 // indirect
@@ -60,7 +60,6 @@ require (
github.com/peterh/liner v1.1.0
github.com/pierrec/lz4 v2.2.7+incompatible // indirect
github.com/prometheus/client_golang v1.3.0
github.com/rakyll/statik v0.1.7
github.com/rcrowley/go-metrics v0.0.0-20190826022208-cac0b30c2563 // indirect
github.com/seaweedfs/fuse v1.1.4
github.com/seaweedfs/goexif v1.0.2
@@ -76,7 +75,6 @@ require (
github.com/tidwall/match v1.0.1
github.com/tsuna/gohbase v0.0.0-20201125011725-348991136365
github.com/valyala/bytebufferpool v1.0.0
github.com/valyala/fasthttp v1.20.0
github.com/viant/assertly v0.5.4 // indirect
github.com/viant/ptrie v0.3.0
github.com/viant/toolbox v0.33.2 // indirect
+7 -9
View File
@@ -5,6 +5,7 @@ import (
"errors"
"fmt"
"io"
"io/fs"
"mime/multipart"
"net/http"
"path/filepath"
@@ -21,19 +22,14 @@ import (
"github.com/chrislusf/seaweedfs/weed/util"
"github.com/gorilla/mux"
statik "github.com/rakyll/statik/fs"
_ "github.com/chrislusf/seaweedfs/weed/statik"
)
var serverStats *stats.ServerStats
var startTime = time.Now()
var statikFS http.FileSystem
func init() {
serverStats = stats.NewServerStats()
go serverStats.Start()
statikFS, _ = statik.New()
}
func writeJson(w http.ResponseWriter, r *http.Request, httpStatus int, obj interface{}) (err error) {
@@ -212,14 +208,16 @@ func statsMemoryHandler(w http.ResponseWriter, r *http.Request) {
writeJsonQuiet(w, r, http.StatusOK, m)
}
var StaticFS fs.FS
func handleStaticResources(defaultMux *http.ServeMux) {
defaultMux.Handle("/favicon.ico", http.FileServer(statikFS))
defaultMux.Handle("/seaweedfsstatic/", http.StripPrefix("/seaweedfsstatic", http.FileServer(statikFS)))
defaultMux.Handle("/favicon.ico", http.FileServer(http.FS(StaticFS)))
defaultMux.Handle("/seaweedfsstatic/", http.StripPrefix("/seaweedfsstatic", http.FileServer(http.FS(StaticFS))))
}
func handleStaticResources2(r *mux.Router) {
r.Handle("/favicon.ico", http.FileServer(statikFS))
r.PathPrefix("/seaweedfsstatic/").Handler(http.StripPrefix("/seaweedfsstatic", http.FileServer(statikFS)))
r.Handle("/favicon.ico", http.FileServer(http.FS(StaticFS)))
r.PathPrefix("/seaweedfsstatic/").Handler(http.StripPrefix("/seaweedfsstatic", http.FileServer(http.FS(StaticFS))))
}
func adjustHeaderContentDisposition(w http.ResponseWriter, r *http.Request, filename string) {
-13
View File
@@ -1,13 +0,0 @@
// Code generated by statik. DO NOT EDIT.
// Package statik contains static assets.
package statik
import (
"github.com/rakyll/statik/fs"
)
func init() {
data := "PK\x03\x04\x14\x00\x08\x00\x08\x00;/TL\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00%\x00 \x00bootstrap/3.3.1/css/bootstrap.min.cssUT\x05\x00\x01\xe3\xb8\x8bZ\xec\xbd\xeb\x93\xe3\xb8\xb1'\xfa\xfd\xfe\x15rOtL\xb7[d\x93z\x96\xa4p]\x9f\xeb\xdd\xd8\xe3\x88\xf5\xf9\xb2\xfe\xb0\x11\xe3\xb97 \x12\x92\xe8\xa1H\x1e\x92\xaa\xaa\x1e\xad\xf6o\xbfA<\x13@\x82\xa4\xd4\xe5\xc7F\xf8t\x1cO \xf8!\x91\xc8L \x93x~\xfd\xedo\xfe\xaf\xc9o'\xffOY\xb6M[\x93j\xf22\x0f\xe7a<\xf9tj\xdbj\xfb\xf5\xeb\x91\xb6{\x99\x17&\xe5\xf9s\x87\xfeCY}\xab\xb3\xe3\xa9\x9d\xcc\xa28\x0efQ\xbc\x98\xfc\xf95k[ZO'\x7f,\x92\xb0\x03\xfd\xf7,\xa1EC\xd3\xc9\xa5Hi=\xf9\xd3\x1f\xff\xcc\x896\x1d\xd5\xac=]\xf6\x1d\xbd\xaf\xed\xeb\xbe\xf9\xaa\xaa\xf8\xba\xcf\xcb\xfd\xd73iZZ\x7f\xfd\xef\x7f\xfc\xc3\x7f\xfd\x8f\xff\xf1_\xbb*\xbf~\xfd\xedo&EY\x9fI\x9e\xfdJ\xc3\xa4i:F\xa3p6\xf9_\x8c\xb2\xa8l\xf2\xbf&\xc7\xac\x0d\xb3\xf2\xab\xc2N~\xfb\xf5\xd4\x9e\xf3\xeb\xa1,\xda\xe0@\xceY\xfem\xdb\x90\xa2 \x1aZg\x87]\xf0J\xf7\xbfdm\xd0\xd2\xb76h\xb2_i@\xd2\xbf^\x9av\x1bG\xd1\xc7]pn\xf0\x9c\xdb\xbeL\xbf]\xcf\xa4>f\xc56\xba\x91\xba\xcd\x92\x9cNI\x93\xa5t\x9a\xd2\x96dy3=d\xc7\x84TmV\x16\xdd\x9f\x97\x9aN\x0fe\xd9\xc9\xe8DI\xda\xfd\xe7X\x97\x97jz&Y1=\xd3\xe22-\xc8\xcb\xb4\xa1 +\xd1\\\xcegR\x7f\xbb\xa6YS\xe5\xe4\xdbv\x9f\x97\xc9/7rI\xb3r\x9a\x90\xe2\x854\xd3\xaa.\x8f5m\x9a\xe9K\x96\xd2R!\xb3\"\xcf\n\x1a\xb0\x02\xbb\x17\xda\xb1F\xf2\x80\xe4\xd9\xb1\xd8\xeeIC\xbb\\Nh[\x94\xed\xa7\x9f\x92\xb2h\xeb2o~\xfe\xacH\x14eAw'\xda\xa9x\x1b\xdd~:eiJ\x8b\x9f\xa7-=W9i\xa9\x81\xbb\x91\xeb\x9e$\xbftm)\xd2 )\xf3\xb2\xde\xb65)\x9a\x8a\xd4\xb4hodK\x926{\xa1S\xb2=\x95/\xb4\xbe\x96\x97\xb6c\xa1\x13\xdb~_\xff\xd4fmN\x7f\xbe\xee\xcb:\xa5u\xb0/\xdb\xb6<o\xe3\xeam\x92\x96mK\xd3\xdb~\xda\xb4uY\x1c\xb9\x06_9S\xeb(\xba\xa5\x87\x82\xa75\xed\xb7\x9cn\xb3\x96\xe4Yr;\xc5R-\xe1jM\xcf\x93h\xc71\xd9\xaft;\xa3\xe7\xdb\x99\xd4\xbf\\9\x97?DQ\xb4\xd3\xbco\x7f8\x1c\xa2[s&\xb9\xb0\x16V\xe6)\xfaxk.\xfbis\xa9\xaeU\xd9d\x9dr\xb65\xcdI\xd7&@{\xbd\xfc\xb8cr\x97b\xf3\x8a\xbe\xa3\xd4\x96\xd56\x08\x97\xf4\xdc\xd1\xbe\x8aF\x07\xe1\xacK\xc9\xceG!\x8dmtk^\x8eLK\xdb\xba,\xdb\xcf\xd7N\x80\x87\xbc|\xddr\x95\xdc\xb8]\xc9\x16\xc7\xf4<YD\xd5\xdb\xedT_\x15\x1b\xd2\xc2\xf7\xe5[\xc7iV\x1c\xb7\x9d\xc6i\xc1\x92v\xc1\xb9\xfc\xd5\x97\x87'\xdf\xaa\x9ajF\xc8\xa5-oI\x99\xd2\xe9/\xfbtZ\xd5t\xda\x90set\xb7sY\x94ME\x12:U\x7f\x01\xc1\xc5\xf4|\xdb_\xda\xb6,\xa6YQ]\xdaiY\xb5\xbcc44\xa7I;\xed: \xa9)Q\xdd\x8d\x15\xdef\xc5\x89\xd6Y\xbb\xe3\xba\x14\xbf\x04%\xcd\xdeK\xd6d\xfb\x9c\xca\x1a8\xc9+\xeb\xd3\xccH\x0fe}\xe6f,\x10\xdd`1a\x8c\xfc\xd4~\xab\xe8\xefx\xf2\xcfS\x90T\xd3\x86\xb6FJs\xd9\x9f\xb3\xf6\xe7\xab\x945\xa9*JjR$t\xcb\xcb\xef\x92K\xdd\x94\xf5\xb6*\xb3\xa2\xa5\xb5\xa8\xec\xa74k\xc8>\xa7\xe9\xcf\xb0Z\x95x\x15\x85Rz \x97\\\xb6m\xbbe*;\x94\xc9\xa5 \xb2\xa2\xa05\xe7\xc4M\xbfV$M;\xe5E;eO\x0cz\x85\x86\xcaG\xca\x1bhMr\xa2\xc9/\xfb\xf2\xcdl4I\xb3R\xb7\x10\x98\x86\xea\xb9\xae1\x81,<Uq\x08\xeb/.\xe7=\xad\x7f\xdenee\xac5ASeE\x00-\xc5\x83./\xad\x89\x96}\x81\x99*\xd4\x1a%urB\xdb\xf4}=d\x87\xd8Agr\x87\x8c\xe6)\xc2\x81\xe6\x9d'\x04IW$G\x1a\xeb+\x90\xd2\xa4\xacI76a6\xc8\xec\x9bU\xde\xd0VYE8_\xd2\xf3$\\\xcd\xd8\x7f\xd6Kz\xde\xc9\x1e6\x99Uo\xd2f\xba\xa1\xb8)\xf3,\x9d4Y\xfeB\xeb[N\x8f\xb4H1\xe3R=\xd5\x1c\x1dd\x87vF\xf0\xb6\xb3s9\xf2w\xe3\x02\xa4\xd7\xb9\x92\x9cT\x0d\xdd\xca?nm:mO\xba\xe2[\x17\x14\xfc\x8f\xf2R't;AB\x8b\xd3r_1\xe7\xbf\x0c\xf6e\x96\xd3\x9a9/#\xc4h\xea\xe4k\xd24_;\x1f\xcc\xa2\x8a\xdf~\xfd\xfd\x99\xa6\x19\x99TuV\xb4\xd7\xdfN\xb7{z(k:\xdd\x92CKk\xe09~\x93\x9d\xab\xb2nI\xd1\xeex\x88p\"i\xf9\xcad\x0d\xb2\x80{\x01N\x11\x00\x0c\xe3\xc3I\xf8rndJ\xd8\x00\xd7\xd2\x94\x0fi\xda\x0c\xb6,\xea\xe2\xae\xfe\xa7SM\x0f?\xab\x0603\xdd~\x98|\xfa0!m[\x7f\xear?O>|\xfe\x00\xfd\xb1\x17\xcd\xb2\x05\x9c\x11\xfe\x7f\x7f\xf7\xe1\x87\x0f\x02?UI\x7f%/\xa4I\xea\xacj\xb7\x1f\x1cb\x1f:\x172e\x01\xca\x7f^\xcaV\x9a\x000\xb5\x1f6\x9b\xcd\xae\"G\x1a\xeckJ~ \xb2\xa2\x8b\xac\xb6\xe4\xa5\xcc\xd2[\xdb\xc5O*\x06aF\x14\xf0\x90*`vvk\xebi\xe7D}\xe5\xbb\xbc3y\x0b^\xb3\xb4=\xb1p\x0e\xc8\xb4\x9a\x9ef\xd3\xd3\xfcZ\xd6\xd5\x89\x14\xcdv\xbe{\xcd\xd2\xf2\xb5\xd9\xceo<\x03Pe\xcd\x12D\x85g1\xc3\x89\x03 \x1c\x16\xe4eOj3v\n\xf7m\xf1\x1c&\xa4\xa6\xed4L\xeb\xb2\xbaT\xcf M\xf6\x8d\xb6\xac\x02\xcc\xf2naN\xf64G\xe4\x17E\xd1-4\xfa\x97\xd3\x9d \x19\x86\x9c\xb4\xe9T\xfeur\x83:\xbb=\\\xf0\x9c:M'\xedi\xea$\xa5\x08gi\x9a\x02*\xb7\xdf\x8bH!\xa1F\xcc\xf0\xe3\x7f\xcb\xbfU\xa7,)\x8bf\xf2\xef$?\xe4Yql~\xdc5u\xb2\xbd\xd4\xf9\xa70\xfc\xda\xa1\x9b\xafG\x05\x0bN\x12\x16\xd4\xf4x\xc9I\x1d\xd2\xb2\xfd|\x7f\x91\xff\xfb\x87\x8c\x1e\xb2\xb7\xcf\x93.6 \xed\xa7\x1f\xe9yO\xd3\x94\xa6AY\xd1\xa2\x1b\x86\x7f\xfc<\x1dO\xf1\xb5<\x1c4\xad\xee\xd7]\xc5\xdb\x16\x94n\xeb\x0b\xbd\x9b\x81\xe6\xe5\xf8\x83\x06\xfc\x7f\n \xf25\xf5\xe6\xe5\xf8\xe3\xe7[\xa8\xb0H\xbc\xdb\xc5\xadq\xf5\xb6C\xbf5F\xe8\x0f\xc4\xeb<\xee\xd8A\x9f\xb0\x88\"#\x86\x8e\xd5\xe8\xc8\xcb\x9d\xcb\xb2=uC?)\xda\x8c\xe4\x19ih\xca\xdds\xd9\xbc\xd9\x98cM\xbe5 \xc9)hQ\xc0F\xfd\xac\xf9E\x8c\xeazH\xfa\xcb\x8c|\x80\xc0*\xbf4\x08ho\x80\xe8\xa5.\xa5\x7f0\x93\x91\xa2\x11I\x8c\xc2\xe7\xac@\xab\x98\xc53Line truncated
fs.Register(data)
}
+10 -3
View File
@@ -1,12 +1,12 @@
//go:generate statik -src=./static
// install this first "go get github.com/rakyll/statik"
package main
import (
"embed"
"fmt"
weed_server "github.com/chrislusf/seaweedfs/weed/server"
flag "github.com/chrislusf/seaweedfs/weed/util/fla9"
"io"
"io/fs"
"math/rand"
"os"
"strings"
@@ -35,6 +35,13 @@ func setExitStatus(n int) {
exitMu.Unlock()
}
//go:embed static
var static embed.FS
func init() {
weed_server.StaticFS, _ = fs.Sub(static, "static")
}
func main() {
glog.MaxSize = 1024 * 1024 * 32
rand.Seed(time.Now().UnixNano())