Context
A runnable example should show the intended project boundary: quickchr creates/provisions the CHR and owns the VM lifecycle; centrs then uses the quickchr target to perform validated RouterOS operations.
This is separate from the lightweight help/setup/docs discovery issue (#72) because it depends on the centrs --quickchr surface from tikoci/centrs#134.
Strawman
Add either a new examples/centrs/ example or extend examples/harness/ with a centrs-specific sibling:
- boot or start a named quickchr machine;
- run a centrs command such as
centrs retrieve --quickchr <name> /system/resource and centrs execute --quickchr <name> -- :put [/system/identity/get name];
- demonstrate that consumer code never reads
machine.json; it goes through the public quickchr handoff / centrs --quickchr path;
- show the “after create/provisioning, use centrs for validated RouterOS work” workflow;
- clean up the machine in
finally / existing example helper style.
Verification shape
Because this example depends on an external package and centrs#134, decide whether the quickchr smoke harness should:
- skip when
centrs is not installed;
- gate only in an extended examples job; or
- use a repo-adjacent centrs checkout/package during local development.
Do not add a flaky example to the normal quickchr smoke set before the dependency shape is settled.
Dependencies
Done-when
The example is runnable, documented in examples coverage, and verifies the intended quickchr→centrs workflow without direct state-file reads.
Context
A runnable example should show the intended project boundary: quickchr creates/provisions the CHR and owns the VM lifecycle; centrs then uses the quickchr target to perform validated RouterOS operations.
This is separate from the lightweight help/setup/docs discovery issue (#72) because it depends on the centrs
--quickchrsurface fromtikoci/centrs#134.Strawman
Add either a new
examples/centrs/example or extendexamples/harness/with a centrs-specific sibling:centrs retrieve --quickchr <name> /system/resourceandcentrs execute --quickchr <name> -- :put [/system/identity/get name];machine.json; it goes through the public quickchr handoff / centrs--quickchrpath;finally/ existing example helper style.Verification shape
Because this example depends on an external package and centrs#134, decide whether the quickchr smoke harness should:
centrsis not installed;Do not add a flaky example to the normal quickchr smoke set before the dependency shape is settled.
Dependencies
tikoci/centrs#134for--quickchr <name>target resolution.Done-when
The example is runnable, documented in examples coverage, and verifies the intended quickchr→centrs workflow without direct state-file reads.