57 lines
2.6 KiB
Batchfile
57 lines
2.6 KiB
Batchfile
@echo off
|
||
chcp 65001 > nul
|
||
echo ===================================================
|
||
echo 🚀 Начинаем автоматическое развертывание проекта...
|
||
echo ===================================================
|
||
|
||
:: 1. Проверяем, установлен ли Python в системе
|
||
python --version >nul 2>&1
|
||
if %errorlevel% neq 0 (
|
||
echo ❌ Ошибка: Python не найден в системе!
|
||
echo Установите Python той же мажорной версии, на которой собирался проект.
|
||
goto error
|
||
)
|
||
|
||
:: 2. Создаем изолированное виртуальное окружение prod_env
|
||
if not exist prod_env (
|
||
echo 📦 Создание виртуального окружения prod_env...
|
||
python -m venv prod_env
|
||
if %errorlevel% neq 0 (
|
||
echo ❌ Не удалось создать виртуальное окружение!
|
||
goto error
|
||
)
|
||
echo ✅ Окружение prod_env успешно создано.
|
||
) else (
|
||
echo ℹ️ Окружение prod_env уже существует, пропускаем создание.
|
||
)
|
||
|
||
:: 3. Обновляем pip и устанавливаем зависимости в prod_env без его активации
|
||
echo 🗂️ Установка внешних библиотек из requirements_all.txt...
|
||
prod_env\Scripts\python.exe -m pip install --upgrade pip > nul
|
||
prod_env\Scripts\python.exe -m pip install -r requirements_all.txt
|
||
if %errorlevel% neq 0 (
|
||
echo ❌ Ошибка при установке зависимостей! Проверьте интернет-соединение.
|
||
goto error
|
||
)
|
||
echo ✅ Все внешние библиотеки успешно установлены.
|
||
|
||
:: 4. Формируем удобный ярлык/скрипт для быстрого запуска сервера в будущем
|
||
echo @echo off > run_server.bat
|
||
echo chcp 65001 ^> nul >> run_server.bat
|
||
echo echo 🔌 Запуск защищенного бэкенд сервера... >> run_server.bat
|
||
echo prod_env\Scripts\python.exe main.py >> run_server.bat
|
||
echo pause >> run_server.bat
|
||
|
||
echo ===================================================
|
||
echo 🎉 ДЕПЛОЙ УСПЕШНО ЗАВЕРШЕН!
|
||
echo ===================================================
|
||
echo 💡 Для запуска сервера используйте созданный файл: run_server.bat
|
||
echo ===================================================
|
||
pause
|
||
exit /b 0
|
||
|
||
:error
|
||
echo 🟥 Деплой завершился с ошибкой!
|
||
pause
|
||
exit /b 1
|