ironic_inspector.common.device_hints module¶
-
ironic_inspector.common.device_hints.
find_devices_by_hints
(devices, root_device_hints)[source]¶ Find all devices that match the root device hints.
Try to find devices that match the root device hints. In order for a device to be matched it needs to satisfy all the given hints.
- Parameters
devices –
- A list of dictionaries representing the devices
containing one or more of the following keys:
- name
(String) The device name, e.g /dev/sda
- size
(Integer) Size of the device in bytes
- model
(String) Device model
- vendor
(String) Device vendor name
- serial
(String) Device serial number
- wwn
(String) Unique storage identifier
- wwn_with_extension
(String): Unique storage identifier with the vendor extension appended
- wwn_vendor_extension
(String): United vendor storage identifier
- rotational
(Boolean) Whether it’s a rotational device or not. Useful to distinguish HDDs (rotational) and SSDs (not rotational).
- hctl
(String): The SCSI address: Host, channel, target and lun. For example: ‘1:0:0:0’.
- by_path
(String): The alternative device name, e.g. /dev/disk/by-path/pci-0000:00
root_device_hints – A dictionary with the root device hints.
- Raises
ValueError, if some information is invalid.
- Returns
A generator with all matching devices as dictionaries.
-
ironic_inspector.common.device_hints.
match_root_device_hints
(devices, root_device_hints)[source]¶ Try to find a device that matches the root device hints.
Try to find a device that matches the root device hints. In order for a device to be matched it needs to satisfy all the given hints.
- Parameters
devices –
- A list of dictionaries representing the devices
containing one or more of the following keys:
- name
(String) The device name, e.g /dev/sda
- size
(Integer) Size of the device in bytes
- model
(String) Device model
- vendor
(String) Device vendor name
- serial
(String) Device serial number
- wwn
(String) Unique storage identifier
- wwn_with_extension
(String): Unique storage identifier with the vendor extension appended
- wwn_vendor_extension
(String): United vendor storage identifier
- rotational
(Boolean) Whether it’s a rotational device or not. Useful to distinguish HDDs (rotational) and SSDs (not rotational).
- hctl
(String): The SCSI address: Host, channel, target and lun. For example: ‘1:0:0:0’.
- by_path
(String): The alternative device name, e.g. /dev/disk/by-path/pci-0000:00
root_device_hints – A dictionary with the root device hints.
- Raises
ValueError, if some information is invalid.
- Returns
The first device to match all the hints or None.
-
ironic_inspector.common.device_hints.
parse_root_device_hints
(root_device)[source]¶ Parse the root_device property of a node.
Parses and validates the root_device property of a node. These are hints for how a node’s root device is created. The ‘size’ hint should be a positive integer. The ‘rotational’ hint should be a Boolean value.
- Parameters
root_device – the root_device dictionary from the node’s property.
- Returns
a dictionary with the root device hints parsed or None if there are no hints.
- Raises
ValueError, if some information is invalid.