diff --git a/README.md b/README.md index 8898df2..ab77fcd 100644 --- a/README.md +++ b/README.md @@ -104,7 +104,8 @@ Zabbix агент по запросу сервера запускает скри │ ├── __init__.py │ └── test_scenario_runner.py # 48 тестов ├── cli/ -│ └── pyproject.toml # Отдельная сборка: только ses-test +│ ├── pyproject.toml # Отдельная сборка: только ses-test +│ └── README.md # Инструкции: установка, сборка бинарника ├── pyproject.toml # Зависимости и метаданные пакета └── README.md ``` @@ -220,45 +221,7 @@ ses-test my_scenario.yaml --ses-url http://ses-host:6190 --dry-run Подробнее — см. раздел [«Как адаптировать под ваш проект»](#как-адаптировать-под-ваш-проект). -### Сборка исполняемого файла (без Python) - -`ses-test` можно собрать в один бинарник (~11 MB), не требующий Python на целевой машине. - -Сборка производится в чистом виртуальном окружении — чтобы в бинарник не попали -лишние системные пакеты (numpy, pillow и др.): - -```bash -# 1. Клонируем репозиторий -git clone https://git.totmin.ru/en2zmax/ses-monitor.git -cd ses-monitor - -# 2. Чистое окружение -python -m venv /tmp/build -/tmp/build/bin/pip install ./cli pyinstaller - -# 3. Сборка -/tmp/build/bin/pyinstaller --onefile --name ses-test \ - --paths src/ \ - --hidden-import ses_monitor.utils \ - --strip \ - --exclude-module tkinter \ - --exclude-module turtle \ - --exclude-module sqlite3 \ - --exclude-module curses \ - --exclude-module idlelib \ - --exclude-module pydoc \ - --exclude-module venv \ - --exclude-module ensurepip \ - --exclude-module unittest \ - --exclude-module test \ - --exclude-module multiprocessing \ - src/ses_monitor/cli.py -``` - -Готовый бинарник: `dist/ses-test` (~11 MB, Linux) или `dist/ses-test.exe` (Windows — -запустить те же команды на Windows). - -Для сборки под другую ОС нужна эта ОС — PyInstaller не кросс-компилирует. +Сборка в исполняемый файл — см. [cli/README.md](cli/README.md). ## Формат сценариев diff --git a/cli/README.md b/cli/README.md new file mode 100644 index 0000000..4725819 --- /dev/null +++ b/cli/README.md @@ -0,0 +1,51 @@ +# ses-test + +CLI-утилита для пошагового тестирования YAML-сценариев SES. + +## Установка + +```bash +pip install "ses-test @ git+https://git.totmin.ru/en2zmax/ses-monitor.git#subdirectory=cli" +``` + +## Сборка исполняемого файла + +Можно собрать `ses-test` в один бинарник (~11 MB), не требующий Python на целевой машине. + +Сборка производится в чистом виртуальном окружении — чтобы в бинарник не попали лишние системные пакеты (numpy, pillow и др.): + +```bash +# 1. Клонируем репозиторий +git clone https://git.totmin.ru/en2zmax/ses-monitor.git +cd ses-monitor + +# 2. Чистое окружение +python -m venv /tmp/build +/tmp/build/bin/pip install ./cli pyinstaller + +# 3. Сборка +/tmp/build/bin/pyinstaller --onefile --name ses-test \ + --paths src/ \ + --hidden-import ses_monitor.utils \ + --strip \ + --exclude-module tkinter \ + --exclude-module turtle \ + --exclude-module sqlite3 \ + --exclude-module curses \ + --exclude-module idlelib \ + --exclude-module pydoc \ + --exclude-module venv \ + --exclude-module ensurepip \ + --exclude-module unittest \ + --exclude-module test \ + --exclude-module multiprocessing \ + src/ses_monitor/cli.py +``` + +Готовый бинарник: `dist/ses-test` (~11 MB, Linux) или `dist/ses-test.exe` (Windows — запустить те же команды на Windows). + +Для сборки под другую ОС нужна эта ОС — PyInstaller не кросс-компилирует. + +## Справка + +Основная документация: [README.md](../README.md)