POETRY ?= poetry run SRC := ops_bot TESTS := tests fmt: $(POETRY) black $(SRC) $(POETRY) isort --profile black $(SRC) lint: $(POETRY) flake8 $(SRC) $(POETRY) bandit --silent --recursive $(SRC) types: $(POETRY) mypy $(SRC) test: $(POETRY) pytest $(TESTS) ci: lint types test freeze: poetry export --without dev --format=requirements.txt --output requirements.frozen.txt