django_example_ynh/Makefile

61 lines
1.8 KiB
Makefile
Raw Normal View History

2020-12-23 19:53:13 +01:00
SHELL := /bin/bash
2022-08-12 17:56:02 +02:00
MAX_LINE_LENGTH := 100
2020-12-23 19:53:13 +01:00
all: help
help:
@awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z0-9 -]+:.*?## / {printf "\033[36m%-22s\033[0m %s\n", $$1, $$2}' $(MAKEFILE_LIST)
check-poetry:
@if [[ "$(shell poetry --version 2>/dev/null)" == *"Poetry"* ]] ; \
then \
echo "Poetry found, ok." ; \
else \
echo 'Please install poetry first, with e.g.:' ; \
echo 'make install-poetry' ; \
exit 1 ; \
fi
install-poetry: ## install or update poetry
2022-09-19 08:33:12 +02:00
curl -sSL https://install.python-poetry.org | python3 -
2020-12-23 19:53:13 +01:00
install: check-poetry ## install project via poetry
2022-12-21 19:19:37 +01:00
python3 -m venv .venv
2020-12-23 19:53:13 +01:00
poetry install
2022-09-19 08:33:12 +02:00
update: check-poetry ## update the sources and installation and generate "conf/requirements.txt"
2022-12-21 19:19:37 +01:00
python3 -m venv .venv
2022-10-04 09:13:52 +02:00
poetry self update
2022-09-19 08:33:12 +02:00
poetry update -v
poetry install
poetry export -f requirements.txt --output conf/requirements.txt
2020-12-23 19:53:13 +01:00
lint: ## Run code formatters and linter
poetry run isort --check-only .
poetry run flake8 .
2020-12-23 19:53:13 +01:00
fix-code-style: ## Fix code formatting
2020-12-28 20:23:46 +01:00
poetry run black --verbose --safe --line-length=${MAX_LINE_LENGTH} --skip-string-normalization .
2020-12-23 19:53:13 +01:00
poetry run isort .
tox-listenvs: check-poetry ## List all tox test environments
poetry run tox --listenvs
tox: check-poetry ## Run pytest via tox with all environments
poetry run tox
pytest: install ## Run pytest
poetry run pytest
2020-12-23 19:53:13 +01:00
local-test: install ## Run local_test.py to run the project locally
poetry run python3 ./local_test.py
2020-12-23 19:53:13 +01:00
local-diff-settings: ## Run "manage.py diffsettings" with local test
poetry run python3 local_test/opt_yunohost/manage.py diffsettings
safety: ## Run https://github.com/pyupio/safety
poetry run safety check --full-report
2020-12-23 19:53:13 +01:00
##############################################################################
.PHONY: help check-poetry install-poetry install update local-test