Watch
0
0
Fork
You've already forked hyperhive
0
hyperhive/swarmctl/src
Repository files (latest commit first)
Filename Latest commit message Latest commit date
atlas 7d95973d83 swarmctl: --swarm works after the subcommand, takes a bare domain, and login defaults to the host's swarm
`swarmctl login --swarm X` failed with "unexpected argument", and
`login --help` listed no `--swarm`: the flag was only accepted before the
verb. `--swarm` and `--ca-file` are now global, so they parse on either side
of the subcommand and show in every subcommand's help.

`--swarm` / `SWARMCTL_SWARM` accept a bare domain and prepend `https://`.
A value with a scheme is parsed as before, so `http://` is still refused.

On a swarm-controller host, the swarmctl wrapper sets
`SWARMCTL_LOGIN_DEFAULT_SWARM=https://<swarm.domain>` (`--set-default`).
Only `login` reads it, after `--swarm` and `SWARMCTL_SWARM`. The wrapper
does not set `SWARMCTL_SWARM`: that would send every socket verb (agent
create, schedule, inference, forge) through the gateway and make each need
a login. Other verbs resolve exactly as before.

No CA file is wired. The only CA material the module names is the
controller's assembled trust bundle (system CAs plus the hive anchor).
`--ca-file` hands every certificate in it to rustls-platform-verifier as
an extra root, and that fails the whole client on any one it cannot
parse, so pointing it at the system CAs is a risk nothing here can test.
The controller daemon trusts the same CA through `SSL_CERT_FILE`, which
skips unparsable certificates; using that for swarmctl is left open.

Machines that are not swarm-controller hosts (an operator laptop) get no
default; that case waits on an answer in the issue.

Fixes #5239
2026-10-14 10:15:09 +02:00
..
agent.rs swarmctl: drop agent mint-identity and its controller route 2026-10-13 08:08:06 +02:00
forge.rs swarmctl: log in with the operator's own SSO account and reach the controller through the swarm domain 2026-10-12 01:25:58 +02:00
inference.rs swarm-ui: per-agent cap on concurrently running subagents 2026-10-14 10:13:29 +02:00
login.rs swarmctl: serve login callbacks concurrently, retry a refused token once, test the refresh lock and the socket path 2026-10-12 01:25:58 +02:00
main.rs swarmctl: --swarm works after the subcommand, takes a bare domain, and login defaults to the host's swarm 2026-10-14 10:15:09 +02:00
remote.rs swarmctl: --swarm works after the subcommand, takes a bare domain, and login defaults to the host's swarm 2026-10-14 10:15:09 +02:00
schedule.rs swarmctl: log in with the operator's own SSO account and reach the controller through the swarm domain 2026-10-12 01:25:58 +02:00
users.rs nix(authelia): start with a disabled placeholder user when the user set is empty 2026-10-02 12:50:47 +02:00