ironic.conductor.base_manager module

Base conductor manager functionality.

class ironic.conductor.base_manager.BaseConductorManager(host, topic)[source]

Bases: object

del_host(deregister=True)[source]
init_host(admin_context=None)[source]

Initialize the conductor host.

Parameters

admin_context – the admin context to pass to periodic tasks.

Raises

RuntimeError when conductor is already running.

Raises

NoDriversLoaded when no drivers are enabled on the conductor.

Raises

DriverNotFound if a driver is enabled that does not exist.

Raises

DriverLoadError if an enabled driver cannot be loaded.

Raises

DriverNameConflict if a classic driver and a dynamic driver are both enabled and have the same name.

iter_nodes(fields=None, **kwargs)[source]

Iterate over nodes mapped to this conductor.

Requests node set from and filters out nodes that are not mapped to this conductor.

Yields tuples (node_uuid, driver, conductor_group, …) where … is derived from fields argument, e.g.: fields=None means yielding (‘uuid’, ‘driver’, ‘conductor_group’), fields=[‘foo’] means yielding (‘uuid’, ‘driver’, ‘conductor_group’, ‘foo’).

Parameters
  • fields – list of fields to fetch in addition to uuid, driver, and conductor_group

  • kwargs – additional arguments to pass to dbapi when looking for nodes

Returns

generator yielding tuples of requested fields