for those who use virsh DHCP/DNS provider for development, note this has
been removed from develop branch of foreman-proxy this morning and
replaced by brand new provider called "libvirt". It offers the very
same functionality, but via native ruby libvirt bindings instead of
spawning "virsh" command. More than that, it also adds extra capability
of reading DHCP leases as virsh ignored DHCP leases previously [*].
We also moved configuration of the libvirt network from settings.yml to
dhcp_libvirt.yml (and dns_libvirt.yml respectively). There is a
configuration migration which will serve for production installations.
You may choose to use it or to configure the service manually (see
The virsh providers was a hack I created for easier development, but
over the time it turned out as an useful feature for regular users. With
DHCP leases capability it is almost on par with ISC DHCP, yet there is
one limitation - PTR records are not supported by libvirt API and
ignored (but they should be determined from A records, it's just ignored
what is provided by Foreman orchestration).
And by the way, the providers are IPv6 ready.
[*] ruby-libvirt 0.6.1 release is required for this capability to work
which was not yet released. On older versions, DHCP leases will be
simply not shown.
Special thanks to Dmitri who actually pushed on me to do this the right
way, it initially started as another dirty patch for the dirty virsh