Add Makefile for common dev tasks
Targets: install/dev/saip (deps), test, cov, run, init-db, profile, clean. Interpreter overridable via PY (e.g. make test PY=./venv/bin/python). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
parent
4a911f02bc
commit
b64e9dbd54
46
Makefile
Normal file
46
Makefile
Normal file
|
|
@ -0,0 +1,46 @@
|
||||||
|
# Convenience targets. Override the interpreter with e.g. `make test PY=./venv/bin/python`.
|
||||||
|
PY ?= python
|
||||||
|
|
||||||
|
.PHONY: help install dev saip test cov run init-db profile clean
|
||||||
|
|
||||||
|
help:
|
||||||
|
@echo "Targets:"
|
||||||
|
@echo " install Install runtime dependencies"
|
||||||
|
@echo " dev Install runtime + dev (test) dependencies"
|
||||||
|
@echo " saip Install optional SAIP profile-generation dependencies"
|
||||||
|
@echo " test Run the test suite"
|
||||||
|
@echo " cov Run tests with coverage report"
|
||||||
|
@echo " run Start the provisioning server (CONFIG_PATH to override config)"
|
||||||
|
@echo " init-db Initialise the SQLite database"
|
||||||
|
@echo " profile Generate a sample profile (FORMAT=v2|saip, OUT=file)"
|
||||||
|
@echo " clean Remove caches and __pycache__"
|
||||||
|
|
||||||
|
install:
|
||||||
|
$(PY) -m pip install -r requirements.txt
|
||||||
|
|
||||||
|
dev:
|
||||||
|
$(PY) -m pip install -r requirements.txt -r requirements-dev.txt
|
||||||
|
|
||||||
|
saip:
|
||||||
|
$(PY) -m pip install -r requirements-saip.txt
|
||||||
|
|
||||||
|
test:
|
||||||
|
$(PY) -m pytest tests/ -q
|
||||||
|
|
||||||
|
cov:
|
||||||
|
$(PY) -m pytest tests/ -q --cov=server --cov-report=term-missing
|
||||||
|
|
||||||
|
run:
|
||||||
|
$(PY) -m server.app
|
||||||
|
|
||||||
|
init-db:
|
||||||
|
$(PY) scripts/init_db.py
|
||||||
|
|
||||||
|
FORMAT ?= v2
|
||||||
|
OUT ?= profile.out
|
||||||
|
profile:
|
||||||
|
$(PY) scripts/make_profile.py --format $(FORMAT) --out $(OUT)
|
||||||
|
|
||||||
|
clean:
|
||||||
|
find . -type d -name __pycache__ -not -path './venv/*' -exec rm -rf {} + 2>/dev/null || true
|
||||||
|
rm -rf .pytest_cache
|
||||||
Loading…
Reference in New Issue
Block a user