• v0.14.9
    Release / build (push) Successful in 5m51s
    Release / notes (push) Successful in 3s
    CI / test (push) Successful in 6m24s
    Stable

    gitea-actions released this 2026-10-19 16:17:43 +02:00 | 144 commits to main since this release

    Sign-in set up from the console, with Active Directory tried before it is
    kept. A node's console now shows what the machine is doing, and a node's web
    page shows what it runs. Also fixes found trying Active Directory against a
    Samba domain controller on the test cluster. Sign-in through it, nested
    groups and a disabled account suspended by the sync all worked there.

    Upgrading.

    • No migration.
    • auth.ldap and auth.oidc are in the cluster's settings, as before. A
      block written into server.yaml on a cluster with a store was never
      read; the log said so. Put it in with llmgw ctl config edit, or set it up
      again from the console's Sign-in screen.
    • A Samba DC's own autogenerated certificate is refused (a negative serial
      and no SAN). Give it one from a CA.

    Added

    • Sign-in set up from the console. Under People → Sign-in, sudo llmgw shows how people get in: single sign-on,
      Active Directory and SCIM, each on or off. It also shows the directory's last sync. E sets up Entra ID from the
      tenant and client IDs. D sets up Active Directory, and the directory is tried before it is kept: each server
      reached and bound, how many people may sign in, how many are in each group. Nothing is kept if a step fails. The
      password, client secret and SCIM token are kept in the store as store:auth/…, sealed by the master key. The
      domain's CA goes into the settings (auth.ldap.ca), so no file has to be put on each control plane. The admin API
      has the same: GET /api/v1/auth, POST /api/v1/auth/ldap/test and PUT /api/v1/auth/secrets/{name}.
    • A node's page says what it runs. It now shows the agent's version, marked when the control plane runs another,
      and the engines with their versions. Each GPU row now names the models loaded on that card, and each engine row its
      GPUs.
    • sudo llmgw on a node opens on what the machine is doing. A new Overview screen shows the agent's state and
      version, each control plane it dials and whether it answers, every GPU with the models on it, the engines running
      here, the free space for weights and engines, and the agent's warnings of the last hour. It is read on the node
      itself, every three seconds, so it needs no admin token and works while the control plane is out of reach.

    Fixed

    • A broken auth.ldap no longer stops every control plane. It is the cluster's setting. A CA file that one
      machine could not use made llmgw server exit on every control plane, and no ctl config could then put it right.
      Directory sign-in is now turned off on that control plane, with an error in its log. Local accounts still sign in.
    • A second llmgw server on a machine stops before it competes to lead. llmgw server check (no such command)
      ran a whole server. Its ports were taken, yet it went on to hold the leader's lease for three hours while the real
      control planes stood by. server now refuses words it does not know and takes its ports before anything else.
    • The single sign-on and Active Directory guides said server.yaml. On a cluster with a store, auth is in the
      cluster's settings and the file's block is not read. They now say llmgw ctl config edit, and what certificate a
      domain controller needs.
    Downloads