docs: REPO_INVENTORY.md — full repo structure, version matrix, profiles, published state
This commit is contained in:
@@ -0,0 +1,126 @@
|
|||||||
|
# REPO INVENTORY — 01.07.2026
|
||||||
|
|
||||||
|
Полная карта репозитория `/home/naeel/tf_provider`: структура, версии, профили, публикации.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 1. Директории
|
||||||
|
|
||||||
|
| Путь | Назначение | Файлы |
|
||||||
|
|------|-----------|-------|
|
||||||
|
| `/` | Корень Go-модуля `terraform-provider-mycloud` (Legacy провайдер) | `main.go`, `go.mod`, `go.sum` |
|
||||||
|
| `internal/` | Исходный код Legacy провайдера (ручные ресурсы) | 25 `.go` файлов |
|
||||||
|
| `internal/core/` | Ядро Legacy: HTTP-клиент, lookup инстансов, операции | 3 файла |
|
||||||
|
| `internal/generated/` | Сгенерированные ресурсы болванки (3 файла) | 3 `.go` |
|
||||||
|
| `internal/provider/` | 12 ручных ресурсов + дата-сорсы | 17 `.go` |
|
||||||
|
| `internal/registrykeys/` | Пусто | — |
|
||||||
|
| `universal_rebuild/` | **Universal провайдер** (главный, генерируемый) | Go-модуль |
|
||||||
|
| `universal_rebuild/internal/core/` | Универсальное ядро: клиент, операции, реф-резолв | 10 файлов |
|
||||||
|
| `universal_rebuild/internal/provider/` | Provider entrypoint + таймауты | 3 файла |
|
||||||
|
| `universal_rebuild/internal/resources_core/` | CRUD-логика, state, params | 22 файла |
|
||||||
|
| `universal_rebuild/internal/resources_gen/` | **Сгенерированные ресурсы** (82 файла) | 82 `.go` |
|
||||||
|
| `universal_rebuild/resources_yaml/` | **YAML-спеки** (42 файла) — source of truth | 42 `.yaml` |
|
||||||
|
| `universal_rebuild/tools/` | Инструменты генерации | 5 тулов |
|
||||||
|
| `universal_rebuild/tools/service_spec_gen/` | API → YAML (основной генератор) | 1 `.go` |
|
||||||
|
| `universal_rebuild/tools/gen_v2/` | YAML → Go (основной генератор) | 1 `.go` |
|
||||||
|
| `universal_rebuild/tools/docs_template_gen_v2/` | YAML → Документация | 1 `.go` |
|
||||||
|
| `universal_rebuild/tools/docs_template_gen/` | Docs gen v1 | 1 `.go` |
|
||||||
|
| `universal_rebuild/tools/ops_docs_gen/` | Документация операций | 1 `.go` |
|
||||||
|
| `devops/` | DevOps скрипты и CI | ~20 файлов |
|
||||||
|
| `devops/profiles/prod/` | **PROD профиль** (версия 2.1.23) | profile.env, services_list, timeouts |
|
||||||
|
| `devops/profiles/test/` | **TEST профиль** (версия 5.0.55) | profile.env, services_list, timeouts |
|
||||||
|
| `devops/profiles/dev/` | **DEV профиль** (версия 3.0.1) | profile.env, services_list, timeouts |
|
||||||
|
| `devops/config/` | Мастер-список сервисов + таймауты | 2 файла |
|
||||||
|
| `devops/ci/` | GitLab CI пайплайн | 1 файл |
|
||||||
|
| `docs/` | **MkDocs документация** | ~600+ MD файлов |
|
||||||
|
| `docs/30_registry/resources/` | **Реестр ресурсов** (документация по каждому сервису) | ~500+ |
|
||||||
|
| `docs/50_history/` | История разработки (24 спринта) | 24 `.md` |
|
||||||
|
| `docs/ops/` | Операционные документы (runbook, troubleshooting) | 9 `.md` |
|
||||||
|
| `cloud-dashboard/` | FastAPI дашборд мониторинга | Python + K8s |
|
||||||
|
| `HAR/` | HTTP-трассировки API (8 файлов) | 8 `.har` |
|
||||||
|
| `HISTORY/OPUS/` | История работы с AI-ассистентом Opus | 7 `.md` |
|
||||||
|
| `PROD_STAND/` | Terraform-конфиги продакшен-стенда | ~20 файлов |
|
||||||
|
| `TEST_STAND/` | Terraform-конфиги тестового стенда | ~15 файлов |
|
||||||
|
| `RABBIT/` | Terraform-конфиги RabbitMQ | 2 `.tf` |
|
||||||
|
| `tools/` | Вспомогательные утилиты | ~15 файлов |
|
||||||
|
| `secrets/` | Токены и ключи (в gitignore) | 6 файлов |
|
||||||
|
| `scripts/` | Скрипты деплоя | 5 файлов |
|
||||||
|
| `charts/` | Пусто (под Helm-чарты) | — |
|
||||||
|
| `.github/` | GitHub Actions + Copilot инструкции | 4 файла |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 2. Версии — полная матрица
|
||||||
|
|
||||||
|
### 2.1. Код
|
||||||
|
|
||||||
|
| Компонент | Путь | Версия |
|
||||||
|
|-----------|------|--------|
|
||||||
|
| **Universal провайдер** | `universal_rebuild/main.go` | **5.0.56** |
|
||||||
|
| **Legacy провайдер** | `main.go` | **5.0.52** |
|
||||||
|
|
||||||
|
Оба кода указывают на один registry-адрес `terra.k8c.ru/nubes/nubes`.
|
||||||
|
|
||||||
|
### 2.2. Профили (devops/profiles/)
|
||||||
|
|
||||||
|
| Стенд | Файл | RELEASE_VERSION | PROVIDER_VERSION | DOCS_VERSION |
|
||||||
|
|-------|------|-----------------|------------------|--------------|
|
||||||
|
| **PROD** | `prod/profile.env` | **2.1.23** | **2.1.23** | **2.1.23** |
|
||||||
|
| **TEST** | `test/profile.env` | **5.0.55** | **5.0.55** | **5.0.55** |
|
||||||
|
| **DEV** | `dev/profile.env` | **3.0.1** | **3.0.1** | **3.0.1** |
|
||||||
|
|
||||||
|
### 2.3. Registry (terra.k8c.ru — опубликованное)
|
||||||
|
|
||||||
|
| Линейка | Количество | Диапазон | Последняя |
|
||||||
|
|---------|-----------|----------|-----------|
|
||||||
|
| **2.x** (Legacy) | 35 версий | 2.0.0 → **2.12.13** | 2.12.13 |
|
||||||
|
| **5.x** (Universal) | 52 версии | 5.0.1 → **5.0.55** | 5.0.55 |
|
||||||
|
|
||||||
|
**Всего на регистре: 87 версий.**
|
||||||
|
|
||||||
|
### 2.4. Документация (опубликованная)
|
||||||
|
|
||||||
|
| Версия | Статус |
|
||||||
|
|--------|--------|
|
||||||
|
| `2.0.0` | ✅ 200 |
|
||||||
|
| `2.1.2` | ✅ 200 |
|
||||||
|
| `2.1.23` | ✅ 200 |
|
||||||
|
| `5.0.1` | ✅ 200 |
|
||||||
|
| `5.0.51` | ✅ 200 |
|
||||||
|
| `5.0.55` | ❌ 404 |
|
||||||
|
| `5.0.56` | ❌ 404 |
|
||||||
|
|
||||||
|
**Проблема:** документация для 5.x публиковалась не для всех версий. 5.0.1 и 5.0.51 есть, 5.0.55 — нет.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 3. Что не синхронизировано
|
||||||
|
|
||||||
|
### Разрыв между кодом и профилями
|
||||||
|
|
||||||
|
| Что | Код | PROD профиль | Registry | Разрыв |
|
||||||
|
|-----|-----|-------------|----------|--------|
|
||||||
|
| Universal | 5.0.56 | 5.0.55 (test) | 5.0.55 | +1 |
|
||||||
|
| Legacy | 5.0.52 | 2.1.23 (prod) | 2.12.13 | -? |
|
||||||
|
|
||||||
|
- **Universal код (5.0.56) новее registry-версии (5.0.55).** Наши правки P0-P2 + регенерация 88 ресурсов не опубликованы.
|
||||||
|
- **PROD профиль (2.1.23) использует Legacy.** Universal (5.x) развёрнут только на TEST.
|
||||||
|
- **DEV профиль (3.0.1)** — непонятная версия, не совпадает ни с кодом, ни с registry.
|
||||||
|
|
||||||
|
### Разрыв между услугами в PROD и TEST
|
||||||
|
|
||||||
|
| Файл | PROD | TEST |
|
||||||
|
|------|------|------|
|
||||||
|
| `services_list.txt` | 27 активных | 31 активный |
|
||||||
|
| Отличия | Нет: `vcOrgSaas`, `vcexternalip`, `superset`, `k8sZitiController`, ... | Есть все |
|
||||||
|
|
||||||
|
PROD использует меньше сервисов (старый список), TEST — полный.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 4. Итого
|
||||||
|
|
||||||
|
1. Universal (5.0.56) — самая свежая версия кода, но **не опубликована**
|
||||||
|
2. PROD стоит на Legacy 2.1.23 — старом ручном провайдере
|
||||||
|
3. Документация для 5.x публикуется нерегулярно (дыры)
|
||||||
|
4. DEV профиль (3.0.1) — не используется, версия ничему не соответствует
|
||||||
Reference in New Issue
Block a user