-
Notifications
You must be signed in to change notification settings - Fork 6
/
makefile
49 lines (39 loc) · 1.75 KB
/
makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
PYTHON = python
APP = app/main.py
PACKAGE =""
# Устанавливает зависимости, указанные в pyproject.toml
install:
poetry install --no-root
# Добавляет новый пакет в проект
# Использование: make install-package PACKAGE=<имя_пакета>
install-package:
poetry add $(PACKAGE)
# Обновляет все зависимости до последних версий
update:
poetry update
# Запускает основное приложение
run:
poetry run $(PYTHON) $(APP)
# Очищает файлы .pyc, которые создаются при компиляции Python
clean:
find . -name "*.pyc" -delete
# Форматирует код по стандарту black
format:
poetry run black .
# Применяет последние миграции к базе данных
migrate:
poetry run alembic upgrade head
# Откатывает последнюю миграцию базы данных
downgrade:
poetry run alembic downgrade -1
# Создает новую миграцию на основе изменений в моделях
# Использование: make makemigration msg="описание изменений"
makemigration:
poetry run alembic revision --autogenerate -m "$(msg)"
# Выполняет набор команд для Docker Compose:
# 1. Проставляет текущее состояние миграций.
# 2. Генерирует новую миграцию.
# 3. Применяет миграции.
# 4. Запускает основное приложение.
docker_compose_command:
cd app && poetry run alembic stamp head && poetry run alembic revision --autogenerate && poetry run alembic upgrade head && poetry run python main.py