# Демо и e2e Два сценария для локальной проверки без прода. ## 1. Сквозной пример через MCP (`demo.py`) Поднимает только `config_server`; задачи создаются, но их никто не исполняет — показывает вызовы инструментов и ответы. ```bash docker compose -f examples/demo/docker-compose.yml up -d go build -o omnichannel-configserver-mcp . python3 examples/demo/demo.py ``` ## 2. Полный e2e деплоя с агентом (`e2e.py`) Дополнительно запускает настоящий **config-agent**, который опрашивает `config_server` и реально выполняет задачи через `docker-compose`. Проверяется жизненный цикл: `set_env` → `set_compose` → `deploy` → `restart` → `down`, а также защита (`down` без `confirm` отклоняется). ```bash docker compose -f examples/demo/docker-compose.yml up -d go build -o omnichannel-configserver-mcp . python3 examples/demo/e2e.py ``` Что делает `e2e.py`: 1. создаёт каталог `/tmp/omni-e2e/opt/demo_e2e` с `docker-compose.yml`; 2. поднимает контейнер `omni-e2e-agent` (образ `config-agent:v1.1.0`) с проброшенным `docker.sock` и `/opt`; 3. ждёт регистрации приложения агентом; 4. гоняет жизненный цикл через MCP и проверяет состояние контейнеров; 5. удаляет тестовый агент. Требуется доступ к `registry.devlexicom.ru` (образ агента). ## Очистка ```bash docker compose -f examples/demo/docker-compose.yml down -v docker rm -f omni-e2e-agent 2>/dev/null; docker network rm demo_e2e_default 2>/dev/null rm -rf /tmp/omni-e2e ```