Установщик проекта на PyPy (сделать выбор+в разработке)
This commit is contained in:
171
start.bat
171
start.bat
@@ -1,93 +1,158 @@
|
|||||||
@echo off
|
@echo off
|
||||||
REM start.bat
|
REM start.bat
|
||||||
REM Этот файл нужно запускать перед стартом проекта
|
REM Этот файл нужно запускать перед стартом проекта.
|
||||||
REM Он создает локальное окружение, скачивает все зависимости
|
REM Он создает локальное окружение, скачивает все зависимости.
|
||||||
REM Чтобы запустить файл используйте: start start или ./start
|
REM Чтобы запустить файл, используйте: start start или ./start.
|
||||||
|
|
||||||
REM Включение кодировки для Windows
|
REM Установить кодировку UTF-8 и заголовок для консоли.
|
||||||
chcp 65001 > nul
|
chcp 65001 > nul
|
||||||
|
title Запуск Бота-aiogram
|
||||||
cls
|
cls
|
||||||
|
|
||||||
REM Изменяем заголовок окна консоли
|
REM Проверка установки PyPy.
|
||||||
title Запуск Бота-aiogram
|
|
||||||
|
|
||||||
REM Убедитесь, что PyPy установлен и доступен
|
|
||||||
echo Проверка наличия PyPy...
|
echo Проверка наличия PyPy...
|
||||||
pypy --version || (
|
pypy --version > nul 2>&1 || (
|
||||||
color C
|
color C
|
||||||
echo PyPy не установлен. Установите PyPy и повторите попытку.
|
echo [ОШИБКА]: PyPy не установлен. Установите PyPy и повторите попытку.
|
||||||
echo Установите его по ссылке: https://www.pypy.org/download.html
|
echo Ссылка для установки: https://www.pypy.org/download.html
|
||||||
title Проект - PyPy не установлен!
|
title Проект - PyPy не установлен!
|
||||||
pause
|
pause
|
||||||
exit /b
|
exit /b
|
||||||
)
|
)
|
||||||
|
echo [OK]: PyPy установлен.
|
||||||
echo.
|
echo.
|
||||||
|
|
||||||
REM Проверка наличия Git
|
REM Проверка установки Git.
|
||||||
echo Проверка наличия Git...
|
echo Проверка наличия Git...
|
||||||
git --version > nul 2>&1 || (
|
git --version > nul 2>&1 || (
|
||||||
color C
|
color C
|
||||||
echo Git не установлен. Установите Git и повторите попытку.
|
echo [ОШИБКА]: Git не установлен. Установите Git и повторите попытку.
|
||||||
echo Установите его по ссылке: https://git-scm.com/downloads
|
echo Ссылка для установки: https://git-scm.com/downloads
|
||||||
title Проект - Git не установлен!
|
title Проект - Git не установлен!
|
||||||
pause
|
pause
|
||||||
exit /b
|
exit /b
|
||||||
)
|
)
|
||||||
|
echo [OK]: Git установлен.
|
||||||
echo.
|
echo.
|
||||||
|
|
||||||
REM Проверка наличия Git репозитория
|
REM Проверка и инициализация Git репозитория.
|
||||||
if not exist .git (
|
if not exist .git (
|
||||||
echo Создание Git репозитория...
|
echo Создание Git репозитория...
|
||||||
git init
|
git init > nul
|
||||||
echo Добавление удалённого репозитория...
|
git remote add origin https://github.com/Whyverum/PrimoPearlBot > nul
|
||||||
git remote add origin https://github.com/Whyverum/PrimoPearlBot
|
echo [OK]: Git репозиторий создан и настроен.
|
||||||
) else (
|
) else (
|
||||||
echo Удалённый репозиторий уже настроен.
|
echo [OK]: Git репозиторий уже настроен.
|
||||||
)
|
)
|
||||||
echo.
|
echo.
|
||||||
|
|
||||||
REM Создание .env для хранения токенов
|
REM Создание виртуального окружения, если его еще нет.
|
||||||
echo Создаётся файл .env...
|
|
||||||
(
|
|
||||||
echo main_bot_token=Вставьте Токен бота с @BotFather
|
|
||||||
echo APIKey=Иной ключ-api
|
|
||||||
echo WebAPIKey=Иной ключ web-api
|
|
||||||
echo important_id=Иной важный айди
|
|
||||||
echo secret=Некий секрет
|
|
||||||
) > .env
|
|
||||||
echo.
|
|
||||||
echo Файл .env - успешно создан!
|
|
||||||
echo Пожалуйста, перейдите в файл и вставьте свои ключи.
|
|
||||||
pause > Вы готовы продолжить? Нажмите ENTER, чтобы продолжить!
|
|
||||||
echo.
|
|
||||||
pause > Вы уверены???Нажмите ENTER, чтобы продолжить!
|
|
||||||
|
|
||||||
REM Создание виртуального окружения, если его еще нет
|
|
||||||
if not exist .venv (
|
if not exist .venv (
|
||||||
echo Создание виртуального окружения...
|
echo Создание виртуального окружения...
|
||||||
pypy -m venv .venv
|
pypy -m venv .venv > nul
|
||||||
echo.
|
if %errorlevel% neq 0 (
|
||||||
|
color C
|
||||||
|
echo [ОШИБКА]: Не удалось создать виртуальное окружение.
|
||||||
|
pause
|
||||||
|
exit /b
|
||||||
|
)
|
||||||
|
echo [OK]: Виртуальное окружение создано.
|
||||||
|
) else (
|
||||||
|
echo [OK]: Виртуальное окружение уже существует.
|
||||||
)
|
)
|
||||||
|
echo.
|
||||||
|
|
||||||
REM Активируем виртуальное окружение
|
REM Создание файла .env с вводом данных из консоли в папке .venv.
|
||||||
|
if not exist .venv\.env (
|
||||||
|
echo Создаётся файл .env в папке .venv...
|
||||||
|
set /p main_bot_token=Введите токен бота (main_bot_token):
|
||||||
|
set /p APIKey=Введите ключ API (APIKey):
|
||||||
|
set /p WebAPIKey=Введите ключ Web API (WebAPIKey):
|
||||||
|
set /p important_id=Введите важный ID (important_id):
|
||||||
|
set /p secret=Введите секретный ключ (secret):
|
||||||
|
|
||||||
|
REM Проверяем пустые значения.
|
||||||
|
if "%main_bot_token%"=="" (
|
||||||
|
echo [ОШИБКА]: Токен бота не может быть пустым.
|
||||||
|
pause
|
||||||
|
exit /b
|
||||||
|
)
|
||||||
|
if "%APIKey%"=="" (
|
||||||
|
echo [ОШИБКА]: Ключ API не может быть пустым.
|
||||||
|
pause
|
||||||
|
exit /b
|
||||||
|
)
|
||||||
|
if "%WebAPIKey%"=="" (
|
||||||
|
echo [ОШИБКА]: Ключ Web API не может быть пустым.
|
||||||
|
pause
|
||||||
|
exit /b
|
||||||
|
)
|
||||||
|
if "%important_id%"=="" (
|
||||||
|
echo [ОШИБКА]: Важный ID не может быть пустым.
|
||||||
|
pause
|
||||||
|
exit /b
|
||||||
|
)
|
||||||
|
if "%secret%"=="" (
|
||||||
|
echo [ОШИБКА]: Секретный ключ не может быть пустым.
|
||||||
|
pause
|
||||||
|
exit /b
|
||||||
|
)
|
||||||
|
|
||||||
|
REM Создание файла .env.
|
||||||
|
(
|
||||||
|
echo main_bot_token=%main_bot_token%
|
||||||
|
echo APIKey=%APIKey%
|
||||||
|
echo WebAPIKey=%WebAPIKey%
|
||||||
|
echo important_id=%important_id%
|
||||||
|
echo secret=%secret%
|
||||||
|
) > .venv\.env
|
||||||
|
echo [OK]: Файл .env успешно создан в папке .venv!
|
||||||
|
) else (
|
||||||
|
echo [OK]: Файл .env уже существует в папке .venv.
|
||||||
|
)
|
||||||
|
echo.
|
||||||
|
|
||||||
|
REM Активация виртуального окружения.
|
||||||
echo Активация виртуального окружения...
|
echo Активация виртуального окружения...
|
||||||
call .venv\Scripts\activate
|
call .venv\Scripts\activate > nul
|
||||||
echo.
|
if %errorlevel% neq 0 (
|
||||||
|
color C
|
||||||
REM Установка Poetry, если не установлен
|
echo [ОШИБКА]: Не удалось активировать виртуальное окружение.
|
||||||
echo Проверка наличия Poetry...
|
pause
|
||||||
poetry --version || (
|
exit /b
|
||||||
echo Установка Poetry...
|
|
||||||
pip install poetry
|
|
||||||
)
|
)
|
||||||
|
echo [OK]: Виртуальное окружение активировано.
|
||||||
echo.
|
echo.
|
||||||
|
|
||||||
REM Установка зависимостей из poetry.lock и pyproject.toml
|
REM Проверка и установка Poetry.
|
||||||
echo Установка зависимостей...
|
echo Проверка наличия Poetry...
|
||||||
poetry install
|
poetry --version > nul 2>&1 || (
|
||||||
poetry update
|
echo Установка Poetry...
|
||||||
|
pip install poetry > nul
|
||||||
|
if %errorlevel% neq 0 (
|
||||||
|
color C
|
||||||
|
echo [ОШИБКА]: Не удалось установить Poetry.
|
||||||
|
pause
|
||||||
|
exit /b
|
||||||
|
)
|
||||||
|
echo [OK]: Poetry успешно установлен.
|
||||||
|
)
|
||||||
|
echo [OK]: Poetry установлен.
|
||||||
echo.
|
echo.
|
||||||
|
|
||||||
REM Очистка консоли перед запуском main.py
|
REM Установка зависимостей.
|
||||||
|
echo Установка зависимостей проекта...
|
||||||
|
poetry install > nul
|
||||||
|
if %errorlevel% neq 0 (
|
||||||
|
color C
|
||||||
|
echo [ОШИБКА]: Не удалось установить зависимости.
|
||||||
|
pause
|
||||||
|
exit /b
|
||||||
|
)
|
||||||
|
echo [OK]: Зависимости установлены.
|
||||||
|
echo.
|
||||||
|
|
||||||
|
REM Очистка консоли перед запуском.
|
||||||
cls
|
cls
|
||||||
pause > Настройте конфигуратор или запустите main.py!
|
echo Все готово! Настройте конфигурацию или запустите main.py.
|
||||||
|
pause
|
||||||
|
|||||||
Reference in New Issue
Block a user