[release-announce] ironic 13.0.4 (train)
no-reply at openstack.org
no-reply at openstack.org
Fri Jun 19 14:52:50 UTC 2020
We contentedly announce the release of:
ironic 13.0.4: OpenStack Bare Metal Provisioning
This release is part of the train stable release series.
The source is available from:
https://opendev.org/openstack/ironic
Download the package from:
https://tarballs.openstack.org/ironic/
Please report issues through:
https://storyboard.openstack.org/#!/project/943
For more details, please see below.
13.0.4
^^^^^^
New Features
************
* For baremetal operations on DHCPv6-stateful networks multiple IPv6
addresses can now be allocated for neutron ports created for
provisioning, cleaning, rescue or inspection. The new parameter
"[neutron]/dhcpv6_stateful_address_count" controls the number of
addresses to allocate (Default: 1).
* Makes management interface of "redfish" hardware type not changing
current boot frequency if currently set is the same as the desired
one. The goal is to avoid touching potentially faulty BMC option
whenever possible.
* Adds a new "[ipmi]debug" option that allows users to explicitly
turn IPMI command debugging on, as opposed to relying upon the
system debug setting "[DEFAULT]debug". Users wishing to continue to
log this output should set "[ipmi]debug" to "True" in their
ironic.conf.
Known Issues
************
* Some redfish-enabled hardware is known not to support persistent
boot device setting that is used by the Bare Metal service for
deployed instances. The "redfish" hardware type tries to work around
this problem, but rebooting such an instance in-band may cause it to
boot incorrectly. A predictable boot order should be configured in
the node's boot firmware to avoid issues and at least metadata
cleaning must be enabled. See this mailing list thread
(http://lists.openstack.org/pipermail/openstack-
discuss/2020-April/014543.html) for technical details.
Upgrade Notes
*************
* Changing minimum version of Ansible for use with the "ansible"
"deploy_interface" to version 2.5.
* The version of "sushy" can now be updated to "3.2.0" or later to
address issues with managing persistant boot mode setting with
Redfish Baseboard Management Controllers.
* If "[DEFAULT]force_raw_images" is set to "true", then MD5 will not
be utilized to recalculate the image checksum. This requires the
"ironic-python-agent" ramdisk to be at least version 3.4.0.
* Debug logging control has been moved to the "[ipmi]debug"
configuration setting as opposed to the "conductor" "[DEFAULT]debug"
setting as the existing "ipmitool" output can be extremely
misleading for users. Operators who wish to continue to log
"ipmitool" verbose output in their logs should explicitly set the
"[ipmi]debug" command to True.
Security Issues
***************
* Image checksum recalculation when images are forced to raw images,
are now calculated using SHA3-256 if MD5 was selected. This is now
unconditional.
Bug Fixes
*********
* Fixes an issue with the agent client code where checks of the
agent command status had no logic to prevent an intermittent or
transient connection failure from causing the entire operation to
fail.
* Fixes the default disk detection in the "ansible" deploy interface
with Python 3. Previously a random disk was used, resulting in boot
failures, now the first disk is used (as intended). This required
bumping the minimum required Ansible version to 2.5.
* Fixes 'Invalid parameter value for SpanLength' when configuring
RAID using Python 3. This passed incorrect data type to iDRAC, e.g.,
instead of *2* it passed *2.0*. See story 2004265
(https://storyboard.openstack.org/#!/story/2004265).
* Fixes RAID configuration using *idrac-wsman* RAID interface where
node remains in 'clean wait' provisioning state forever. See story
2007567 (https://storyboard.openstack.org/#!/story/2007567).
* Fixes an issue where a node may be locked from changes if a
conductor's hostname case is changed before restarting the conductor
service.
* Improves interoperability with Redfish BMCs by untying node boot
mode change from other boot parameters change (such as boot device,
boot frequency). This fix requires a newer version of the "sushy"
library, version "3.2.0".
* Fixes vague node "last_error" field reporting upon deploy step
failure by providing the exception error message in addition to the
step that failed.
* The 'no address available' problem seen when network booting on
DHCPv6-stateful networks is fixed with the support for allocating
multiple IPv6 addresses. See bug: 1861032
(https://bugs.launchpad.net/neutron/+bug/1861032).
* Fixes an agent command issue in the bootloader installation
process that can present itself as a connection timeout under heavy
IO load conditions. Now installation commands have an internal
timeout which is double the conductor wide "[agent]command_timeout".
For more information, see bug 2007483
(https://storyboard.openstack.org/#!/story/2007483).
* Fixed a bug where rebooting a node managed by the "idrac" hardware
type when using the WS-MAN power interface sometimes fails with a
"The command failed to set RequestedState" error. See bug 2007487
(https://storyboard.openstack.org/#!/story/2007487) for details.
* To provide a workaround for incorrect boot order problems on some
hardware, the "redfish" hardware type now supports the "noop"
management interface, similarly to IPMI and SNMP.
* Rebooting a node with the "redfish" power interface is now
implemented via a power off request followed by power on to avoid
returning success when a node stays powered on after the reboot
request.
* Provides a workaround for hardware that does not support
persistent boot device setting with the "redfish" hardware type.
When such situation is detected, ironic will fall back to one-time
boot device setting, restoring it on every reboot.
Other Notes
***********
* Ramdisk logs are now collected during cleaning the same way as
during deployment.
Changes in ironic 13.0.3..13.0.4
--------------------------------
555494870 devstack: increase concurrency and worker timeout for sushy-tools
f2eac72e8 redfish: handle hardware that is unable to set persistent boot
64fcd4040 Add the noop management interface to the redfish hardware type
e277c4d3a Collect ramdisk logs also during cleaning
72e7514ce Revert "Add timeout and retries to JSON RPC client"
3904d0202 Pin the python-ibmcclient upper bounds due to six usage
aaa7fe765 Improve `redfish` set-boot-device behaviour
8bc07ba05 Improve `redfish` set-boot-mode implementation
901402d11 Add timeout and retries to JSON RPC client
0eaaa1427 Silence debug messages from oslo_messaging
2e47bad7d redfish: split reboot into power off followed by power on
d19fcbcd2 DRAC: Added redfish management interface issue
166673046 Add link to other Redfish parms to iDRAC doc
8b21d31fc Add note about UEFI support in Train
78d91c15d Fix RAID configuration with idrac-wsman interface
10c20e29d Update iDRAC doc about soft power off timeout
33af6b119 Update iDRAC doc about vendor passthru timeout
3ebb15ffe Fix issue where server fails to reboot
dbf92aefb Fix enabled_hardware_types from idrac-wsman to idrac
41ef959eb Fix SpanLength calculation for DRAC RAID configuration
7c84ade16 Additional IP addresses to IPv6 stateful ports
253253ed8 Make deploy step failure logging indicate the error
cea889dac Do not autoescape all Jinja2 templates
3e5816e10 Move ipmi logging to a separate option
9001b2b9d Extend install_bootloader command timeout
fc0967189 Document deploy_boot_mode and boot_option for standalone deployments
81748b61f Retry agent get_command_status upon failures
32e6071f6 Documentation clarifications for software RAID
771cc7fc1 Change force_raw_images to use sha256 if md5 is selected
a18f5ef18 Make reservation checks caseless
f2418d75f Docs: split away user image building and highlight whole disk images
361f00f0c Using loop instead of with_X
Diffstat (except docs and test files)
-------------------------------------
devstack/lib/ironic | 3 +
driver-requirements.txt | 5 +-
ironic/common/neutron.py | 29 ++++
ironic/common/utils.py | 35 ++++-
ironic/conductor/manager.py | 10 +-
ironic/conf/agent.py | 6 +-
ironic/conf/ipmi.py | 6 +
ironic/conf/neutron.py | 10 ++
ironic/conf/opts.py | 2 +
ironic/db/sqlalchemy/api.py | 9 +-
ironic/drivers/modules/agent_base_vendor.py | 4 +
ironic/drivers/modules/agent_client.py | 42 ++++-
.../playbooks/roles/discover/tasks/main.yaml | 2 +-
ironic/drivers/modules/deploy_utils.py | 25 +--
ironic/drivers/modules/drac/power.py | 80 +++++++---
ironic/drivers/modules/drac/raid.py | 4 +-
ironic/drivers/modules/ipmitool.py | 2 +-
ironic/drivers/modules/redfish/management.py | 137 ++++++++++++++---
ironic/drivers/modules/redfish/power.py | 57 +++++--
ironic/drivers/redfish.py | 3 +-
ironic/drivers/utils.py | 10 +-
.../drivers/modules/drac/test_periodic_task.py | 37 +++--
.../drivers/modules/redfish/test_management.py | 171 ++++++++++++++++++++-
.../unit/drivers/modules/redfish/test_power.py | 125 +++++++++++----
.../unit/drivers/modules/test_agent_base_vendor.py | 11 +-
.../unit/drivers/modules/test_agent_client.py | 14 +-
.../unit/drivers/modules/test_deploy_utils.py | 28 +---
...gent-command-status-retry-f9b6f53a823c6b01.yaml | 6 +
.../notes/ansible-loops-de0eef0d5b79a9ff.yaml | 11 ++
.../notes/bug-2004265-cd9056868295f374.yaml | 7 +
.../bug-2007567-wsman-raid-48483affdd9f9894.yaml | 6 +
...s-conductor-restart-check-f70005fbf65f6bb6.yaml | 5 +
.../notes/cleaning-logs-dc115b0926ae3982.yaml | 5 +
.../decouple-boot-params-2b05806435ad21e5.yaml | 12 ++
.../notes/deploy-step-error-d343e8cb7d1b2305.yaml | 6 +
...v6-stateful-address-count-0f94ac6a55bd9e51.yaml | 14 ++
...nstall-bootloader-timeout-8fce9590bf405cdf.yaml | 8 +
.../idrac-fix-reboot-failure-c740e765ff41bcf0.yaml | 7 +
...ksum-recalculation-sha256-fd3d5b4b0b757e86.yaml | 10 ++
...e-redfish-set-boot-device-e38e9e9442ab5750.yaml | 7 +
.../notes/ipmi-debug-1c7e090c6cc71903.yaml | 13 ++
.../notes/redfish-noop-mgmt-b61d02b77b1c9d6b.yaml | 6 +
.../notes/redfish-power-87062756bce8b047.yaml | 6 +
.../notes/redfish-sadness-6e2a37b3f45ef1aa.yaml | 18 +++
zuul.d/ironic-jobs.yaml | 2 +-
62 files changed, 1273 insertions(+), 265 deletions(-)
Requirements updates
--------------------
diff --git a/driver-requirements.txt b/driver-requirements.txt
index beb542186..f0902eecb 100644
--- a/driver-requirements.txt
+++ b/driver-requirements.txt
@@ -17 +17 @@ sushy>=1.9.0
-ansible>=2.4
+ansible>=2.5
@@ -20 +20,2 @@ ansible>=2.4
-python-ibmcclient>=0.1.0
+python-ibmcclient>=0.1.0,<0.2.0
+
More information about the Release-announce
mailing list