swarm-ui: build the forge link from swarm.forge.domain
The swarm-controller builds the Forge quick link from services.hyperhive.swarm.forge.domain, replacing hive-forge/default.nix's per-host entry, so all seven swarm-service links come from swarm-level options. Also drops the remaining references to the removed matrix GUI switch: the HiveUrls / Urls / hive_urls docs, the hivectl.md `open` note and the gateway.md vhost-map rows, which name `gatewayHost` instead. The grafana, victoriametrics and victorialogs modules' comments no longer mention a quick-link they do not define. Refs #4885
This commit is contained in:
parent
6786d54e5a
commit
72e9e1bb4a
11 changed files with 25 additions and 31 deletions
|
|
@ -252,16 +252,6 @@ in
|
|||
# The forge container resolves the rest of the hive through dnsmasq.
|
||||
services.hyperhive.gateway.dns.enable = lib.mkDefault true;
|
||||
|
||||
# This swarm-ui quick-links entry. See
|
||||
# `services.hyperhive.swarm.controller.links`'s description.
|
||||
services.hyperhive.swarm.controller.links = [
|
||||
{
|
||||
label = "Forge";
|
||||
icon = "⚒";
|
||||
url = "https://${cfg.domain}/";
|
||||
}
|
||||
];
|
||||
|
||||
# The metrics endpoint, declared once: the collector both scrapes this
|
||||
# URL and derives from it the audience its token is minted for.
|
||||
#
|
||||
|
|
|
|||
|
|
@ -31,6 +31,11 @@ let
|
|||
url = "https://${s.domain}/";
|
||||
})
|
||||
[
|
||||
{
|
||||
label = "Forge";
|
||||
icon = "⚒";
|
||||
inherit (swarmCfg.forge) domain;
|
||||
}
|
||||
{
|
||||
label = "Authelia";
|
||||
icon = "🔑";
|
||||
|
|
@ -462,13 +467,13 @@ in
|
|||
add arbitrary extra entries here directly with no swarm-controller
|
||||
or swarm-ui change.
|
||||
|
||||
The Authelia, Grafana, Metrics and Logs entries come from
|
||||
The Forge, Authelia, Grafana, Metrics and Logs entries come from
|
||||
`services.hyperhive.swarm.<service>.domain`, the Bao entry from
|
||||
`services.hyperhive.swarm.bao.ui.domain`, and the Matrix entry
|
||||
from `services.hyperhive.swarm.matrix.gatewayHost` when it is set,
|
||||
so they are present whichever host runs each service.
|
||||
`hive-forge/default.nix` and `swarm-ui.nix` contribute their own
|
||||
entries, and only where they are enabled on this host.
|
||||
`swarm-ui.nix` contributes its own API-docs entry wherever the
|
||||
swarm UI is enabled on this host.
|
||||
|
||||
Read only on the host that runs the controller.
|
||||
'';
|
||||
|
|
|
|||
|
|
@ -388,7 +388,7 @@ in
|
|||
};
|
||||
|
||||
config = lib.mkIf deployCfg.grafana.enable {
|
||||
# The gateway name and the quick-link, both inside `deploy.grafana` — that
|
||||
# The gateway name, inside `deploy.grafana` — that
|
||||
# guard is the load-bearing part. Every hive in a swarm may know this UI
|
||||
# exists, but only the host that RUNS it may claim the name; a client
|
||||
# hive declaring the vhost would answer for a service it does not have.
|
||||
|
|
|
|||
|
|
@ -101,7 +101,7 @@ in
|
|||
# hosts are separate evaluations.
|
||||
services.hyperhive.swarm.otel.scrapeTargets.victorialogs = "127.0.0.1:${toString cfg.port}";
|
||||
|
||||
# The gateway name and the quick-link, both inside `deployCfg.victorialogs.enable` — same
|
||||
# The gateway name, inside `deployCfg.victorialogs.enable` — same
|
||||
# "only the host that runs the service may claim the name" guard every
|
||||
# sibling swarm-service module uses (`swarm-grafana.nix`,
|
||||
# `swarm-victoriametrics.nix`).
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@ in
|
|||
};
|
||||
|
||||
config = lib.mkIf deployCfg.victoriametrics.enable {
|
||||
# The gateway name and the quick-link, both inside `deployCfg.victoriametrics.enable` — that
|
||||
# The gateway name, inside `deployCfg.victoriametrics.enable` — that
|
||||
# guard is the load-bearing part. Every hive in a swarm may know this
|
||||
# store exists, but only the host that RUNS it may claim the name; a
|
||||
# client hive declaring the vhost would answer for a service it does not
|
||||
|
|
|
|||
|
|
@ -117,7 +117,7 @@ let
|
|||
Logs = s.victorialogs.domain;
|
||||
Matrix = s.matrix.gatewayHost;
|
||||
Bao = s.bao.ui.domain;
|
||||
# forge: added once hive-forge/default.nix drops its per-host link
|
||||
Forge = s.forge.domain;
|
||||
};
|
||||
swarmServiceLinksOf =
|
||||
cfg:
|
||||
|
|
|
|||
Loading…
Reference in a new issue