dashboard: serve the dashboard at /, fold kept state in as a tab, add a pages menu
Drop the H0M3 tile hub and the core page. The dashboard is now the index; kept state is its fifth tab. A pages menu in the chrome links flow, stats, API docs and the swarm UI. The swarm apex URL comes from services.hyperhive.swarm.domain via HIVE_SWARM_PUBLIC_URL and the new swarm_public_url field of the state snapshot.
This commit is contained in:
parent
265f8a47cc
commit
0622736b30
35 changed files with 661 additions and 986 deletions
|
|
@ -208,6 +208,13 @@ in
|
|||
# forge links rather than emitting one it can't justify.
|
||||
HIVE_FORGE_PUBLIC_URL = config.services.hyperhive.swarm.forge.publicUrl;
|
||||
}
|
||||
// lib.optionalAttrs (config.services.hyperhive.swarm.domain != null) {
|
||||
# Browser URL of the swarm UI, which answers on the swarm apex domain
|
||||
# (see ../swarm-ui.nix). The dashboard links to it from its pages menu.
|
||||
# Absent when the domain is unset, so the link is hidden rather than
|
||||
# guessed.
|
||||
HIVE_SWARM_PUBLIC_URL = "https://${config.services.hyperhive.swarm.domain}/";
|
||||
}
|
||||
// lib.optionalAttrs (config.services.hyperhive.swarm.matrix.gatewayHost != null) {
|
||||
# Browser-facing matrix GUI (fluffychat) URL — the gateway
|
||||
# vhost (`gatewayHost`, `chat.<swarm-domain>` by default). Surfaced via the daemon's `Urls`
|
||||
|
|
|
|||
|
|
@ -116,13 +116,13 @@ in
|
|||
example = "https://forge.example.com";
|
||||
description = ''
|
||||
Browser-facing forge URL the dashboard uses to build clickable
|
||||
forge links (the H0M3 Forge tile, per-agent-row forge links) —
|
||||
forge links (the per-agent-row forge links) —
|
||||
sourced into every agent container + hive-c0re as
|
||||
`HIVE_FORGE_PUBLIC_URL`.
|
||||
|
||||
Defaults to `https://''${cfg.domain}`, the gateway vhost. When
|
||||
`null`, the dashboard **hides** forge links rather than
|
||||
guessing one — see `docs/web-ui/dashboard.md::H0M3 page` for
|
||||
guessing one — see `docs/web-ui/dashboard.md::Container row` for
|
||||
the rationale (a link built from the operator's own browser
|
||||
hostname + a container port is only an accident away from
|
||||
wrong on any deployment that isn't plain localhost).
|
||||
|
|
|
|||
|
|
@ -192,7 +192,7 @@ let
|
|||
# files — hive-c0re serves none of this as a fallback.
|
||||
# `= /api/docs` (no trailing slash) redirects to `/api/docs/`: nginx
|
||||
# owns that redirect because hive-c0re has no route for it, and the
|
||||
# H0M3 hub's own `/api/docs` link (no trailing slash) would 404
|
||||
# the dashboard's own `/api/docs` links (no trailing slash) would 404
|
||||
# without it.
|
||||
swaggerUiLocations = {
|
||||
"= /api/docs" = {
|
||||
|
|
|
|||
Loading…
Reference in a new issue