Files
vmware-api-simulator/docs/ru/compatibility.md
T
inecs f8d3cbdd59 Initial commit: VMware vSphere API simulator scaffold.
Add the FastAPI app, PostgreSQL migrations, Docker/Helm packaging, API
contracts, docs, client examples, and the unit/integration/compatibility
test suite for local client and tooling labs without a real vCenter.
2026-07-18 04:42:11 +03:00

80 lines
5.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
**Language / Язык:** [English](../compatibility.md) | [Русский](compatibility.md)
# Совместимость
Этот документ объясняет, как симулятор заявляет совместимость с vSphere
Automation API по мажорам каталога **69**. Когда процесс запущен,
предпочитайте живые отчёты.
## Живые отчёты
| URL | Формат |
|---|---|
| `/ui/api/compatibility?major=N` | JSON |
Web UI также предоставляет панель совместимости, управляемую этим
endpoint'ом.
## Покрытие реестра в сравнении с проверенной поверхностью
| Мажор | Метка vSphere | Реализовано / universe | Покрытие |
|---|---|---:|---:|
| 6 | 7.0 | 31 / 1077 | 2.9% |
| 7 | 7.0 U3 | 77 / 1077 | 7.2% |
| 8 | 8.0 | 103 / 1077 | 9.6% |
| 9 | 8.0 U2 (поверхность Automation 9.1) | **1077 / 1077** | **100%** |
- **Universe** — уникальные маршруты verb+path, полученные из публичного
[индекса операций vSphere Automation API](https://developer.broadcom.com/xapis/vsphere-automation-api/latest/operation-index/)
(1348 документированных операций → ~1037 уникальных маршрутов → 1077
зарегистрированных в таблице маршрутов этого симулятора, поскольку
некоторые пути обслуживают несколько именованных операций).
- **Реализовано (по мажору)** — маршруты, чей уровень каталога
(`app/vsphere/contracts/matrix.py`) равен этому мажору или ниже. Это
оценка **каталога/документации**, а не ограничение живого трафика.
- **Runtime** — независимо от применённого мажора каталога, каждый
зарегистрированный маршрут всегда обслуживается своим реальным
обработчиком (104 глубоких обработчика) или DB-backed поверхностью
стабов. См. [Поверхность API](api-surface.md).
После **Apply as runtime** (`POST /ui/api/contract/apply?major=N`) живой
отчёт загружает журнал этого мажора (`evidence/vsphere-{version}.json`), так
что панель совместимости Web UI отражает выбранный мажор.
## Измерения evidence
Журналы по мажорам в `evidence/vsphere-{version}.json` записывают счётчики
`declared`, `implemented`, `observed` и `verified`, а также разбивки по
HTTP-методам и доменам (`auth_session`, `inventory`, …). Регенерируйте с
помощью:
```bash
make evidence # app/evidence_gen.py
make vsphere-bundles # стаб-бандлы OpenAPI + журналы evidence вместе
```
Исполняемое подтверждение этих заявлений:
| Набор тестов | Роль |
|---|---|
| `tests/compatibility/test_verified_surface.py` | hot-swap + дрейф журнала + пороги оценки |
| `tests/compatibility/test_group_smoke.py` | представительные мутации групп REST с PostgreSQL |
| `tests/compatibility/test_vsphere_pyvmomi.py` | внешний smoke-тест SOAP через pyvmomi |
| `tests/integration/test_vsphere_full_api.py` | широкое интеграционное покрытие REST/SOAP |
Дополнительные cookbook'и под [`examples/`](../../examples/README.ru.md)
и lab-набор `pulumi-vsphere` под
[`pulumi-tests/`](../../pulumi-tests/README.ru.md) (`make pulumi-tests`)
выполняются вручную или опционально в CI.
## Известные поведенческие ограничения
| Область | Поведение |
|---|---|
| Внешние системы | NSX Manager, живые LDAP/SAML/OIDC IdP и ACME-директории не обращаются к реальным удалённым сервисам; только seeded/локальное состояние |
| TLS | Только локальный self-signed development-gateway (Compose); используйте свои сертификаты / cert-manager для реальных развёртываний |
| Гипервизор | Нет реального выполнения ESXi/KVM; нет бинарных загрузок NFC |
| Корпус наблюдений | Санированные данные наблюдений реального vCenter остаются ограниченными; глубокий семантический паритет проверяется путь-за-путём указанными выше наборами тестов, а не исчерпывающим сравнением с production |
Исторические заметки о релизах: [compatibility-0.1.0.md](compatibility-0.1.0.md).