The 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.
Raises:ConfigInvalid if required config options for connection with radosgw are missing while storing config drive.
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, …) where … is derived from fields argument, e.g.: fields=None means yielding (‘uuid’, ‘driver’), fields=[‘foo’] means yielding (‘uuid’, ‘driver’, ‘foo’).

Parameters:
  • fields – list of fields to fetch in addition to uuid and driver
  • kwargs – additional arguments to pass to dbapi when looking for nodes
Returns:

generator yielding tuples of requested fields