diff --git a/HISTORY/2026-09-30_yaml_pipeline_hardening.md b/HISTORY/2026-09-30_yaml_pipeline_hardening.md index b29fad4..3abf1f7 100644 --- a/HISTORY/2026-09-30_yaml_pipeline_hardening.md +++ b/HISTORY/2026-09-30_yaml_pipeline_hardening.md @@ -158,6 +158,34 @@ staging = generated//resources_yaml.staging. упоминаются как история, это нормально); - `scripts/*.py` и `s3_notification_example.sh` — ручные утилиты, вызываются вручную. +## Этап 3 — сверка списков стендов с облачным каталогом (источник истины) + +Принято: **истина — то, что перечислено в облаке**. Определяется эндпоинтом каталога: + +```bash +# «перечислено в облаке» (продакшен-готовые сервисы стенда) +GET {NUBES_API_ENDPOINT}/services?limit=200&isProductionReady=true +# для сравнения: без фильтра отдаются ВСЕ сервисы платформы, включая +# DEPRECATED и не заявленные в каталоге (48 у prod, 49 у test, 60 у dev) +``` + +Требуется браузерный `User-Agent` (иначе DDoS-Guard отдаёт 403) и `Referer`. + +Результат на 2026-09-30: + +| Стенд | Облако (`isProductionReady=true`) | Активных в `services_list.txt` | Лишние в файле | Не хватало | +|---|---|---|---|---| +| dev | 40 | 40 | нет | нет | +| test | 36 | 36 | нет | нет | +| prod | 36 | 35 → **36** | нет | **`151 k8sOpenbao` (Vault)** | + +У остальных 12 закомментированных prod-сервисов, присутствующих в API, `isProductionReady=false` — +они закомментированы обоснованно. Четыре id в файле отсутствуют в каталоге prod вовсе +(`32 vmpostgre`, `87 k8svalkey`, `153 nifi`, `175 k8sGo`). + +Исправлено коммитом `a68a36a`: `151 k8sOpenbao` раскомментирован (комментарий «нет в PROD UI» +устарел), prod перегенерирован — 36 YAML, ровно как в облаке. + ## Открытые вопросы (на решение владельца) 1. Поддержка легаси-прокси `index.cfm`: оставляем или выпиливаем (README уже помечает