Zbuilder: Building VMs and applying ansible playbooks
ZBuilder is a tool to help you build VMs ready to be transferred to ansible. By using ansible as a library, it has access to all ansible variables. This way it achieves high integration with ansible.
Installation
zbuilder depends on the libvirt python bindings, which compile against the libvirt headers, so install those first:
apt install libvirt-dev pkg-config gcc # or: dnf install libvirt-devel
Then install with:
pipx install --force zbuilder
or
pip3 install --user --upgrade zbuilder
The gcp provider needs the google client libraries, which ship as an extra:
pipx install --force 'zbuilder[gcp]'
The proxmox provider needs proxmoxer, which ships as an extra:
pipx install --force 'zbuilder[proxmox]'
Providers
| Family | Providers |
|---|---|
| VM | aws, gcp, kvm, proxmox |
| DNS | ansible, aws, bind, gcp, powerdns |
| IPAM | phpipam |
See the documentation for the
settings each one accepts, or run zbuilder providers.
Development
During development you can:
uv sync
. .venv/bin/activate
uv run pytest # run the tests
prek run --all-files # lint and format
Links
Release files for zbuilder 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| zbuilder-0.2.1.tar.gz | 38.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| zbuilder-0.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 84.6 kB
Release files / zbuilder-0.2.1.tar.gz
| Download URL | zbuilder-0.2.1.tar.gz |
|---|---|
| Size | 38.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
88951f85f56a3623eb589f2b1d1058d694efcc5ab23569ed6abbf0b52ebcd4a4
|
|
BLAKE2b-256 checksum How to use checksums |
42830114bdc8b3aead09128b4c3a6b508ad26554d78bb6c7d383dd9cc5b3c2c3
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / zbuilder-0.2.1-py3-none-any.whl
| Download URL | zbuilder-0.2.1-py3-none-any.whl |
|---|---|
| Size | 45.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c8ef6ac686c09d5bffe697f5a635542e7e6154def92a09163195fc564bae5b64
|
|
BLAKE2b-256 checksum How to use checksums |
1ddb57fd77ae017392544a0e1db7a181f8e9aabea9a43887feeae26ba9dddab8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|