ironic/releasenotes/notes/drac-fix-get_bios_config-vendor-passthru-causes-exception-1e1dbeeb3e924f29.yaml
Richard Pioso 6d6cf18f31 DRAC get_bios_config() passthru causes exception
The DRAC driver's (pxe_drac) get_bios_config() vendor passthru method
raises an AttributeError exception. It no longer returns the current
BIOS configuration. This is a regression from stable/mitaka.

Triage found that get_bios_config() mistakenly treats the value returned
by python-dracclient's list_bios_settings() as containing named tuples.
When it calls the namedtuple _asdict() method, an AttributeError
exception is raised.

Revert get_bios_config()'s handling of the return value to use __dict__.
Remove the comment that is not consistent with the implementation.

Also revert the unit test case for a successful call to use mock to
create the return value. Use mock.NonCallableMock with an empty
specification (spec) to catch this type of bug in the future.

Change-Id: I94afaa72a1ef25efc1b622e29e3a92a5d27f1892
Closes-Bug: #1637671
2016-10-31 15:00:32 -04:00

8 lines
330 B
YAML

---
fixes:
- Fixes an issue which caused the DRAC driver (``pxe_drac``)
``get_bios_config()`` vendor passthru method to unintentionally raise an
``AttributeError`` exception. That method once again returns the current
BIOS configuration. For more information, see
https://bugs.launchpad.net/ironic/+bug/1637671.