Examples and walkthroughs
Run source examples from the repository root after make build. The commands
and requirements in each example’s README are part of the walkthrough. Use
fictional values only; replace illustrative addresses and credentials before
execution. Recorded results and their limits live in validation
.
| Scenario | Source | Scope and prerequisites |
|---|---|---|
| First local file | Quickstart | A fresh temporary directory; no root, RPM, or systemd. Create/update/no changes/explicit removal. |
| Split inventory and service files | File inventory and service | Local /var/tmp/richt-example/greeting.conf; template path relative to the service file. |
| Weighted variables and selection | Two-host inventory | Safe to inspect with inventory validate/show; one local and one illustrative SSH host. Execution changes host configuration. |
| Full package/config/process lifecycle | Ready vmango package | Disposable DNF 4/systemd Linux target, ready repository RPMs, required privileges. No custom RPM build. |
| Failure and manual continuation | Continuation example | Config-only deliberate partial failure, repair, and saved-plan resume. |
| Two independent secret sources | Secrets example | Python 3 verifier and local Richt; dummy values, private temporary targets, frozen saved bytes, and automatic cleanup. |
| Two SSH hosts | SSH walkthrough and inventory | Ready vmango RPMs on two disposable Linux targets; replace illustrative client aliases and configure noninteractive sudo. |
Choose the appropriate workflow
Inventory commands are suitable for inspecting the supplied two-host example before any SSH or host setup:
./bin/richt inventory validate -i examples/inventory/richt.yaml
./bin/richt inventory show -i examples/inventory/richt.yaml --tag hypervisor --service vmango
They validate definitions and resolve merged variables without opening referenced templates or secret source files. Inspecting successfully does not prove target privileges, repository availability, application configuration, or reload capability.
For a persistent reviewed run, use diff -o followed by apply on the JSON
path. For a one-off run with no saved progress, apply -i prepares and applies
in memory. See CLI
and continuation
.
The RPM/systemd fixture harness and SSH harness remain developer regression tools. They create custom fixture RPMs and require their documented isolated setup; they are separate from the ready-vmango walkthrough and current package acceptance. Do not install build tools or create a fixture repository to follow the vmango example.