The code base did not consistently always normalize the MAC address when
running it through inspection and multiple hooks. This resulted in ports
being deleted because the MAC address was not found on the system due to
different capitalization. Or the PXE enabled flag not being set due to a
mismatch.
Conflicts:
- ironic/drivers/modules/inspector/hooks/ports.py
- ironic/tests/unit/drivers/modules/inspector/hooks/test_ports.py
- ironic/drivers/modules/redfish/inspect.py
- ironic/tests/unit/drivers/modules/redfish/test_inspect.py
- ironic/drivers/modules/redfish/utils.py
Conflicts due to the ports hook receiving support for 'client_id' in
master but that feature was not backported. The redfish inspect module
was refactored in master to break up the large function into helper
functions so the location of the code moved from master. The utils
module was also refactored and the ambiguous names of imports were
changed in master.
Assisted-by: gpt-5.4 high
Closes-Bug: 2143955
Change-Id: Ice3a49ebb0f1d20c52fb1e5932080a4605a342c4
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
(cherry picked from commit 424f2e8fa2)
Ironic
Overview
Ironic consists of an API and plug-ins for managing and provisioning physical machines in a security-aware and fault-tolerant manner. It can be used with nova as a hypervisor driver, or standalone service using bifrost. By default, it will use PXE and IPMI to interact with bare metal machines. Ironic also supports vendor-specific plug-ins which may implement additional functionality.
Ironic is distributed under the terms of the Apache License, Version 2.0. The full terms and conditions of this license are detailed in the LICENSE file.
Project resources
- Documentation: https://docs.openstack.org/ironic/latest
- Source: https://opendev.org/openstack/ironic
- Bugs: https://bugs.launchpad.net/ironic/+bugs
- Wiki: https://wiki.openstack.org/wiki/Ironic
- APIs: https://docs.openstack.org/api-ref/baremetal/index.html
- Release Notes: https://docs.openstack.org/releasenotes/ironic/
- Design Specifications: https://specs.openstack.org/openstack/ironic-specs/
Project status, bugs, and requests for feature enhancements (RFEs) are tracked in Launchpad: https://launchpad.net/ironic
For information on how to contribute to ironic, see https://docs.openstack.org/ironic/latest/contributor