diff --git a/Makefile b/Makefile index 7aaf248900..eb164f1080 100644 --- a/Makefile +++ b/Makefile @@ -35,3 +35,48 @@ sql: attach-server: docker exec -it docker_immich-server_1 sh + +MODULES = e2e server web cli sdk + +audit-%: + npm --prefix $(subst sdk,open-api/typescript-sdk,$*) audit fix +install-%: + npm --prefix $(subst sdk,open-api/typescript-sdk,$*) i +build-cli: build-sdk +build-web: build-sdk +build-%: install-% + npm --prefix $(subst sdk,open-api/typescript-sdk,$*) run | grep 'build' >/dev/null \ + && npm --prefix $(subst sdk,open-api/typescript-sdk,$*) run build || true +format-%: + npm --prefix $(subst sdk,open-api/typescript-sdk,$*) run | grep 'format:fix' >/dev/null \ + && npm --prefix $(subst sdk,open-api/typescript-sdk,$*) run format:fix || true +lint-%: + npm --prefix $* run lint:fix +check-%: + npm --prefix $* run check +check-web: + npm --prefix web run check:typescript + npm --prefix web run check:svelte +test-%: + npm --prefix $* run test +test-e2e: + docker compose -f ./e2e/docker-compose.yml build + npm --prefix e2e run test + npm --prefix e2e run test:web + +build-all: $(foreach M,$(MODULES),build-$M) ; +install-all: $(foreach M,$(MODULES),install-$M) ; +check-all: $(foreach M,$(MODULES),check-$M) ; +lint-all: $(foreach M,$(MODULES),lint-$M) ; +format-all: $(foreach M,$(MODULES),format-$M) ; +audit-all: $(foreach M,$(MODULES),audit-$M) ; +hygiene-all: lint-all format-all check-all sql audit-all; +test-all: $(foreach M,$(MODULES),test-$M) ; + +clean: + find . -name "node_modules" -type d -prune -exec rm -rf '{}' + + find . -name "dist" -type d -prune -exec rm -rf '{}' + + find . -name "build" -type d -prune -exec rm -rf '{}' + + find . -name "svelte-kit" -type d -prune -exec rm -rf '{}' + + docker compose -f ./docker/docker-compose.dev.yml rm -v -f || true + docker compose -f ./e2e/docker-compose.yml rm -v -f || true