The ironic_inspector.pxe_filter.dnsmasq Module

class ironic_inspector.pxe_filter.dnsmasq.DnsmasqFilter[source]

Bases: ironic_inspector.pxe_filter.base.BaseFilter

The dnsmasq PXE filter driver.

A pxe filter driver implementation that controls access to dnsmasq through amending its configuration.

init_filter()[source]

Performs an initial sync with ironic and starts dnsmasq.

The initial _sync() call reduces the chances dnsmasq might lose some inotify blacklist events by prefetching the blacklist before the dnsmasq is started.

Raises

OSError, IOError.

Returns

None.

reset()[source]

Stop dnsmasq and upcall reset.

sync(ironic)[source]

Sync dnsmasq configuration with current Ironic&Inspector state.

Polls all ironic ports. Those being inspected, the active ones, are whitelisted while the rest are blacklisted in the dnsmasq configuration.

Parameters

ironic – an ironic client instance.

Raises

OSError, IOError.

Returns

None.