Permalink
Switch branches/tags
Nothing to show
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
69 lines (68 sloc) 2.28 KB
export GO111MODULE=on
GOIMPORTS=goimports
BINARY_NAME=photoprism
DOCKER_TAG=`date -u +%Y%m%d`
all: download dep js build
install: install-bin install-assets install-config
install-bin:
scripts/build.sh prod /usr/local/bin/$(BINARY_NAME)
install-assets:
mkdir -p /srv/photoprism/photos
mkdir -p /srv/photoprism/cache
mkdir -p /srv/photoprism/database
cp -r assets/server /srv/photoprism
cp -r assets/tensorflow /srv/photoprism
find /srv/photoprism -name '.*' -type f -delete
install-config:
mkdir -p /etc/photoprism
test -e /etc/photoprism/photoprism.yml || cp -n configs/photoprism.yml /etc/photoprism/photoprism.yml
build:
scripts/build.sh debug $(BINARY_NAME)
js:
(cd frontend && yarn install --frozen-lockfile --prod)
(cd frontend && env NODE_ENV=production npm run build)
start:
go run cmd/photoprism/photoprism.go start
migrate:
go run cmd/photoprism/photoprism.go migrate
test:
go test -tags=slow -timeout 20m -v ./internal/... | scripts/colorize-tests.sh
test-fast:
go test -timeout 5m -v ./internal/... | scripts/colorize-tests.sh
test-race:
go test -tags=slow -race -timeout 60m -v ./internal/... | scripts/colorize-tests.sh
test-codecov:
go test -tags=slow -timeout 30m -coverprofile=coverage.txt -covermode=atomic -v ./internal/...
scripts/codecov.sh
test-coverage:
go test -tags=slow -timeout 30m -coverprofile=coverage.txt -covermode=atomic -v ./internal/...
go tool cover -html=coverage.txt -o coverage.html
clean:
go clean
rm -f $(BINARY_NAME)
download:
scripts/download-inception.sh
deploy-photoprism:
scripts/docker-build.sh photoprism $(DOCKER_TAG)
scripts/docker-push.sh photoprism $(DOCKER_TAG)
deploy-demo:
scripts/docker-build.sh demo $(DOCKER_TAG)
scripts/docker-push.sh demo $(DOCKER_TAG)
deploy-development:
scripts/docker-build.sh development $(DOCKER_TAG)
scripts/docker-push.sh development $(DOCKER_TAG)
deploy-tensorflow:
scripts/docker-build.sh tensorflow $(DOCKER_TAG)
scripts/docker-push.sh tensorflow $(DOCKER_TAG)
deploy-darktable:
DARKTABLE_VERSION="$(awk '$2 == "DARKTABLE_VERSION" { print $3; exit }' docker/darktable/Dockerfile)"
scripts/docker-build.sh darktable $(DARKTABLE_VERSION)
scripts/docker-push.sh darktable $(DARKTABLE_VERSION)
fmt:
goimports -w internal cmd
go fmt ./internal/... ./cmd/...
dep:
go build -v ./...
go mod tidy
upgrade:
go get -u