python-poetry/Makefile

50 lines
1.5 KiB
Makefile
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# COLORS
GREEN := $(shell tput -Txterm setaf 2)
WHITE := $(shell tput -Txterm setaf 7)
YELLOW := $(shell tput -Txterm setaf 3)
RESET := $(shell tput -Txterm sgr0)
.DEFAULT_GOAL := help
.PHONY: help lint-deps install lock requirements-dev requirements-prod
## Проверить зависимостей
lint-deps:
poetry run poetry check
poetry run pip check
poetry run safety check --full-report
poetry run pip-audit
## Сгенерировать poetry.lock файл
lock:
poetry lock
## Установить все зависимости
install:
poetry install --sync --no-interaction --no-ansi --no-root
## Сгенерировать requirements.txt файл с dev зависимостями
requirements-dev:
poetry export -f requirements.txt --with dev --without-hashes --output requirements.txt
## Сгенерировать requirements.txt с only main зависимостями
requirements-prod:
poetry export -f requirements.txt --without-hashes --output requirements.txt
## Show help
help:
@echo ''
@echo 'Usage:'
@echo ' ${YELLOW}make${RESET} ${GREEN}<target>${RESET}'
@echo ''
@echo 'Targets:'
@awk '/^[a-zA-Z\-_0-9]+:/ { \
helpMessage = match(lastLine, /^## (.*)/); \
if (helpMessage) { \
helpCommand = $$1; sub(/:$$/, "", helpCommand); \
helpMessage = substr(lastLine, RSTART + 3, RLENGTH); \
printf " ${YELLOW}%-$(TARGET_MAX_CHAR_NUM)25s${RESET} ${GREEN}%s${RESET}\n", helpCommand, helpMessage; \
} \
} \
{ lastLine = $$0 }' $(MAKEFILE_LIST)
@echo ''