Metadata-Version: 2.4
Name: jprov
Version: 0.1.1
Summary: FreeBSD jail provisioning tool
Author: jprov
License: BSD-2-Clause
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: POSIX :: BSD :: FreeBSD
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.11
Description-Content-Type: text/markdown

# 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] <jailname>
```

## 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 <logpath>.log
```

## License
BSD-2-Clause
