New fleet status just recipe #66

Closed
opened 2026-07-17 18:18:02 +01:00 by nimmo · 1 comment
Owner

Idea
Now that build metadata includes the git reference that the current generation was built from, might it be interesting to have a just recipe to display that in a table?

Headings would be:
Hostname, current generation number, got revision built from, possibly the date and time it was deployed. Possibly nebula mesh IP, but hostname.mesh should usually reach them, not all machines are on the mesh and not all machines are turned on at all times.

Things to consider:
Some hosts (currently Electra and Lena) are laptops so can't be guaranteed to be online and reachable at all times.

Idea Now that build metadata includes the git reference that the current generation was built from, might it be interesting to have a just recipe to display that in a table? Headings would be: Hostname, current generation number, got revision built from, possibly the date and time it was deployed. Possibly nebula mesh IP, but hostname.mesh should usually reach them, not all machines are on the mesh and not all machines are turned on at all times. Things to consider: Some hosts (currently Electra and Lena) are laptops so can't be guaranteed to be online and reachable at all times.
Author
Owner

Refined spec after self-review:

Columns: Hostname, Generation, Revision (+specialisation in brackets), Dirty/diff count vs Origin HEAD, Deployed timestamp (when reachable).

Collection model: SSH per-host over Nebula/LAN with timeouts → mark as (unreachable) for offline hosts. Beszel covers "is it even up?" separately; Nix-specific data comes from SSH. Lena (backup machine) is low priority.

Diff count: Only shown when the running revision diverges from origin/main, with direction indicator — e.g. a1b2c3d +3 or f4e5d6 -1. Clean builds show just the short ref.

Optional later: Role/purpose column, last-seen/uptime metrics. Defer until they prove useful — keep this pragmatic over exhaustive.

Refined spec after self-review: **Columns:** Hostname, Generation, Revision (+specialisation in brackets), Dirty/diff count vs Origin HEAD, Deployed timestamp (when reachable). **Collection model:** SSH per-host over Nebula/LAN with timeouts → mark as `(unreachable)` for offline hosts. Beszel covers "is it even up?" separately; Nix-specific data comes from SSH. Lena (backup machine) is low priority. **Diff count:** Only shown when the running revision diverges from `origin/main`, with direction indicator — e.g. `a1b2c3d +3` or `f4e5d6 -1`. Clean builds show just the short ref. **Optional later:** Role/purpose column, last-seen/uptime metrics. Defer until they prove useful — keep this pragmatic over exhaustive.
nimmo added reference feat/fleet-status 2026-07-19 12:03:55 +01:00
nimmo closed this issue 2026-07-19 12:19:10 +01:00
Sign in to join this conversation.
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
nimmo/nixos-config#66
No description provided.