Stein Series (3.4.0 - 3.6.x) Release Notes


Bug Fixes

  • Fixes an issue with the IntelCnaHardwareManager which prevented hardware managers with lower priority to be executed and therefore may blocked the initialization and collection of hardware these managers are supposed to take care of.

  • Fixes retry logic issues with the Agent Lookup which can result in the lookup failing prematurely before being completed, typically resulting in an abrupt end to the agent logging and potentially weird errors like TypeError being reported on the agent process standard error output. For more information see bug 2007968.

  • Fixes an issue with the ironic-python-agent where we would call to setup the bootloader, which is necessary with software raid, but also attempt to clean up iSCSI. This can cause issues when using the direct deploy_interface. Now the agent will only clean up iSCSI connections if iSCSI was explicitly started. For more information, please see story 2007937.


Bug Fixes

  • Fixes an issue where the agent was failing to rescan the device deployed upon before checking uefi contents. This would occur with an iSCSI based deployment, as partition management operations are performed by the conductor, and not locally.


Bug Fixes

  • Fixes the workflow for wholedisk images when using uefi boot mode, when possible it will use efibootmgr instead of grub2 to update the nvram.

  • Fixes an issue where metadata erasure cleaning would fail on devices that are read-only at the hardware level. Typically these are virtual devices being offered to the operating system for purposes like OS self-installation.

    In the case of full device erasure, this is explicitly raised as a hard failure requiring operator intervention.

  • Fixes the numa-topology inspection collector to be compatible with Pint < 0.5.2.


Bug Fixes

  • The lshw output no longer pollutes the debug logging. Instead, it’s stored as part of the ramdisk logs.


Bug Fixes

  • From IPMI specification v2.0, channel number 1-Bh(1-11) can be used for various types of communications channels. The respectively available channels depend on the specific IPMI implementation for a specific server system.

  • Mounts /run into chroot when installing grub to prevent timeouts.

  • Fixes an issue with retrieving all available physical memory. For more details see: story 2005308 <!/story/2005308>



Starting with this release, the Ironic Python Agent images used in the CI (tinyipa) run with Python 3 by default.

New Features

  • Adds secondary sorting by device name when guessing the root disk. This makes the selection process more predictable and increases the chances that systems which try only one device for booting will actually successfully boot after deployment. As the primary sorting is still done by size, the root device hints still take priority, and the current behaviour is basically not specifying the order beyond size, this change does not break backwards compatibility.

  • Allows image checksum to be a URL pointing at a file with the image checksum or several checksums.

Deprecation Notes

  • Ironic community provided CoreOS IPA images are deprecated. These images utilize contents that are injected into CoreOS images which utilize a chroot environment to enable full and unrestricted hardware access.

    This decision is not taken lightly, and is due to multiple constraints combined with technical changes over time as CoreOS has evolved.

    Per the CoreOS limitations, as of January 2019, CoreOS:

    1) Current CoreOS images require 2GB of RAM to operate. As a result of the RAM requirement, it is problematic for continious integration testing to occur with the CoreOS based Ironic-Python-Agent image in OpenStack testing infrastructure.

    2) UEFI is not a supported configuration. CoreOS details the required use of BIOS compatibility mode. Intel is anticipated to remove BIOS compatibility by 2020.

    3) CoreOS is moving to require container use via passing ignition configuration. Limitations explicitly state there are no strait-forward methods of passing ignition configuration to a CoreOS instance. Mainly the developed intent is for such data to be passed in via a metadata service or configuration drive.

    4) With the previously mentioned use of containers and ignition configuration, the OEM loading path previously used with CoreOS is no longer available moving forward as it has been changed to read ignition configuration files.

Bug Fixes

  • Fixes a bug with bad whole disk images and config drives, where we would attempt to write a config drive partition to the disk without a valid partition table.

  • Fixes an issue where the ironic-python-agent is not able to stop when running with python3.x.

Other Notes

  • Updates the tinyipa build scripts to support building and running Ironic Python Agent with Python 3.

  • Updates the tinyipa build scripts to TinyCoreLinux 8.x

  • Change the Python default version used to build and run the Ironic Python Agent in the Tiny Core based image to 3.6.