Check, then apply a play

§ 1Purpose

Preview what a play would change (report-only), then converge the machine.

§ 2Prerequisites

§ 3Flowchart

1. Dry-run with check2. Apply to converge3. Confirmidempotence

§ 4Steps

§ 4.11

§ 4.2Dry-run with check

console
$ config-weave check ./my-playbook baseline
make-a   not configured
make-b   not configured

check never mutates

Each step's check() runs report-only: already configured / not configured / skipped (condition false). Nothing is written.

Run config-weave check ./my-playbook <play> to see the per-step status without changing anything. Use --var KEY=VALUE / --var-file to supply variables.

§ 4.32

§ 4.4Apply to converge

console
$ config-weave apply ./my-playbook baseline
make-a   configured
make-b   configured

Run config-weave apply ./my-playbook <play>. Each unconfigured step applies, then re-checks; configured means apply changed it and the re-check confirmed. A reboot-required step halts the play with exit 3.

§ 4.53

§ 4.6Confirm idempotence

console
$ config-weave apply ./my-playbook baseline
make-a   already configured
make-b   already configured

Run apply again: every step should report already configured. If a step re-applies, its check depends on in-process state and the convergence contract is broken.

Verification

A second apply reports every step already configured and exits 0.