From 283f6e19741b262c46a8a2ba3f7ba81f01519d70 Mon Sep 17 00:00:00 2001 From: ewy Date: Tue, 22 Sep 2026 18:19:32 +0200 Subject: add build tag for embedding server pages and disable it by default --- server/serve_embedded.go | 20 ++++++++++++++++++++ server/serve_fs.go | 11 +++++++++++ server/server.go | 13 ++----------- 3 files changed, 33 insertions(+), 11 deletions(-) create mode 100644 server/serve_embedded.go create mode 100644 server/serve_fs.go (limited to 'server') diff --git a/server/serve_embedded.go b/server/serve_embedded.go new file mode 100644 index 0000000..fb39d21 --- /dev/null +++ b/server/serve_embedded.go @@ -0,0 +1,20 @@ +//go:build embed + +package server + +import ( + "embed" + "io/fs" + "net/http" +) + +//go:embed web +var web embed.FS + +func serveFiles() { + sub, err := fs.Sub(web, "web") + if err != nil { + panic(err) + } + http.Handle("/", http.FileServer(http.FS(sub))) +} diff --git a/server/serve_fs.go b/server/serve_fs.go new file mode 100644 index 0000000..b11918b --- /dev/null +++ b/server/serve_fs.go @@ -0,0 +1,11 @@ +//go:build !embed + +package server + +import ( + "net/http" +) + +func serveFiles() { + http.Handle("/", http.FileServer(http.Dir("server/web"))) +} diff --git a/server/server.go b/server/server.go index f6773cb..bc5b77d 100644 --- a/server/server.go +++ b/server/server.go @@ -1,9 +1,7 @@ package server import ( - "embed" "fmt" - "io/fs" "net" "net/http" "sakura/cfg" @@ -13,22 +11,15 @@ import ( "github.com/spf13/pflag" ) -//go:embed web -var web embed.FS - func Start() { pflag.Parse() fmt.Println("Server started") addr := net.JoinHostPort(*cfg.Host, strconv.Itoa(*cfg.Port)) fmt.Printf("Listening on %s\n", addr) - sub, err := fs.Sub(web, "web") - if err != nil { - panic(err) - } - http.Handle("/", http.FileServer(http.FS(sub))) + serveFiles() http.HandleFunc(cfg.CreateMethod+" "+cfg.CreatePath, api.GameCreate) http.HandleFunc(cfg.ConnectMethod+" "+cfg.ConnectPath, api.GameConnect) - err = http.ListenAndServe(addr, nil) + err := http.ListenAndServe(addr, nil) if err != nil { panic(err) } -- cgit v1.3.1