Current Series Release Notes¶
11.3.0-2¶
Deprecation Notes¶
PReP (PowerPC Reference Platform) partition support is now deprecated and will be removed in a future release. This affects ppc64* (PowerPC 64-bit) hardware support. While POWER hardware remains an active platform, it represents a small, specialized share of typical ironic-python-agent deployment patterns.
The feature was originally added to support booting partition images locally on PowerPC hardware, but usage in the ironic-python-agent ecosystem may be limited.
Note that RAID support for PReP partitions was never implemented and will not be added before removal.
Users with ppc64* hardware deployments should plan to migrate to alternative solutions or contact the Ironic community if they have specific requirements.
11.3.0¶
New Features¶
Adds support for the
is_root_volumeproperty in software RAID configurations. The property can be set to True on a RAID volume to indicate that it should be used as the root device for OS installation. When set to False, the volume and the underlying physical devices and partitions are excluded from consideration as potential root devices. It defaults to None, which has no effect on root device selection.
Adds support for automatically skipping BMC detection via ipmitool when Ironic indicates the node uses out-of-band management interfaces (e.g., Redfish, iDRAC Redfish, iLO, iRMC). This reduces deployment time and avoids unnecessary ipmitool calls when the BMC information is already known to Ironic.
BMC information (address, v6address, and MAC) is now cached after the first detection to avoid repeated expensive ipmitool calls during subsequent inventory collections. This improves performance during heartbeats and long-running operations like cleaning or rescue mode.
Upgrade Notes¶
Support for Python 3.9 has been removed. Now Python 3.10 is the minimum version supported.
Deprecation Notes¶
If a volume_name is present in the skip_block_devices property, the function validate_confiuguration will now fail unless all logical disks in the target_raid_config have a volume_name specified.
Bug Fixes¶
Fix a conditional which is supposed to check whether there are any erasable devices. In the previous state, the conditional was wrong as the call was missing the node as a parameter.
Fixes matching hints with lists of WWN/Serial which was only handled in some cases - due to the issue, it was possible to choose a device listed in the skip_block_devices property as a root device.
Fixes an issue where the agent could not find a valid IP address when the Ironic API was running on a non-standard port. The reachability test now uses the full API URL including the port number, instead of only using the hostname. This prevents
LookupAgentIPErrorwhen connecting to Ironic APIs on custom ports.
Fixes RuntimeError when entering rescue mode by checking if the heartbeater thread is alive before attempting to stop it.
The skip_block_devices property now supports RAIDs, including scenarios with multiple arrays on the same physical disk. This included 6 smaller bugs that have all been addressed.
The agent now tests Ironic API URL reachability via HTTP during startup before determining the advertised IP address. Unreachable API URLs are filtered out, preventing the agent from advertising an IP address that cannot actually reach the Ironic API. This improves reliability when multiple API URLs are configured or in complex network topologies. The IP reachability test uses the configured
http_request_timeout(default 30 seconds) timeout for the HTTP request.