Files
2025-11-24 17:00:20 +09:00
..
2025-11-06 15:09:15 +09:00
2025-11-06 15:09:15 +09:00
2025-11-06 15:09:15 +09:00
2025-11-06 15:34:51 +09:00
2025-11-06 15:09:15 +09:00
2025-11-06 15:09:15 +09:00
2025-11-06 15:09:15 +09:00
2025-11-24 17:00:20 +09:00
2025-09-18 16:47:07 +09:00
2025-11-06 15:09:15 +09:00
2025-11-06 15:09:15 +09:00
2025-11-06 15:09:15 +09:00
2025-11-06 15:09:15 +09:00
2025-11-06 15:09:15 +09:00
2025-11-06 15:09:15 +09:00
2025-09-18 17:00:48 +09:00
2025-11-06 15:09:15 +09:00
2025-11-06 15:09:15 +09:00
2025-11-06 15:09:15 +09:00
2025-09-18 08:31:14 +09:00
2025-11-06 15:09:15 +09:00
2025-09-18 08:31:14 +09:00
2025-09-18 08:31:14 +09:00
2025-11-06 15:09:15 +09:00

Автоматическое обновление Telegram Tinder Bot

Этот документ описывает процесс автоматического обновления бота с помощью созданных скриптов.

Доступные скрипты

apply_all_patches.sh

Применяет все SQL патчи к базе данных в правильном порядке:

  • Основная схема (consolidated.sql)
  • Исправление триггера looking_for
  • Добавление колонок job и state
./bin/apply_all_patches.sh

apply_migrations.sh

Применяет Node.js миграции через node-pg-migrate.

apply_direct_sql.sh

Применяет SQL файлы напрямую через psql.

Скрипт обновления

Скрипт обновления выполняет следующие действия:

  1. Получает последние изменения из Git-репозитория
  2. Устанавливает зависимости
  3. Применяет миграции базы данных
  4. Собирает проект
  5. Проверяет наличие файла .env
  6. Проверяет наличие Docker-сервисов
  7. При запуске на Ubuntu: проверяет и перезапускает PM2 сервис

Подробные инструкции по развертыванию

Для подробных инструкций по развертыванию бота на сервере Ubuntu 24.04, пожалуйста, обратитесь к файлу DEPLOY_UBUNTU.md в корне проекта.

Как использовать

На Linux/macOS:

# Обновление с ветки main (по умолчанию)
npm run update

# Обновление с определенной ветки
bash ./bin/update.sh develop

# Обновление с определенной ветки и перезапуском сервиса PM2 (для Ubuntu)
bash ./bin/update.sh develop --restart-service

На Windows:

# Обновление с ветки main (по умолчанию)
npm run update:win

# Обновление с определенной ветки
.\bin\update.bat develop

Добавление прав на выполнение (только для Linux/macOS)

Если у вас возникают проблемы с запуском скрипта, добавьте права на выполнение:

chmod +x ./bin/update.sh

Автоматизация обновлений

Для автоматизации регулярных обновлений вы можете использовать cron (Linux/macOS) или Планировщик заданий (Windows).

Пример cron-задания для Ubuntu (ежедневное обновление в 4:00 с перезапуском сервиса):

0 4 * * * cd /opt/tg_tinder_bot && ./bin/update.sh --restart-service >> /var/log/tg_bot_update.log 2>&1

Пример cron-задания (ежедневное обновление в 4:00 без перезапуска):

0 4 * * * cd /path/to/bot && ./bin/update.sh

Для Windows:

Создайте задачу в Планировщике заданий, которая запускает:

cmd.exe /c "cd /d D:\Projects\tg_tinder_bot && .\bin\update.bat"

Что делать после обновления

После обновления вы можете:

  1. Запустить бота: npm run start
  2. Запустить бота в режиме разработки: npm run dev
  3. Перезапустить Docker-контейнеры, если используете Docker: docker-compose down && docker-compose up -d