From 12c15bc465b310fced66a14e41861d68fe3874d9 Mon Sep 17 00:00:00 2001 From: sirmrak Date: Wed, 20 May 2026 13:52:50 +0300 Subject: [PATCH] =?UTF-8?q?docs:=20=D0=BE=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D0=BF=D0=BB=D0=B0=D0=BD=20multi-event-server=20?= =?UTF-8?q?=D0=B4=D0=BB=D1=8F=20satellite-dev?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/development/multi-event-server-plan.md | 71 +++++++++++++-------- 1 file changed, 46 insertions(+), 25 deletions(-) diff --git a/docs/development/multi-event-server-plan.md b/docs/development/multi-event-server-plan.md index 44921a9..c9fdafe 100644 --- a/docs/development/multi-event-server-plan.md +++ b/docs/development/multi-event-server-plan.md @@ -1,30 +1,32 @@ # План: Множественные подключения event сервисов к Wyoming Satellite **Дата:** 2026-05-20 -**Статус:** Черновик -**Ветка:** `feature/multi-event-server` +**Статус:** Готов к реализации +**Ветка:** `feature/multi-event-server` +**Директория для разработки:** `~/projects/satellite-dev` --- ## Стратегия разработки -### Ветка +### Изоляция разработки -**Создать:** `feature/multi-event-server` (от `master`) +**Текущая версия (production):** +- Директория: `~/projects/Satellite` +- Ветка: `master` +- Статус: ✅ Рабочая версия, используется в production -- ✅ `master` остаётся стабильным -- ✅ Тестирование в изоляции -- ✅ Возможность отката +**Версия для разработки:** +- Директория: `~/projects/satellite-dev` +- Ветка: `feature/multi-event-server` +- Статус: 🚧 Экспериментальная версия -### Резервные копии +### Преимущества такого подхода -Перед началом работ: - -```bash -cp wyoming_satellite/satellite.py wyoming_satellite/satellite.py.backup -cp wyoming_satellite/settings.py wyoming_satellite/settings.py.backup -cp wyoming_satellite/__main__.py wyoming_satellite/__main__.py.backup -``` +- ✅ **Полная изоляция** — эксперименты не влияют на рабочую систему +- ✅ **Быстрый откат** — просто переключаемся на `~/projects/Satellite` +- ✅ **Чистая история** — merge в master только после тестирования +- ✅ **Параллельная работа** — можно продолжать фиксить баги в Satellite пока идёт разработка --- @@ -77,26 +79,45 @@ cp wyoming_satellite/__main__.py wyoming_satellite/__main__.py.backup ### Этап 1: Подготовка (30 мин) -#### 1.1 Создать ветку +#### 1.1 Проверка окружения ```bash +# Production версия (не трогать!) cd ~/projects/Satellite -git checkout master -git pull -git checkout -b feature/multi-event-server +git status # Должен быть clean + +# Development версия +cd ~/projects/satellite-dev +git status # Должен быть на feature/multi-event-server ``` -#### 1.2 Создать резервные копии +#### 1.2 Настройка venv для satellite-dev ```bash -cp wyoming_satellite/satellite.py wyoming_satellite/satellite.py.backup -cp wyoming_satellite/settings.py wyoming_satellite/settings.py.backup -cp wyoming_satellite/__main__.py wyoming_satellite/__main__.py.backup +# Создание отдельного venv +cd ~/projects/satellite-dev +python3 -m venv ~/.venv_satellite_dev +source ~/.venv_satellite_dev/bin/activate + +# Установка зависимостей +pip install -r requirements.txt + +# Установка пакета в editable режиме +pip install -e . ``` -#### 1.3 Создать тестовый скрипт event-клиента +#### 1.3 Проверка что всё работает -**Файл:** `examples/test_event_client.py` +```bash +cd ~/projects/satellite-dev +source ~/.venv_satellite_dev/bin/activate + +# Проверка импорта +python3 -c "from wyoming_satellite.satellite import SatelliteBase; print('OK')" + +# Проверка что тестовый клиент работает +python3 examples/test_event_client.py --help # После создания +``` ```python #!/usr/bin/env python3