docs: move build instructions to cli/README.md, keep main README lean
This commit is contained in:
parent
28f5a407c9
commit
a5e17bcdd8
43
README.md
43
README.md
@ -104,7 +104,8 @@ Zabbix агент по запросу сервера запускает скри
|
|||||||
│ ├── __init__.py
|
│ ├── __init__.py
|
||||||
│ └── test_scenario_runner.py # 48 тестов
|
│ └── test_scenario_runner.py # 48 тестов
|
||||||
├── cli/
|
├── cli/
|
||||||
│ └── pyproject.toml # Отдельная сборка: только ses-test
|
│ ├── pyproject.toml # Отдельная сборка: только ses-test
|
||||||
|
│ └── README.md # Инструкции: установка, сборка бинарника
|
||||||
├── pyproject.toml # Зависимости и метаданные пакета
|
├── pyproject.toml # Зависимости и метаданные пакета
|
||||||
└── README.md
|
└── README.md
|
||||||
```
|
```
|
||||||
@ -220,45 +221,7 @@ ses-test my_scenario.yaml --ses-url http://ses-host:6190 --dry-run
|
|||||||
|
|
||||||
Подробнее — см. раздел [«Как адаптировать под ваш проект»](#как-адаптировать-под-ваш-проект).
|
Подробнее — см. раздел [«Как адаптировать под ваш проект»](#как-адаптировать-под-ваш-проект).
|
||||||
|
|
||||||
### Сборка исполняемого файла (без Python)
|
Сборка в исполняемый файл — см. [cli/README.md](cli/README.md).
|
||||||
|
|
||||||
`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 не кросс-компилирует.
|
|
||||||
|
|
||||||
## Формат сценариев
|
## Формат сценариев
|
||||||
|
|
||||||
|
|||||||
51
cli/README.md
Normal file
51
cli/README.md
Normal file
@ -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)
|
||||||
Loading…
x
Reference in New Issue
Block a user