CLI reference / service / converge

stado service converge

Invocation

stado service converge [OPTIONS] <TARGET> [BINARY]

Purpose

Is the host running the version the registry declares for it? `list` and `show` answer questions about the unit -- loaded, running, which program -- and every one of those answers stays true across a release that never reached the box. This compares `targets[].managed_versions`, the declared version of each managed binary on TARGET, against the version that host actually runs. Verdicts are `in-sync`, `drifted`, and `unknown` for a binary whose installed version could not be read; the third is never folded into either of the other two. Reporting exits non-zero on `drifted` alone, so an uninstalled reporting helper cannot masquerade as drift. `--apply` delivers the declared version of every drifted binary through `stado host release`, re-reads the installed versions afterwards, and exits non-zero unless every binary in scope is confirmed `in-sync`.

Required inputs and options

Input or optionContract
<TARGET>Registry host to compare against its own declarations
[BINARY]One managed binary by name; omit for every binary TARGET declares a version for
--applyDeliver the declared version of every drifted binary, then read the installed versions back
--jsonCommand option; required or optional as shown in the invocation.

Output and state effect

It performs the operation described above and emits its operator result on standard output or standard error. Any state change is limited to the resources and records named by the purpose and options on this page.

Refusals

  • Before dispatch, Stado refuses a missing required token shown in the invocation, an unknown option, or a value outside a listed value set; argument-usage failures exit with code 2.