[release-announce] ironic 18.2.1 (xena)
no-reply at openstack.org
no-reply at openstack.org
Mon Feb 7 10:33:15 UTC 2022
We are psyched to announce the release of:
ironic 18.2.1: OpenStack Bare Metal Provisioning
This release is part of the xena 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.
18.2.1
^^^^^^
Bug Fixes
* No longer validates boot interface parameters when adopting a node
that uses local boot.
* Fixes installation and unit testing of ironic when using the sushy
library by setting an appropriate upper constraint. This version of
Ironic is not compatible with Sushy 4.0.0.
* Fixes a bug in the anaconda deploy interface where the
'ks_options' key was not found when rendering the default kickstart
template.
* Fixes issue where PXEAnacondaDeploy interface's deploy() method
did not return states.DEPLOYWAIT so the instance went straight to
'active' instead of 'wait call-back'.
* Fixes an issue where the anaconda deploy interface mistakenly
expected 'squashfs_id' instead of 'stage2_id' property on the
image.
* Fixes the heartbeat mechanism in the default kickstart template
ks.cfg.template as the heartbeat API only accepts 'POST' and expects
a mandatory 'callback_url' parameter.
* Fixes handling of tarball images in anaconda deploy interface.
Allows user specified file extensions to be appended to the disk
image symlink. Users can now set the file extensions by setting the
'disk_file_extension' property on the OS image. This enables users
to deploy tarballs with anaconda deploy interface.
* Fixes issue where automated cleaning was not supported when
anaconda deploy interface is used.
* Fixed an issue where duplicate extra DHCP options was passed in
the port update request to the Networking service. The duplicate
DHCP options caused an error in the Networking service and node
provisioning would fail. See bug: 2009774
(https://storyboard.openstack.org/#!/story/2009774).
* Fixes "idrac-wsman" management interface "set_boot_device" method
that would fail deployment when there are existing jobs present with
error "Failed to change power state to ''power on'' by
''rebooting''. Error: DRAC operation failed. Reason: Unfinished
config jobs found: <list of existing jobs>. Make sure they are
completed before retrying.". Now there can be non-BIOS jobs present
during deployment. This will still fail for cases when there are
BIOS jobs present. In such cases should consider moving to "idrac-
redfish" that does not have this limitation when setting boot
device.
* Fixed an issue where provisioning/cleaning would fail on IPv6
routed provider networks. See bug: 2009773
(https://storyboard.openstack.org/#!/story/2009773).
* Fixes validation of input argument "firmware_images" of "redfish"
hardware type clean step "update_firmware". Now it validates the
argument at the beginning of clean step. Prior to this fix issues
were determined at the time of executing firmware update or not at
all (for example, mistyping optional field 'wait').
* Fixes "redfish" hardware type "update_firmware" cleaning step to
work with Sushy version 4.0.0 or greater.
* Fixes an issue where clients would get a 404 due to the node
pagination breaking at max_limit due to an uninitialised
resource_url.
* Fixes an issue where clients would get a 404 due to the port and
portgroups pagination breaking at max_limit due to an uninitialised
resource_url.
* Fixes "File name too long" in the image caching code when a URL
contains a long query string.
* Inspection no longer fails when one of the NICs reports NIC
address that is not a valid MAC (e.g. a WWN).
* Fixed the bug of repeated resume cleaning due to the value of
*fgi_status* not being updated correctly when obtaining the RAID
configuration status of the node managed by the *irmc* hardware
type.
* When configuring RAID on iRMC machines through ironic, polling is
not set when RAID is created. After creating the RAID, set up
polling will notify ironic to wait for the RAID configuration to
complete before proceeding to the next step instead of check IPA.
* Fixes connection caching issues with Redfish BMCs where
AccessErrors were previously not disqualifying the cached connection
from being re-used. Ironic will now explicitly open a new connection
instead of using the previous connection in the cache. Under normal
circumstances, the "sushy" redfish library would detect and refresh
sessions, however a prior case exists where it may not detect a
failure and contain cached session credential data which is
ultimately invalid, blocking future access to the BMC via Redfish
until the cache entry expired or the "ironic-conductor" service was
restarted. For more information please see story 2009719
(https://storyboard.openstack.org/#!/story/2009719).
* Removing *?filename=file.iso* suffix from the virtual media image
URL when the image is a regular file due to incompatibility with
SuperMicro X12 machines which do not accept special characters such
as *=* or *?* in the URL. Historically, this suffix was being added
to improve compatibility with those BMCs which require *.iso* suffix
in the URL while using swift as the image store. Old behaviour will
remain for swift backed images.
Changes in ironic 18.2.0..18.2.1
--------------------------------
9c6cd3f5d Set resource_url when getting all ports or portgroups
7ae288c77 Set resource_url when getting all nodes
09423854b Do not fail inspection on invalid MAC
884e290a6 Fix validating input for redfish update_firmware
9a7bc0582 Ensure 'port' is up2date after binding:host_id
2326d8680 Add dhcp options for each ip_version once
ff375734b Fix redfish update_firmware for newer Sushy
20a0c2329 Adoption: do not validate boot interface when local booting
561630f8d CI: Lower test VM memory by 200MB
bb929d508 Remove redfish cache entry upon errors
1dbec7340 CI: reduce api worker processes to 1
b3a835bd2 Explicitly pin upper sushy version
2166672ca Trivial: log current state when continuing cleaning
a783ef702 Clarify driver load error message
dbd1a9e4d Do not assume sushy constants are strings - part 2
4bdcb2b3d Stop relying on explicit values of Redfish constants
51666ed62 Fix some of the SRBAC tests
31a42a167 Avoid handling a deploy failure twice
4ee49e7b2 Fix idrac-wsman deploy with existing non-BIOS jobs
c9297ce78 Fix various issues in the anaconda deploy interface
dd8e6c6c7 Do not append filename parameter to image URL when using local file
2e9d2b5ec Do not use any parts of image URL in temporary file names
bb02e1ca5 [iRMC] Set polling after RAID is built
5155ade35 [iRMC] Avoid repeatedly resuming clean after creating raid configuration
2e7b09b7e Fix iDRAC configuration mold docs
155de2419 Set IPA download branch and MAX_MICROVERSION
703d88c1c Devstack: don't scan /opt, /etc looking for isolinux
8e3c146b4 Update iDRAC doc for idrac-redfish RAID
db8e9e753 Update TOX_CONSTRAINTS_FILE for stable/xena
aca7f304e Update .gitreview for stable/xena
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 1 +
devstack/lib/ironic | 6 +-
driver-requirements.txt | 2 +-
ironic/api/controllers/v1/node.py | 2 +
ironic/api/controllers/v1/port.py | 6 +-
ironic/api/controllers/v1/portgroup.py | 2 +
ironic/common/exception.py | 3 +-
ironic/common/neutron.py | 3 +-
ironic/common/pxe_utils.py | 10 +--
ironic/conductor/cleaning.py | 4 +-
ironic/conductor/deployments.py | 43 +++++-----
ironic/conductor/manager.py | 17 ++--
ironic/dhcp/neutron.py | 6 +-
ironic/drivers/modules/agent_base.py | 19 ++++-
ironic/drivers/modules/deploy_utils.py | 22 +++++-
ironic/drivers/modules/drac/management.py | 2 +-
ironic/drivers/modules/image_cache.py | 2 +-
ironic/drivers/modules/image_utils.py | 5 +-
ironic/drivers/modules/inspect_utils.py | 7 ++
ironic/drivers/modules/irmc/raid.py | 9 ++-
ironic/drivers/modules/ks.cfg.template | 12 +--
ironic/drivers/modules/pxe.py | 8 +-
ironic/drivers/modules/redfish/boot.py | 2 +-
ironic/drivers/modules/redfish/firmware_utils.py | 58 ++++++++++++++
ironic/drivers/modules/redfish/management.py | 29 ++++++-
ironic/drivers/modules/redfish/utils.py | 27 +++++++
ironic/ironic.sqlite-shm | Bin 0 -> 32768 bytes
ironic/ironic.sqlite-wal | Bin 0 -> 148352 bytes
.../unit/drivers/modules/drac/test_management.py | 9 ++-
.../drivers/modules/irmc/test_periodic_task.py | 38 +++++++++
.../drivers/modules/redfish/test_firmware_utils.py | 88 +++++++++++++++++++++
.../unit/drivers/modules/redfish/test_inspect.py | 13 +--
.../drivers/modules/redfish/test_management.py | 43 +++++++---
.../unit/drivers/modules/redfish/test_raid.py | 4 +-
.../unit/drivers/modules/redfish/test_utils.py | 72 ++++++++++++++++-
.../unit/drivers/modules/test_deploy_utils.py | 2 +-
.../unit/drivers/modules/test_inspect_utils.py | 9 ++-
.../notes/adopt-validation-7249ceb57016f0e4.yaml | 5 ++
...licit-upper-pin-for-sushy-63d449024ddf70d0.yaml | 6 ++
...anaconda-deploy-interface-bfa2cfca22b04680.yaml | 25 ++++++
...plcate-extra-dhcp-options-4edb729cb5bcf552.yaml | 8 ++
...th-existing-non-bios-jobs-78aa2195d0c3016f.yaml | 12 +++
...g-routed-provider-network-bbd0c46559f618ac.yaml | 6 ++
...irmware-images-validation-9b5b2fd28314ce66.yaml | 8 ++
...-redfish-firmware-upgrade-7ef2fcb6bfd74e67.yaml | 5 ++
...x_pagination_resource_url-42fb4023fde9da2b.yaml | 5 ++
...nation_resource_url_ports-8d2696a6a7ab012f.yaml | 6 ++
.../notes/image-cache-size-28a9072901b98edf.yaml | 5 ++
.../notes/invalid-mac-b0e3d99f23afeb30.yaml | 5 ++
...repeatedly-resuming-clean-020f0dfc2e30d7bc.yaml | 7 ++
...-polling-after-raid-build-5f78ee3e93a92553.yaml | 8 ++
...on-cache-pool-accesserror-743e39a2f017b990.yaml | 13 +++
...ame-param-from-vmedia-url-bf4773ede44f2206.yaml | 10 +++
tox.ini | 10 +--
zuul.d/ironic-jobs.yaml | 6 +-
70 files changed, 830 insertions(+), 170 deletions(-)
Requirements updates
--------------------
diff --git a/driver-requirements.txt b/driver-requirements.txt
index d5285a3df..8c3a06752 100644
--- a/driver-requirements.txt
+++ b/driver-requirements.txt
@@ -14 +14 @@ python-xclarityclient>=0.1.6
-sushy>=3.10.0
+sushy>=3.10.0,<4.0.0
More information about the Release-announce
mailing list