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
participants (1)
-
no-reply@openstack.org