From 5f46fde558c467414fa151ad962caaf7f07628fa Mon Sep 17 00:00:00 2001 From: Jan Tuomi Date: Mon, 16 Feb 2026 12:59:14 +0200 Subject: Initial commit --- README.md | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 README.md (limited to 'README.md') diff --git a/README.md b/README.md new file mode 100644 index 0000000..efb931c --- /dev/null +++ b/README.md @@ -0,0 +1,33 @@ +# jprov + +`jprov` is an opinionated FreeBSD jail provisioning tool designed for near-stateless jails. It rebuilds a jail from a template dataset, applies an overlay filesystem, mounts volumes, and runs a provisioning command inside the jail. It is intended to be used after system/template upgrades, not on every jail restart. + +## Status +Early development (pre-1.0). Expect breaking changes. + +## Requirements +- FreeBSD with ZFS +- Python 3.11+ (uses `tomllib`) +- Root privileges (for `zfs`, `jail`, `mount`, `jexec`) + +## Install (uv) +```bash +uv pip install . +``` + +## Usage +```bash +jprov [-y] [--dry-run] +``` + +## Configuration +See `docs/CONFIG.md` for the main config and per-jail TOML schema. + +## Logging +All command outputs are captured to a per-run log file. On fatal error, jprov prints: +``` +script logs written to .log +``` + +## License +BSD-2-Clause -- cgit v1.3