- Добавлена полная интеграция с Telegram Mini App (динамическая загрузка SDK) - Отдельный компактный дизайн для Telegram Mini App - Добавлен loader при инициализации (предотвращает мелькание SMS-авторизации) - Улучшена навигация: кнопки "Назад" и "К списку заявок" теперь сохраняют авторизацию - Telegram Mini App: кнопка "Выход" просто закрывает приложение - Telegram Mini App: заявки "В работе" скрыты из списка - Веб-версия: для заявок "В работе" добавлена кнопка "Просмотреть в Telegram" (ссылка на @klientprav_bot) - Telegram Mini App: кнопки действий в черновиках расположены вертикально - Веб-версия: убрано отображение номера телефона в приветствии - Исправлена проблема с возвратом к списку черновиков (не требует повторной SMS-авторизации) - Заблокировано удаление и редактирование заявок со статусом "В работе" - Добавлена документация по Telegram Mini App интеграции
87 lines
3.4 KiB
Bash
Executable File
87 lines
3.4 KiB
Bash
Executable File
#!/bin/bash
|
||
# ============================================
|
||
# Скрипт переноса изменений из DEV в PROD
|
||
# ============================================
|
||
|
||
set -e
|
||
|
||
cd "$(dirname "$0")"
|
||
|
||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||
echo "🚀 Перенос изменений из DEV в PROD"
|
||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||
echo ""
|
||
|
||
# Проверка что мы в правильной директории
|
||
if [ ! -f "docker-compose.dev.yml" ]; then
|
||
echo "❌ Ошибка: запустите скрипт из корня проекта ticket_form"
|
||
exit 1
|
||
fi
|
||
|
||
# 1. Проверка изменений в git
|
||
echo "📊 Проверяю изменения в git..."
|
||
if [ -n "$(git status --porcelain)" ]; then
|
||
echo "⚠️ Есть незакоммиченные изменения!"
|
||
echo ""
|
||
git status --short
|
||
echo ""
|
||
read -p "Закоммитить изменения перед деплоем? (y/N): " -n 1 -r
|
||
echo
|
||
if [[ $REPLY =~ ^[Yy]$ ]]; then
|
||
echo "💾 Коммичу изменения..."
|
||
git add -A
|
||
git commit -m "chore: Изменения перед деплоем в prod $(date +%Y-%m-%d)"
|
||
fi
|
||
fi
|
||
|
||
# 2. Push в dev репозиторий
|
||
echo ""
|
||
echo "📤 Отправляю изменения в DEV репозиторий..."
|
||
if git remote | grep -q "aiform_dev"; then
|
||
git push aiform_dev main 2>/dev/null || git push aiform_dev master 2>/dev/null || echo "⚠️ Не удалось запушить в aiform_dev"
|
||
fi
|
||
|
||
# 3. Push в prod репозиторий
|
||
echo ""
|
||
echo "📤 Отправляю изменения в PROD репозиторий..."
|
||
if git remote | grep -q "aiform_prod"; then
|
||
git push aiform_prod main 2>/dev/null || git push aiform_prod master 2>/dev/null || echo "⚠️ Не удалось запушить в aiform_prod"
|
||
else
|
||
echo "⚠️ Remote 'aiform_prod' не найден. Добавьте:"
|
||
echo " git remote add aiform_prod http://147.45.146.17:3002/negodiy/aiform_prod.git"
|
||
fi
|
||
|
||
# 4. Пересборка prod контейнеров
|
||
echo ""
|
||
echo "🔨 Пересобираю PROD контейнеры..."
|
||
docker-compose -f docker-compose.prod.yml build --no-cache
|
||
|
||
# 5. Перезапуск prod
|
||
echo ""
|
||
echo "🔄 Перезапускаю PROD окружение..."
|
||
docker-compose -f docker-compose.prod.yml down
|
||
docker-compose -f docker-compose.prod.yml up -d
|
||
|
||
# 6. Проверка статуса
|
||
echo ""
|
||
echo "⏳ Жду запуска (5 сек)..."
|
||
sleep 5
|
||
|
||
echo ""
|
||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||
echo "✅ Деплой завершён!"
|
||
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
|
||
echo ""
|
||
echo "📍 PROD доступен:"
|
||
echo " Frontend: http://localhost:5176"
|
||
echo " Backend: http://localhost:8200"
|
||
echo " Production: https://aiform.clientright.ru"
|
||
echo ""
|
||
echo "📊 Статус контейнеров:"
|
||
docker-compose -f docker-compose.prod.yml ps
|
||
echo ""
|
||
echo "📋 Логи (последние 20 строк):"
|
||
docker-compose -f docker-compose.prod.yml logs --tail=20
|
||
echo ""
|
||
|