photoprism/Makefile

62 lines
1.7 KiB
Makefile
Raw Normal View History

export GO111MODULE=on
GOCMD=go
GOINSTALL=$(GOCMD) install
GOBUILD=$(GOCMD) build
GOMOD=$(GOCMD) mod
GORUN=$(GOCMD) run
GOCLEAN=$(GOCMD) clean
GOTEST=$(GOCMD) test
GOTOOL=$(GOCMD) tool
GOGET=$(GOCMD) get
2018-09-06 14:47:32 +02:00
GOFMT=$(GOCMD) fmt
GOIMPORTS=goimports
BINARY_NAME=photoprism
all: tensorflow-model dep js build
install: install-bin install-assets install-config
install-bin:
$(GOINSTALL) cmd/photoprism/photoprism.go
install-assets:
mkdir -p /var/photoprism
mkdir -p /var/photoprism/photos
mkdir -p /var/photoprism/thumbnails
cp -r assets/favicons /var/photoprism
cp -r assets/public /var/photoprism
cp -r assets/templates /var/photoprism
cp -r assets/tensorflow /var/photoprism
install-config:
mkdir -p /etc/photoprism
2018-09-18 15:13:02 +02:00
test -e /etc/photoprism/photoprism.yml || cp -n configs/photoprism.yml /etc/photoprism/photoprism.yml
build:
2018-09-05 22:55:28 +02:00
$(GOBUILD) cmd/photoprism/photoprism.go
js:
2018-09-13 20:54:34 +02:00
(cd frontend && yarn install --prod)
(cd frontend && env NODE_ENV=production npm run build)
2018-09-05 22:55:28 +02:00
start:
$(GORUN) cmd/photoprism/photoprism.go start
2018-09-18 15:21:22 +02:00
migrate:
$(GORUN) cmd/photoprism/photoprism.go migrate
test:
$(GOTEST) -timeout 20m -v ./internal/...
test-race:
$(GOTEST) -race -timeout 60m -v ./internal/...
test-coverage:
$(GOTEST) -timeout 30m -coverprofile=coverage.txt -covermode=atomic -v ./internal/...
test-coverage-html:
$(GOTEST) -timeout 30m -coverprofile=coverage.txt -covermode=atomic -v ./internal/...
$(GOTOOL) cover -html=coverage.txt -o coverage.html
clean:
$(GOCLEAN)
rm -f $(BINARY_NAME)
tensorflow-model:
scripts/download-tf-model.sh
docker-push:
scripts/docker-push.sh
fmt:
$(GOIMPORTS) -w internal cmd
$(GOFMT) ./internal/... ./cmd/...
dep:
2018-09-05 22:55:28 +02:00
$(GOBUILD) -v ./...
$(GOMOD) tidy
2018-09-05 22:55:28 +02:00
upgrade:
$(GOGET) -u