refactor
This commit is contained in:
62
Makefile
62
Makefile
@@ -1,6 +1,6 @@
|
||||
# Makefile для телеграм-бота розыгрышей
|
||||
|
||||
.PHONY: help install setup run test clean
|
||||
.PHONY: help install setup setup-postgres init-db run test clean
|
||||
|
||||
# По умолчанию показываем справку
|
||||
help:
|
||||
@@ -8,22 +8,26 @@ help:
|
||||
@echo "================================"
|
||||
@echo ""
|
||||
@echo "Доступные команды:"
|
||||
@echo " make install - Установка зависимостей"
|
||||
@echo " make setup - Первоначальная настройка"
|
||||
@echo " make run - Запуск бота"
|
||||
@echo " make test - Запуск тестов и примеров"
|
||||
@echo " make migration - Создание миграции"
|
||||
@echo " make migrate - Применение миграций"
|
||||
@echo " make sample - Создание тестового розыгрыша"
|
||||
@echo " make stats - Показать статистику"
|
||||
@echo " make demo-admin - Демонстрация админ-панели"
|
||||
@echo " make test-admin - Тестирование улучшений админки"
|
||||
@echo " make install - Установка зависимостей"
|
||||
@echo " make setup-postgres- Настройка PostgreSQL БД"
|
||||
@echo " make setup - Первоначальная настройка"
|
||||
@echo " make init-db - Инициализация базы данных"
|
||||
@echo " make run - Запуск бота"
|
||||
@echo " make test - Запуск тестов и примеров"
|
||||
@echo " make migration - Создание миграции"
|
||||
@echo " make migrate - Применение миграций"
|
||||
@echo " make sample - Создание тестового розыгрыша"
|
||||
@echo " make stats - Показать статистику"
|
||||
@echo " make demo-admin - Демонстрация админ-панели"
|
||||
@echo " make test-admin - Тестирование улучшений админки"
|
||||
@echo ""
|
||||
@echo "Быстрый старт:"
|
||||
@echo "Быстрый старт с PostgreSQL:"
|
||||
@echo " 1. cp .env.example .env"
|
||||
@echo " 2. Отредактируйте .env файл"
|
||||
@echo " 3. make setup"
|
||||
@echo " 4. make run"
|
||||
@echo " 3. make setup-postgres"
|
||||
@echo " 4. make migrate"
|
||||
@echo " 5. make setup"
|
||||
@echo " 6. make run"
|
||||
|
||||
# Установка зависимостей
|
||||
install:
|
||||
@@ -31,6 +35,11 @@ install:
|
||||
python3 -m venv .venv
|
||||
. .venv/bin/activate && pip install -r requirements.txt
|
||||
|
||||
# Настройка PostgreSQL базы данных
|
||||
setup-postgres:
|
||||
@echo "🐘 Настройка PostgreSQL базы данных..."
|
||||
./scripts/setup_postgres.sh
|
||||
|
||||
# Первоначальная настройка
|
||||
setup: install
|
||||
@echo "🔧 Настройка проекта..."
|
||||
@@ -38,10 +47,21 @@ setup: install
|
||||
echo "❌ Файл .env не найден! Скопируйте .env.example в .env"; \
|
||||
exit 1; \
|
||||
fi
|
||||
. .venv/bin/activate && python utils.py init
|
||||
. .venv/bin/activate && python utils.py setup-admins
|
||||
. .venv/bin/activate && python -c "from src.utils.utils import setup_admin_users; import asyncio; asyncio.run(setup_admin_users())"
|
||||
@echo "✅ Настройка завершена!"
|
||||
|
||||
# Инициализация базы данных
|
||||
init-db:
|
||||
@echo "🗄️ Инициализация базы данных..."
|
||||
. .venv/bin/activate && python -c "from src.core.database import init_db; import asyncio; asyncio.run(init_db())"
|
||||
@echo "✅ База данных инициализирована!"
|
||||
|
||||
# Проверка подключения к базе данных
|
||||
check-db:
|
||||
@echo "🔍 Проверка подключения к базе данных..."
|
||||
. .venv/bin/activate && python -c "from src.core.database import async_session_maker; import asyncio; asyncio.run(async_session_maker().__aenter__())"
|
||||
@echo "✅ Подключение к базе данных работает!"
|
||||
|
||||
# Запуск бота
|
||||
run:
|
||||
@echo "🚀 Запуск бота..."
|
||||
@@ -60,27 +80,27 @@ migrate:
|
||||
# Тесты и примеры
|
||||
test:
|
||||
@echo "🧪 Запуск тестов..."
|
||||
. .venv/bin/activate && python examples.py
|
||||
. .venv/bin/activate && python scripts/examples.py
|
||||
|
||||
# Создание тестового розыгрыша
|
||||
sample:
|
||||
@echo "🎲 Создание тестового розыгрыша..."
|
||||
. .venv/bin/activate && python utils.py sample
|
||||
. .venv/bin/activate && python -c "from src.utils.utils import create_sample_lottery; import asyncio; asyncio.run(create_sample_lottery())"
|
||||
|
||||
# Статистика
|
||||
stats:
|
||||
@echo "📊 Статистика бота..."
|
||||
. .venv/bin/activate && python utils.py stats
|
||||
. .venv/bin/activate && python -c "from src.utils.utils import show_stats; import asyncio; asyncio.run(show_stats())"
|
||||
|
||||
# Демонстрация админ-панели
|
||||
demo-admin:
|
||||
@echo "🎪 Демонстрация возможностей админ-панели..."
|
||||
. .venv/bin/activate && python demo_admin.py
|
||||
. .venv/bin/activate && python src/display/demo_admin.py
|
||||
|
||||
# Тестирование улучшений админки
|
||||
test-admin:
|
||||
@echo "🧪 Тестирование новых функций админ-панели..."
|
||||
. .venv/bin/activate && python test_admin_improvements.py
|
||||
. .venv/bin/activate && python tests/test_admin_improvements.py
|
||||
|
||||
# Очистка
|
||||
clean:
|
||||
|
||||
Reference in New Issue
Block a user