Add OpenStack request-body schemas and nested console PARAM sync.
This commit is contained in:
+56
-13
@@ -2,22 +2,63 @@
|
||||
|
||||
# Web UI
|
||||
|
||||
Console URL (Compose default): [http://127.0.0.1:5000/](http://127.0.0.1:5000/)
|
||||
Interactive console for browsing Engine contract operations, issuing lab tokens,
|
||||
sending Try-it requests, and managing seed data.
|
||||
|
||||
Drawer UX matches the other laboratory simulators in this family:
|
||||
Compose default URL: [http://127.0.0.1:5000/](http://127.0.0.1:5000/)
|
||||
(With `make up-local`, use the local UI port from your `.env`, e.g. `6080` / `7080`.)
|
||||
|
||||

|
||||
|
||||
## Workspace
|
||||
|
||||
| Area | Purpose |
|
||||
|---|---|
|
||||
| Auth | Issue lab tokens / show principal |
|
||||
| API catalog | Browse contract operations for the active series |
|
||||
| Coverage | Pack / handler coverage summary |
|
||||
| Help | Short operator notes |
|
||||
| Data | Reseed `minimal` / `demo` |
|
||||
| Environment | Active series, runtime hints, **Apply pack** hot-swap |
|
||||
| Endpoint picker | Searchable catalog of contract paths (Engine series pack) |
|
||||
| Method tabs | `GET` / `POST` / `PUT` / `DELETE` for the selected path |
|
||||
| Request body | Engine-shaped JSON sample for create/update/action |
|
||||
| Params | Flattened path + body fields for quick edits |
|
||||
| Response | Status + JSON tree for the last call |
|
||||
| History | Recent Try-it requests (replay / restore) |
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
Request bodies follow the real Engine convention (root-wrapped entity or
|
||||
`action`). Samples include nested refs (`cluster`, `template`, CPU topology,
|
||||
storage domains) aligned with the seeded lab inventory — not a one-field stub.
|
||||
|
||||

|
||||
|
||||
## Drawers
|
||||
|
||||
| Drawer | Purpose |
|
||||
|---|---|
|
||||
| Authentication | Engine SSO password grant / paste Bearer token |
|
||||
| API catalog | Browse series packs; **Apply as runtime** hot-swap |
|
||||
| Help → Compatibility | Declared / implemented / verified surface summary |
|
||||
| Data | Reseed `minimal` / `small` / `large` / `big` |
|
||||
| Environment | Runtime series + datacenter inventory overview |
|
||||
|
||||

|
||||
|
||||
Default lab principals: `admin@internal`, `ops@internal`, `developer@internal`,
|
||||
`demo@internal` / `secret`. Scope: `ovirt-app-api`.
|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||

|
||||
|
||||
## Series hot-swap
|
||||
|
||||
From Environment (or UI API):
|
||||
From **API catalog** → **Apply as runtime** (or UI API):
|
||||
|
||||
- `POST /ui/api/ovirt/contracts/activate` with `{"series":"4.4"}`
|
||||
- `POST /ui/api/contract/apply?major=N`
|
||||
@@ -26,8 +67,10 @@ This remounts the in-memory contract routes without rebuilding the image. A
|
||||
process restart restores the cold-start `OVIRT_SERIES` value. See
|
||||
[API versions](api-versions.md).
|
||||
|
||||
Branding uses oVirt blue `#0076B6` and charcoal `#1D2226`.
|
||||
## Notes
|
||||
|
||||
The UI talks to the same simulator process as the Engine API; only the published
|
||||
listener differs ([ports.md](ports.md)). OpenAPI schema:
|
||||
[http://127.0.0.1:5000/docs](http://127.0.0.1:5000/docs) (also on Engine port).
|
||||
- Branding uses oVirt blue `#0076B6` and charcoal `#1D2226`.
|
||||
- The UI talks to the same simulator process as the Engine API; only the
|
||||
published listener differs ([ports.md](ports.md)).
|
||||
- OpenAPI schema: [http://127.0.0.1:5000/docs](http://127.0.0.1:5000/docs)
|
||||
(also available on the Engine HTTPS port).
|
||||
|
||||
Reference in New Issue
Block a user