39 lines
846 B
Makefile
39 lines
846 B
Makefile
ifeq (run,$(firstword $(MAKECMDGOALS)))
|
|
# use the rest as arguments for "run"
|
|
RUN_ARGS := $(wordlist 2,$(words $(MAKECMDGOALS)),$(MAKECMDGOALS))
|
|
# ...and turn them into do-nothing targets
|
|
$(eval $(RUN_ARGS):;@:)
|
|
endif
|
|
|
|
.PHONY: all build run test
|
|
|
|
# code quality
|
|
all: black typehint lint
|
|
|
|
black:
|
|
uv run isort --multi-line 3 --profile black src/ tests/
|
|
uv run black --target-version py311 src/ tests/
|
|
|
|
typehint:
|
|
uv run mypy --ignore-missing-imports src/ tests/
|
|
|
|
lint:
|
|
uv run pylint src/
|
|
|
|
# check
|
|
check: all
|
|
|
|
# build
|
|
build:
|
|
# https://stackoverflow.com/questions/24347450/how-do-you-add-additional-files-to-a-wheel
|
|
rm -rf build/* dist/* *.egg-info
|
|
uv sync
|
|
uv build --wheel --out-dir dist
|
|
docker build -t source.madyanne.fr/yax/dumbremind .
|
|
|
|
publish:
|
|
docker push source.madyanne.fr/yax/dumbremind
|
|
|
|
# run
|
|
run:
|
|
uv run -m dumbremind
|