110 lines
5.3 KiB
Markdown
110 lines
5.3 KiB
Markdown
**Language / Язык:** [English](../web-ui.md) | [Русский](web-ui.md)
|
||
|
||
# Web UI
|
||
|
||
Откройте [https://localhost/](https://localhost/) после `make up` (gateway) или
|
||
HTTPS URL, который печатает `make up-local`. Внутренний порт симулятора —
|
||
`8080`; лабораторный UI также доступен на этом хосте.
|
||
|
||
UI — это лабораторная консоль для симулятора **vSphere**, а не замена
|
||
vSphere Client. Она поддерживает светлую и тёмную темы, мажоры каталога
|
||
**6–9** (уровни vSphere 7–8.0U2), редактирование запроса/ответа, историю и
|
||
применение runtime-контракта.
|
||
|
||
## Скриншоты
|
||
|
||
### Главная консоль
|
||
|
||

|
||
|
||
### Каталог API (мажоры 6–9)
|
||
|
||

|
||
|
||
### Браузер endpoint'ов
|
||
|
||

|
||
|
||
### Запрос / ответ
|
||
|
||

|
||
|
||

|
||
|
||
### История
|
||
|
||

|
||
|
||
### Аутентификация
|
||
|
||

|
||
|
||
### Данные / seed
|
||
|
||

|
||
|
||
### Окружение
|
||
|
||

|
||
|
||
### Справка — совместимость
|
||
|
||

|
||
|
||
## Возможности
|
||
|
||
- Дерево endpoint'ов и селектор метода, управляемые выбранным мажором каталога
|
||
- Параметры и примеры payload, производные от контракта
|
||
- Панель Query parameters (левая колонка) с live-превью query string для GET-фильтров
|
||
- Редактор запроса, просмотрщик ответа и история
|
||
- Вход в сессию через `POST /api/session` (Basic) → заголовок/cookie
|
||
`vmware-api-session-id`
|
||
- Сводка окружения (версия runtime, хосты, ВМ, кластеры, datastore, сети)
|
||
- Предпросмотр запросов в виде curl
|
||
- Индикатор покрытия для реализованного реестра REST
|
||
- Hot-swap **Apply as runtime** для активного уровня мажора
|
||
- Загрузка demo / seed (профили `small` / `large` / `big` в DATA)
|
||
- Компактная консоль на `/console.html`
|
||
- Ссылка на OpenAPI по адресу `/docs`
|
||
|
||
## Аутентификация (лаборатория)
|
||
|
||
| Пользователь | Пароль | Роль |
|
||
|---|---|---|
|
||
| `administrator@vsphere.local` | `VMware1!` | Administrator |
|
||
| `readonly@vsphere.local` | `VMware1!` | ReadOnly |
|
||
| `operator@vsphere.local` | `VMware1!` | VirtualMachinePowerUser |
|
||
| `vmadmin@vsphere.local` | `VMware1!` | VirtualMachineAdministrator |
|
||
|
||
После входа кнопка Send автоматически прикладывает `vmware-api-session-id`.
|
||
|
||
## Вспомогательные методы backend
|
||
|
||
| Метод | Path | Назначение |
|
||
|---|---|---|
|
||
| GET | `/ui/api/versions` | Мажоры каталога в сравнении с runtime |
|
||
| GET | `/ui/api/catalog?major=N` | Каталог для мажора 6–9 |
|
||
| GET | `/ui/api/method?...` | Метаданные одного метода |
|
||
| GET | `/ui/api/compatibility?major=N` | Payload покрытия |
|
||
| POST | `/ui/api/contract/apply?major=N` | Hot-swap runtime-контракта |
|
||
| GET | `/ui/api/demo/state` | Состояние демо-набора данных |
|
||
| POST | `/ui/api/demo/load` | Загрузить `big` (20 hosts / 2000 VMs) |
|
||
| POST | `/ui/api/vsphere/seed?profile=…` | Reseed `small` / `large` / `big` |
|
||
|
||
## Workflow работы с версиями
|
||
|
||
1. Выберите мажор **6 / 7 / 8 / 9** в каталоге.
|
||
2. Изучите методы и покрытие.
|
||
3. Используйте **Apply as runtime**, когда нужно, чтобы живые маршруты были
|
||
ограничены уровнем этого мажора.
|
||
4. Подтвердите через `/api/appliance/system/version` и `/ui/api/compatibility`.
|
||
|
||
Hot-swap хранится только в памяти; перезапуск восстанавливает настройки по
|
||
умолчанию. Подробности: [Версии API](api-versions.md).
|
||
|
||
## Замечание о безопасности
|
||
|
||
Эндпоинты UI и demo предназначены для локальной разработки. В текущей
|
||
сборке они не защищены отдельным admin-токеном. Не выставляйте порт
|
||
симулятора в недоверенные сети.
|