2025.1 Series Release Notes

10.2.2-4

Bug Fixes

  • 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 LookupAgentIPError when 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 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.

10.2.2

Bug Fixes

  • Software RAID creation now correctly handles configurations where logical disks use different sets of physical devices. Previously, partition indices were incorrectly shared across all devices, causing failures when creating multiple RAID arrays on different disks.

10.2.1

Bug Fixes

10.2.0

New Features

  • Adds support to Ironic-Python-Agent to facilitate deployment of bootable containers. This is an experimental feature for standalone users. Operators wishing to disable this feature, can leverage the [DEFAULT]disable_bootc_deploy option in ironic-python-agent.conf.

Bug Fixes

  • Fixes a potential security issue where a third party may be able to retrieve potentially sensitive data in command result output from the agent. If a request comes in with an agent_token to the command results endpoint, the agent will now require all future calls to leverage the token to retrieve results and validate that token’s validity. This effectively eliminates the possibility of a malicious entity with access to the agent’s API endpoint from capturing the command results from agent operations.

  • Prevents IPA from restarting on tenant networks during rescue operations by adding proper lockdown.

10.1.0

New Features

  • Add support for GPU burn-in testing using gpu-burn.

  • Adds support for detecting MAC addresses for interfaces with only a IPv6 address.

  • Adds support to collect pci address and driver information for interfaces.

Bug Fixes

  • Prevent the UnboundLocalError in erase_devices_express, for example, on a disk failure.

  • Fail fast when encountering disk space errors during image downloads instead of attempting futile retries.

10.0.0

New Features

  • When synchronizing the disk caches at the end of a deployment, the agent now also instructs the kernel to drop the virtual memory caches and tells each block devices to sync its internal cache.

  • Adds a new API command system.lockdown. When invoked, it stops the API, the heartbeater and tries to disable all local network interfaces. More actions may be added in the future to make the agent and the ramdisk unusable after this command.

  • logical_sectors and physical_sectors sizes are now captured for each hardware info disks entry, and also logged for lsblk calls. This will be increasingly useful as storage devices with 4096 byte sector sizes become more common.

Upgrade Notes

  • Support for Python 3.8 has been removed. Now the minimum python version supported is 3.9 .

Deprecation Notes

  • Ironic Python Agent has had limited capabilities to emit metrics, but was unable to support prometheus exporting of those metrics, as was possible for the conductor. Support for sending these metrics will be removed during or after the 2026.1 OpenStack release cycle.