Fleet auto-update: git-driven device reconcile #23

Open
opened 2026-06-18 12:14:58 +00:00 by bram.buijs · 1 comment
Collaborator

Managed devices should converge on new commits without a manual deploy. Propose a
dawo.autoUpdate block (comin) following the #8 interface, that tracks a flake on
code.overheid.nl and rebuilds the device when commits land.

  • A bare device tracks the upstream core (this repo). A workplace points
    dawo.autoUpdate.options.repoUrl at its own overlay flake, which consumes the
    core as an input, so the chosen overlay is pulled in on every update.
  • Tunables: repoUrl (asserts non-empty), branch, pollSeconds (default 1800).
  • Replaces the current hard-wired services-comin.

Question: is comin the right mechanism for the managed fleet, or do you prefer
deploy-rs push or system.autoUpgrade pull for the estate? PR follows the choice.

Managed devices should converge on new commits without a manual deploy. Propose a `dawo.autoUpdate` block (comin) following the #8 interface, that tracks a flake on code.overheid.nl and rebuilds the device when commits land. - A bare device tracks the upstream core (this repo). A workplace points `dawo.autoUpdate.options.repoUrl` at its own overlay flake, which consumes the core as an input, so the chosen overlay is pulled in on every update. - Tunables: `repoUrl` (asserts non-empty), `branch`, `pollSeconds` (default 1800). - Replaces the current hard-wired `services-comin`. Question: is comin the right mechanism for the managed fleet, or do you prefer deploy-rs push or `system.autoUpgrade` pull for the estate? PR follows the choice.
Collaborator

@bram.buijs wrote in #23 (comment):

Question: is comin the right mechanism for the managed fleet, or do you prefer
deploy-rs push or system.autoUpgrade pull for the estate? PR follows the choice.

I prefer comin as this has a built-in Prometheus exporter. We can use this as device-update reporting in the future.
Secondly, comin has a command line interface that is available to users without sudo and allows for easy debugging.
Thirdly, comin has desktop notifications that will inform users on the updates as they come in.

@bram.buijs wrote in https://code.overheid.nl/MinBZK/DAWO-NixOS/issues/23#issue-309: > Question: is comin the right mechanism for the managed fleet, or do you prefer > deploy-rs push or `system.autoUpgrade` pull for the estate? PR follows the choice. I prefer comin as this has a built-in Prometheus exporter. We can use this as device-update reporting in the future. Secondly, comin has a command line interface that is available to users without sudo and allows for easy debugging. Thirdly, comin has desktop notifications that will inform users on the updates as they come in.
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
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
MinBZK/DAWO-NixOS#23
No description provided.