zester
ReferenceCLI

zester update

Manage binary publishing and fleet rollout operations.

Synopsis

zester update <subcommand> [flags]

Subcommands

SubcommandDescription
publish <binary-path>Upload a binary artifact and publish its manifest
fetchDownload a published binary from the object store (verify / pre-stage)
rolloutStart a rollout to target nodes
statusShow rollout progress or node update status
abort <rollout-id>Abort an in-progress rollout
rollbackRoll back selected targets to their previous version
versionsList published versions for a component

update publish

zester update publish <binary-path> --component <peel|master> --version <version> [--goos <os>] [--goarch <arch>]
FlagDefaultRequiredDescription
--component""yesComponent type (peel or master)
--version""yesVersion string (for example v0.5.0)
--goosruntime GOOSnoTarget OS
--goarchruntime GOARCHnoTarget architecture

update fetch

Downloads a published binary from the object store and verifies its SHA-256 — the non-mutating counterpart to a rollout's internal download. Resolve it via the manifest (--component + --version, needs manifest-bucket access), or download an object key directly (--object-key + --sha256), which is exactly the watchdog's own path — it gets the key and hash from the master's update command and never reads the manifest bucket, so the direct form works under least-privilege peel credentials.

# via the manifest (operator creds)
zester update fetch --component <peel|master> --version <version> [--goos <os>] [--goarch <arch>] [--out <path>]

# direct object key (works under peel creds; the watchdog's path)
zester update fetch --object-key <key> --sha256 <hash> [--out <path>]
FlagDefaultDescription
--component""Component type (peel or master), with --version — resolves the key via the manifest
--version""Version string, with --component
--goos / --goarchruntimeTarget platform for the manifest lookup
--object-key""Download this object key directly, skipping the manifest (needs --sha256)
--sha256""Expected SHA-256 (required with --object-key)
--out""Write the binary here (default: verify only, discard)

Verify peel-cred downloads

Run it with --creds <peel.creds> (and --nats-ca / NATS_CA_FILE on a peel-only box) to confirm a peel's credentials can complete the flow-controlled object-store download that self-update depends on — the check for the grant class that broke self-update in 0.3.4.

update rollout

zester update rollout --component <peel|master> --version <version> [--target <expr>] [--batch-size <n>] [--soak-time <dur>] [--batch-pause <dur>] [--max-failed <n>] [--dry-run]
FlagDefaultRequiredDescription
--component""yesComponent type (peel or master)
--version""yesTarget version
--target*noTarget expression
--batch-size1noNodes per batch
--soak-time60snoPer-node soak period
--batch-pause30snoPause between batches
--max-failed1noAbort after N failures
--dry-runfalsenoPreview without executing

Current behavior notes:

  • Rollout target expressions are resolved by the standard targeting engine (glob, E@ PCRE, L@ list, G@ fact, and compound).
  • Resolution scope is nodes currently reporting in update-status for the selected component.

update status

zester update status --component <peel|master> [--rollout <rollout-id>]
FlagDefaultRequiredDescription
--component""yesComponent type (peel or master)
--rollout""noShow a specific rollout

update abort

zester update abort <rollout-id>

update rollback

zester update rollback --component <peel|master> [--target <expr>]
FlagDefaultRequiredDescription
--component""yesComponent type (peel or master)
--target*noTarget expression

update versions

zester update versions [--component <peel|master>]
FlagDefaultRequiredDescription
--componentpeelnoComponent to list versions for

On this page