Embed schema files in binary
This includes schema.sql and sqlite.sql in the release binary, so they no longer need to be included in the release archives. This reduces the number of files extracted, but otherwise leaves all functionality as it was -- especially the --init-db flag. Ref T536
This commit is contained in:
parent
d4a08723aa
commit
739afd2310
|
@ -5,3 +5,5 @@
|
|||
build
|
||||
config.ini
|
||||
*.db
|
||||
|
||||
bindata.go
|
||||
|
|
19
Makefile
19
Makefile
|
@ -12,7 +12,7 @@ IMAGE_NAME=writeas/writefreely
|
|||
|
||||
all : build
|
||||
|
||||
build: deps
|
||||
build: assets deps
|
||||
cd cmd/writefreely; $(GOBUILD) -v
|
||||
|
||||
build-linux: deps
|
||||
|
@ -39,7 +39,7 @@ build-docker :
|
|||
test:
|
||||
$(GOTEST) -v ./...
|
||||
|
||||
run:
|
||||
run: dev-assets
|
||||
$(GOINSTALL) ./...
|
||||
$(BINARY_NAME) --debug
|
||||
|
||||
|
@ -50,14 +50,12 @@ install : build
|
|||
cmd/writefreely/$(BINARY_NAME) --gen-keys
|
||||
cd less/; $(MAKE) install $(MFLAGS)
|
||||
|
||||
release : clean ui
|
||||
release : clean ui assets
|
||||
mkdir build
|
||||
cp -r templates build
|
||||
cp -r pages build
|
||||
cp -r static build
|
||||
mkdir build/keys
|
||||
cp schema.sql build
|
||||
cp sqlite.sql build
|
||||
$(MAKE) build-linux
|
||||
mv build/$(BINARY_NAME)-linux-amd64 build/$(BINARY_NAME)
|
||||
cd build; tar -cvzf ../$(BINARY_NAME)_$(GITREV)_linux_amd64.tar.gz *
|
||||
|
@ -78,6 +76,17 @@ release-docker :
|
|||
ui : force_look
|
||||
cd less/; $(MAKE) $(MFLAGS)
|
||||
|
||||
assets : generate
|
||||
go-bindata -pkg writefreely -ignore=\\.gitignore schema.sql sqlite.sql
|
||||
|
||||
dev-assets : generate
|
||||
go-bindata -pkg writefreely -ignore=\\.gitignore -debug schema.sql sqlite.sql
|
||||
|
||||
generate :
|
||||
@hash go-bindata > /dev/null 2>&1; if [ $$? -ne 0 ]; then \
|
||||
$(GOGET) -u github.com/jteeuwen/go-bindata/...; \
|
||||
fi
|
||||
|
||||
clean :
|
||||
-rm -rf build
|
||||
cd less/; $(MAKE) clean $(MFLAGS)
|
||||
|
|
4
app.go
4
app.go
|
@ -14,7 +14,6 @@ import (
|
|||
"flag"
|
||||
"fmt"
|
||||
"html/template"
|
||||
"io/ioutil"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"os"
|
||||
|
@ -270,12 +269,11 @@ func Serve() {
|
|||
defer shutdown(app)
|
||||
|
||||
schemaFileName := "schema.sql"
|
||||
|
||||
if app.cfg.Database.Type == "sqlite3" {
|
||||
schemaFileName = "sqlite.sql"
|
||||
}
|
||||
|
||||
schema, err := ioutil.ReadFile(schemaFileName)
|
||||
schema, err := Asset(schemaFileName)
|
||||
if err != nil {
|
||||
log.Error("Unable to load schema file: %v", err)
|
||||
os.Exit(1)
|
||||
|
|
Loading…
Reference in New Issue