Examples
Each example includes an inventory.kdl, plan.kdl, a README.md, and any supporting files. Find them in the examples/ directory of the repository.
hello-echo
Section titled “hello-echo”A minimal example that deploys an HTTP echo server. Great starting point.
Modules used: shell, container
web-server
Section titled “web-server”Install nginx, deploy a templated configuration file, enable the service, and run a health check.
Modules used: package, file (template), systemd, shell
user-setup
Section titled “user-setup”Create deploy users with specific shells, groups, and SSH authorized keys.
Modules used: user, file, shell
container-app
Section titled “container-app”Deploy a containerized application with port mappings, environment variables, and persistent volumes.
Modules used: container, shell
disk-management
Section titled “disk-management”Discover available disks dynamically, then format and mount each one using register and loop.
Modules used: disk, shell, register, loop
multi-tier
Section titled “multi-tier”A multi-group setup with web, app, and database tiers. Uses plan includes for shared configuration.
Modules used: include, package, file, systemd, container, shell
external-module
Section titled “external-module”Use an external plugin to set the system MOTD. Demonstrates the external keyword and the JSON-over-stdio plugin protocol with a simple Python module.
Features used: external modules, plugin protocol, SSH proxy