Blame view

Makefile 1.36 KB
Georg Hopp authored
1 2 3 4
.PHONY: start wasm build run clean

PROFILE ?= dev
ifeq "$(PROFILE)" "release"
5 6
CARGO_PROFILE = --release
WASM_PROFILE = --release
7
WASM_EXTRA = --no-default-features --features wee_alloc
Georg Hopp authored
8
else
9 10 11
CARGO_PROFILE =
WASM_PROFILE = --dev
WASM_EXTRA =
Georg Hopp authored
12 13
endif
14 15 16 17
define msg
	@printf "\033[38;5;197m%s\033[0m\n" "$(1)"
endef
Georg Hopp authored
18
start:
19
	systemfd --no-pid -s 0.0.0.0:3000 -- \
20
		cargo watch -i static/ -i var/ -s "PROFILE=$(PROFILE) make run"
Georg Hopp authored
21 22

wasm:
23
	$(call msg,BUILD WASM UI)
24 25
	@PROFILE=$(PROFILE) wasm-pack build $(WASM_PROFILE) -d ../static/ui \
		-t web ./ui -- $(WASM_EXTRA)
Georg Hopp authored
26 27

build:
28 29
	$(call msg,PATCH DIFFY)
	@cargo patch
30
	$(call msg,BUILD SERVER)
31
	@PROFILE=$(PROFILE) cargo build $(CARGO_PROFILE) --bin artshop-server
Georg Hopp authored
32 33

run: build wasm
34
	$(call msg,RUN SERVER)
35
	@PROFILE=$(PROFILE) cargo run $(CARGO_PROFILE) --bin artshop-server
Georg Hopp authored
36 37 38 39

release:
	docker build -t artshop -f build/Dockerfile .
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
devdb:
	docker network create mariadb-dev-network
	docker run --detach --network mariadb-dev-network --name mariadb-dev \
		-p 3306:3306 \
		--env MARIADB_USER=artshop \
		--env MARIADB_PASSWORD=123456 \
		--env MARIADB_ROOT_PASSWORD=123456 mariadb:latest

enterdb:
	docker exec -it mariadb-dev mysql -D artshop -u artshop -p
#	docker run -it --network mariadb-dev-network --rm mariadb:latest \
#		mysql -h mariadb-dev -u artshop -p

rootdb:
	docker exec -it mariadb-dev mysql -p
Georg Hopp authored
56 57 58
clean:
	cargo clean
	rm -Rf ./static/ui