Newer
Older
bugtrail / Makefile
.PHONY: help dev web server migrate ext ext-watch ext-test test typecheck build prod down logs

help:
	@echo "make dev         — postgres + API in docker, web panel on :5173"
	@echo "make web         — web panel dev server (Vite, :5173)"
	@echo "make migrate     — apply alembic migrations (docker)"
	@echo "make ext         — build the extension (chrome + firefox)"
	@echo "make ext-watch   — rebuild the extension on change"
	@echo "make ext-test    — e2e smoke test of the built extension (needs dev stack up)"
	@echo "make test        — server tests"
	@echo "make typecheck   — vue-tsc for web + extension"
	@echo "make build       — production build of the web panel"
	@echo "make prod        — production stack (caddy :8081 + API + postgres)"
	@echo "make down        — stop the dev stack"
	@echo "make logs        — follow server logs"

dev:
	docker compose up -d --build
	$(MAKE) web

web:
	npm run dev -w @ltt/web

migrate:
	docker compose exec server alembic upgrade head

ext:
	npm run build -w @ltt/extension
	npm run package -w @ltt/extension   # zips into packages/web/public/ext (download page)

ext-watch:
	npm run watch:chrome -w @ltt/extension

ext-test:
	node packages/extension/e2e.mjs

test:
	docker compose exec server pytest tests/ -q

typecheck:
	npm run typecheck -w @ltt/web
	npm run typecheck -w @ltt/extension

build:
	npm run build -w @ltt/web
	npm run build -w @ltt/extension

prod:
	npm run build -w @ltt/extension
	npm run package -w @ltt/extension   # fresh extension zips for the download page
	npm run build -w @ltt/web
	docker compose -f docker-compose.prod.yml up -d --build

down:
	docker compose down
	-docker compose -f docker-compose.prod.yml down

logs:
	docker compose logs -f server