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
pull/54/head
Matt Baer 6 years ago
parent d4a08723aa
commit 739afd2310
  1. 2
      .gitignore
  2. 19
      Makefile
  3. 4
      app.go

2
.gitignore vendored

@ -5,3 +5,5 @@
build
config.ini
*.db
bindata.go

@ -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)

@ -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…
Cancel
Save