diff --git a/DOCS/ARCHITECTURE.md b/DOCS/ARCHITECTURE.md index 3aed259..f5d4f20 100644 --- a/DOCS/ARCHITECTURE.md +++ b/DOCS/ARCHITECTURE.md @@ -79,6 +79,48 @@ app-autotest/ - `get_services(client)` → `GET /services` → список - `get_service_detail(client, svc_id)` → `GET /services/{id}` → детали + операции +--- + +## 4. Режимы работы и разделы БД (v1.2.43+) + +### Режимы + +| Режим | Cookie | Сервисы | Инстансы | Стенд | +|--------|--------|---------|----------|-------| +| Эмуляция | `mode=polygon` | Полигон | Полигон | `polygon_{dev\|test\|prod}` | +| Облако | `mode=cloud` | Реальный API | Реальный API | `dev` / `test` (авто по токену) | + +### Разделы в БД (колонка `stand`) + +Все таблицы (`runs`, `scenario_runs`, `scenario_defs`) изолированы по `(client_id, stand)`. + +**Облако (2 стенда):** +- `dev` — DEV-стенд (`lk-api-gateway-dev.ngcloud.ru`) +- `test` — TEST-стенд (`lk-api-gateway-test.ngcloud.ru`) + +**Эмуляция (3 стенда):** +- `polygon_dev` — Polygon DEV (37 сервисов) +- `polygon_test` — Polygon TEST (37 сервисов) +- `polygon_prod` — Polygon PROD (35 сервисов) + +PROD в облаке недоступен (нет lk-api-gateway-prod), только через эмуляцию. + +### Сервис-листы + +`load_service_ids(stand)` обрезает префикс `polygon_`: +- `polygon_test` → `test` → `services_test.txt` +- `polygon_dev` → `dev` → `services_dev.txt` +- `polygon_prod` → `prod` → `services_prod.txt` (не существует → все сервисы) + +### Полигон URL + +`POLYGON_ENDPOINT = https://polygon.pythonk8s.dev.nubes.ru/api/v1/svc` + +Стенд вставляется перед `/api/v1/svc`: +- DEV: `https://polygon.pythonk8s.dev.nubes.ru/dev/api/v1/svc` +- TEST: `https://polygon.pythonk8s.dev.nubes.ru/test/api/v1/svc` +- PROD: `https://polygon.pythonk8s.dev.nubes.ru/prod/api/v1/svc` + ### `get_params.py` — КЛЮЧЕВОЙ модуль `get_params_with_current_values(client, op_id, instance_uid)`: