ironic_inspector.pxe_filter.dnsmasq module

class ironic_inspector.pxe_filter.dnsmasq.DnsmasqFilter[source]

Bases: 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 deny list events by prefetching the list before 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 added to the allow list while the rest are added to the deny list in the dnsmasq configuration.

Parameters:

ironic – an ironic client instance.

Raises:

OSError, IOError.

Returns:

None.