# openstack.baremetal.v1.driver

## The Driver Class

The `Driver` class inherits from `Resource`.

class openstack.baremetal.v1.driver.Driver(_synchronized=False, connection=None, **attrs)

  The base resource

  Parameters:

    - _synchronized (bool) – This is not intended to be used directly. See `new()` and `existing()`.

    - connection (openstack.connection.Connection) – Reference to the Connection being used. Defaults to None to allow Resource objects to be used without an active Connection, such as in unit tests. Use of `self._connection` in Resource code should protect itself with a check for None.

  resources_key = 'drivers'

    Plural form of key for resource.

  base_path = '/drivers'

    The base part of the URI for this resource.

  allow_create = False

    Allow create operation for this resource.

  allow_fetch = True

    Allow get operation for this resource.

  allow_commit = False

    Allow update operation for this resource.

  allow_delete = False

    Allow delete operation for this resource.

  allow_list = True

    Allow list operation for this resource.

  hosts

    A list of active hosts that support this driver.

  links

    A list of relative links, including the self and bookmark links.

  name

    The name of the driver

  properties

    A list of links to driver properties.

  default_bios_interface

    Default BIOS interface implementation. Introduced in API microversion 1.40.

  default_boot_interface

    Default boot interface implementation. Introduced in API microversion 1.30.

  default_console_interface

    Default console interface implementation. Introduced in API microversion 1.30.

  default_deploy_interface

    Default deploy interface implementation. Introduced in API microversion 1.30.

  default_firmware_interface

    Default firmware interface implementation. Introduced in API microversion 1.86.

  default_inspect_interface

    Default inspect interface implementation. Introduced in API microversion 1.30.

  default_management_interface

    Default management interface implementation. Introduced in API microversion 1.30.

  default_network_interface

    Default network interface implementation. Introduced in API microversion 1.30.

  default_power_interface

    Default port interface implementation. Introduced in API microversion 1.30.

  default_raid_interface

    Default RAID interface implementation. Introduced in API microversion 1.30.

  default_rescue_interface

    Default rescue interface implementation. Introduced in API microversion 1.38.

  default_storage_interface

    Default storage interface implementation. Introduced in API microversion 1.33.

  default_vendor_interface

    Default vendor interface implementation. Introduced in API microversion 1.30.

  enabled_bios_interfaces

    Enabled BIOS interface implementations. Introduced in API microversion 1.40.

  enabled_boot_interfaces

    Enabled boot interface implementations. Introduced in API microversion 1.30.

  enabled_console_interfaces

    Enabled console interface implementations. Introduced in API microversion 1.30.

  enabled_deploy_interfaces

    Enabled deploy interface implementations. Introduced in API microversion 1.30.

  enabled_firmware_interfaces

    Enabled firmware interface implementations. Introduced in API microversion 1.86.

  enabled_inspect_interfaces

    Enabled inspect interface implementations. Introduced in API microversion 1.30.

  enabled_management_interfaces

    Enabled management interface implementations. Introduced in API microversion 1.30.

  enabled_network_interfaces

    Enabled network interface implementations. Introduced in API microversion 1.30.

  enabled_power_interfaces

    Enabled port interface implementations. Introduced in API microversion 1.30.

  enabled_raid_interfaces

    Enabled RAID interface implementations. Introduced in API microversion 1.30.

  enabled_rescue_interfaces

    Enabled rescue interface implementations. Introduced in API microversion 1.38.

  enabled_storage_interfaces

    Enabled storage interface implementations. Introduced in API microversion 1.33.

  enabled_vendor_interfaces

    Enabled vendor interface implementations. Introduced in API microversion 1.30.

  list_vendor_passthru(session)

    Fetch vendor specific methods exposed by driver

    Parameters:

      session – The session to use for making this request.

    Returns:

      A dict of the available vendor passthru methods for driver. Method names keys and corresponding usages in dict form as values Usage dict properties: * `async`: bool # Is passthru function invoked asynchronously * `attach`: bool # Is return value attached to response object * `description`: str # Description of what the method does * `http_methods`: list # List of HTTP methods supported

  call_vendor_passthru(session, verb, method, body=None)

    Call a vendor specific passthru method

    Contents of body are params passed to the hardware driver function. Validation happens there. Missing parameters, or excess parameters will cause the request to be rejected

    Parameters:

      - session – The session to use for making this request.

      - method – Vendor passthru method name.

      - verb – One of GET, POST, PUT, DELETE, depending on the driver and method.

      - body – passed to the vendor function as json body.

    Raises:

      `ValueError` if `verb` is not one of GET, POST, PUT, DELETE

    Returns:

      response of method call.

this page last updated: 2026-01-16 23:06:19

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.