init commit
This commit is contained in:
115
Makefile
Normal file
115
Makefile
Normal file
@@ -0,0 +1,115 @@
|
||||
.PHONY: help up down build logs shell ps restart clean db-init status
|
||||
|
||||
help:
|
||||
@echo "TG Autoposter - Make Commands"
|
||||
@echo ""
|
||||
@echo "Docker:"
|
||||
@echo " make up - Запустить контейнеры"
|
||||
@echo " make down - Остановить контейнеры"
|
||||
@echo " make build - Пересобрать образы"
|
||||
@echo " make logs - Показать логи (все)"
|
||||
@echo " make logs-bot - Логи бота"
|
||||
@echo " make logs-celery - Логи Celery"
|
||||
@echo " make shell - Подключиться к боту"
|
||||
@echo " make ps - Статус контейнеров"
|
||||
@echo " make restart - Перезагрузить все"
|
||||
@echo " make clean - Удалить контейнеры"
|
||||
@echo ""
|
||||
@echo "Database:"
|
||||
@echo " make db-init - Инициализировать БД"
|
||||
@echo " make db-backup - Создать backup БД"
|
||||
@echo " make db-restore - Восстановить БД"
|
||||
@echo ""
|
||||
@echo "Development:"
|
||||
@echo " make install - Установить зависимости"
|
||||
@echo " make test - Запустить тесты"
|
||||
@echo " make lint - Lint проверка"
|
||||
@echo ""
|
||||
@echo "Monitoring:"
|
||||
@echo " make flower - Открыть Flower"
|
||||
@echo " make status - Статус Celery"
|
||||
@echo ""
|
||||
|
||||
# Docker Commands
|
||||
up:
|
||||
docker-compose up -d
|
||||
@echo "✅ Контейнеры запущены"
|
||||
|
||||
down:
|
||||
docker-compose down
|
||||
@echo "✅ Контейнеры остановлены"
|
||||
|
||||
build:
|
||||
docker-compose build --no-cache
|
||||
@echo "✅ Образы пересобраны"
|
||||
|
||||
logs:
|
||||
docker-compose logs -f
|
||||
|
||||
logs-bot:
|
||||
docker-compose logs -f bot
|
||||
|
||||
logs-celery:
|
||||
docker-compose logs -f celery_worker_send celery_worker_parse
|
||||
|
||||
shell:
|
||||
docker-compose exec bot /bin/bash
|
||||
|
||||
ps:
|
||||
docker-compose ps
|
||||
|
||||
restart:
|
||||
docker-compose restart
|
||||
@echo "✅ Контейнеры перезагружены"
|
||||
|
||||
clean:
|
||||
docker-compose down -v
|
||||
@echo "✅ Контейнеры и volumes удалены"
|
||||
|
||||
# Database Commands
|
||||
db-init:
|
||||
docker-compose exec bot python -m app migrate
|
||||
@echo "✅ БД инициализирована"
|
||||
|
||||
db-backup:
|
||||
docker-compose exec postgres pg_dump -U $${DB_USER:-autoposter} $${DB_NAME:-autoposter_db} > backup_$$(date +%Y%m%d_%H%M%S).sql
|
||||
@echo "✅ Backup создан"
|
||||
|
||||
db-restore:
|
||||
@read -p "Введите имя файла backup: " file; \
|
||||
docker-compose exec -T postgres psql -U $${DB_USER:-autoposter} $${DB_NAME:-autoposter_db} < $$file
|
||||
@echo "✅ БД восстановлена"
|
||||
|
||||
# Development Commands
|
||||
install:
|
||||
pip install -r requirements.txt
|
||||
@echo "✅ Зависимости установлены"
|
||||
|
||||
test:
|
||||
python -m pytest tests/ -v
|
||||
|
||||
lint:
|
||||
python -m flake8 app/
|
||||
python -m black --check app/
|
||||
|
||||
# Monitoring Commands
|
||||
flower:
|
||||
@echo "Открыть http://localhost:5555"
|
||||
open http://localhost:5555
|
||||
|
||||
status:
|
||||
docker-compose exec bot celery -A app.celery_config inspect active
|
||||
@echo ""
|
||||
docker-compose exec bot celery -A app.celery_config inspect stats
|
||||
|
||||
# Utility
|
||||
requirements:
|
||||
pip freeze > requirements.txt
|
||||
@echo "✅ requirements.txt обновлен"
|
||||
|
||||
fmt:
|
||||
python -m black app/
|
||||
@echo "✅ Код отформатирован"
|
||||
|
||||
env-check:
|
||||
@grep -q "TELEGRAM_BOT_TOKEN" .env && echo "✅ .env файл найден" || (echo "❌ .env файл не найден"; exit 1)
|
||||
Reference in New Issue
Block a user