Удалён кластер старого IoT, не импортировавшийся активным монолитом: - cmd/iot-operator/, controllers/, api/v1alpha1/ — k8s-оператор + CRD - internal/api/ — старый REST API + UI-embeds (заменён internal/service/api) - cmd/mqtt-bridge/ — standalone bridge (заменён internal/service/bridge) go mod tidy убрал k8s-зависимости (k8s.io/*, controller-runtime).
58 lines
4.0 KiB
Markdown
58 lines
4.0 KiB
Markdown
# ⛔⛔⛔ ЛЕГАСИ — СТАРЫЙ IoT (k8s-деплой)
|
||
|
||
С 2026-08-16 всё, что относится к СТАРОМУ IoT (деплой в собственном k8s,
|
||
оператор, CRD), — **ЛЕГАСИ**. **НЕ ПРИНИМАТЬ ВО ВНИМАНИЕ** при принятии решений.
|
||
Не использовать, не ссылаться, не переносить в новую архитектуру без отдельной
|
||
команды.
|
||
|
||
**Актуальное:**
|
||
- `HISTORY/2026-08-16-session-log.md` — состояние, диагностика, план миграции
|
||
- `doc/sqs-integration.md` — актуальная интеграция с shared-sqs
|
||
|
||
## Помечено ЛЕГАСИ и перенесено в `legacy/` (2026-08-16)
|
||
|
||
- `legacy/deployments/` — все k8s-манифесты старого деплоя
|
||
- `legacy/config/` — CRD IoTDevice
|
||
- `legacy/doc/` — все старые документы (deployment, architecture, api, decisions,
|
||
thinking, progress, testing и др.)
|
||
- `legacy/examples/` — старые примеры (RabbitMQ/serverless)
|
||
- `legacy/2026-08-13-migration-to-managed.md` — СТАРЫЙ план миграции (Node.js) — ОТМЕНЁН
|
||
- `legacy/Dockerfile.old` — собирал 3 старых бинарника
|
||
- `legacy/Makefile.old` — старые k8s-цели
|
||
- ⛔ `cmd/iot-operator/`, `controllers/`, `api/v1alpha1/` — оператор (CRD-контроллер):
|
||
**УДАЛЁН 2026-10-10** — не импортировался активным монолитом, не собирался.
|
||
- ⛔ `internal/api/` — старый REST API + UI-embeds (admin/console): **УДАЛЁН 2026-10-10**
|
||
(активный API — `internal/service/api/`).
|
||
- ⛔ `cmd/mqtt-bridge/` — старый standalone bridge: **УДАЛЁН 2026-10-10** (заменён
|
||
`internal/service/bridge/`).
|
||
- k8s-зависимости (`k8s.io/*`, `controller-runtime`) — **УДАЛЕНЫ из go.mod 2026-10-10**
|
||
(`go mod tidy` после удаления оператора/CRD).
|
||
|
||
## Аудит вмешательства старого IoT (2026-08-16, проверено)
|
||
|
||
- **Код:** k8s-зависимости есть ТОЛЬКО в `internal/api/handler/` (handler.go,
|
||
iot_device_handler.go, iot_admin_stats_handler.go — controller-runtime,
|
||
corev1, CRD-типы). Всё остальное чисто: router, middleware, UI-embeds,
|
||
`internal/storage/iotpg/`, `cmd/mqtt-bridge/`, `cmd/sqs-consumer/`.
|
||
- **Правило для монолита:** новый код НЕ импортирует `controllers/`,
|
||
`api/v1alpha1/`, k8s-клиент. Хендлеры устройств переписываются на
|
||
PG-хранилище (`iot_devices`); после этого k8s-депы удаляются из go.mod.
|
||
- **Данные:** старый shared-sqs (qu.kube5s.ru) удалён полностью — старых
|
||
очередей нет. В managed PG остались старые тестовые tenant-DB (изолированы,
|
||
на новый код не влияют; очистка — только по отдельной команде).
|
||
Старые k8s Secrets не читаются (новый код без k8s-клиента).
|
||
- **Артефакты:** `bin/` в git не отслеживается; CI (.github/) содержит только
|
||
правила — старых пайплайнов нет.
|
||
|
||
## НЕ легаси (актуально)
|
||
|
||
- `HISTORY/2026-08-16-session-log.md`
|
||
- `doc/sqs-integration.md`
|
||
- `ws-probe/`
|
||
- `cmd/iot-service/`, `internal/service/`, `internal/storage/iotpg/` — активный
|
||
монолит iot-service
|
||
- ⛔ `cmd/sqs-consumer/` — **УДАЛЁН 2026-10-07**: standalone-консьюмер, который
|
||
НЕ собирался Dockerfile/Makefile (те билдят только `./cmd/iot-service/`); его
|
||
логика поглощена `internal/service/consumer/`. Был источником пустого
|
||
`message_id` (обход дедупа).
|