From 2543db86014ca3210eb3af72ae4ea34982b5c83c Mon Sep 17 00:00:00 2001 From: Florian Fischer Date: Mon, 27 Jan 2025 15:56:31 +0100 Subject: add common python Makefile --- Makefile | 20 ++++++++++++++++++++ tools/check-pylint | 22 ++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 Makefile create mode 100755 tools/check-pylint diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..326ceac --- /dev/null +++ b/Makefile @@ -0,0 +1,20 @@ +SRC=$(wildcard *.py) + +.PHONY: check +check: check-pylint check-format check-mypy + +.PHONY: check-pylint +check-pylint: + pylint --rcfile=.pylint.rc -j 0 $(SRC) || ./tools/check-pylint $$? + +.PHONY: check-format +check-format: + yapf -d $(SRC) + +.PHONY: check-format +check-mypy: + mypy $(SRC) + +.PHONY: format +format: + yapf -i $(SRC) diff --git a/tools/check-pylint b/tools/check-pylint new file mode 100755 index 0000000..9b7c7e5 --- /dev/null +++ b/tools/check-pylint @@ -0,0 +1,22 @@ +#!/bin/bash + +PYLINT_EXIT=${1} + +# pylint error masks +FATAL_MASK=1 +ERROR_MASK=2 +WARNING_MASK=4 +REFACTOR_MASK=8 +CONVENTION_MASK=16 +USAGE_ERROR_MASK=32 + +# fail on fatal +[[ $(( $PYLINT_EXIT & $FATAL_MASK )) -gt 0 ]] && exit $PYLINT_EXIT + +# fail on error +[[ $(( $PYLINT_EXIT & $ERROR_MASK )) -gt 0 ]] && exit $PYLINT_EXIT + +# fail on warning +[[ $(( $PYLINT_EXIT & $WARNING_MASK )) -gt 0 ]] && exit $PYLINT_EXIT + +exit 0 -- cgit v1.2.3