[Bug 1637671] Re: DRAC get_bios_config() vendor passthru causes AttributeError exception
James Page
james.page at ubuntu.com
Mon Oct 23 13:25:11 UTC 2017
(for future reference this is normally the case for an openstack package
that resides in Ubuntu universe - once a package has been promoted to
Ubuntu main, then the ubuntu-openstack team will have put in place the
deployment and testing procedures to handled this type of update as part
of business as usual).
--
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to ironic in Ubuntu.
https://bugs.launchpad.net/bugs/1637671
Title:
DRAC get_bios_config() vendor passthru causes AttributeError exception
Status in Ubuntu Cloud Archive:
Fix Released
Status in Ubuntu Cloud Archive newton series:
Triaged
Status in Ironic:
Fix Released
Status in ironic package in Ubuntu:
Fix Released
Bug description:
Seen in stable/newton.
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.
It shows up in the ironic-conductor.log as:
2016-10-27 16:04:13.147 1573 ERROR ironic.drivers.base [req-45370baa-7511-4901-9784-da5a90af4f8b - - - - -] vendor_passthru failed with method get_bios_config
2016-10-27 16:04:13.147 1573 ERROR ironic.drivers.base Traceback (most recent call last):
2016-10-27 16:04:13.147 1573 ERROR ironic.drivers.base File "/usr/lib/python2.7/site-packages/ironic/drivers/base.py", line 692, in passthru_handler
2016-10-27 16:04:13.147 1573 ERROR ironic.drivers.base return func(*args, **kwargs)
2016-10-27 16:04:13.147 1573 ERROR ironic.drivers.base File "/usr/lib/python2.7/site-packages/ironic/drivers/modules/drac/vendor_passthru.py", line 61, in get_bios_config
2016-10-27 16:04:13.147 1573 ERROR ironic.drivers.base bios_attrs[name] = bios_attr._asdict()
2016-10-27 16:04:13.147 1573 ERROR ironic.drivers.base AttributeError: 'BIOSStringAttribute' object has no attribute '_asdict'
2016-10-27 16:04:13.147 1573 ERROR ironic.drivers.base
2016-10-27 16:04:13.153 1573 DEBUG ironic.conductor.task_manager [req-45370baa-7511-4901-9784-da5a90af4f8b - - - - -] Successfully released exclusive lock for calling vendor passthru on node c54ad36d-5e2e-4593-9033-9996621803bb (lock was held 8.09 sec) release_resources /usr/lib/python2.7/site-packages/ironic/conductor/task_manager.py:331
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server [req-45370baa-7511-4901-9784-da5a90af4f8b - - - - -] Exception during message handling
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server Traceback (most recent call last):
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/server.py", line 133, in _process_incoming
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server res = self.dispatcher.dispatch(message)
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/dispatcher.py", line 150, in dispatch
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server return self._do_dispatch(endpoint, method, ctxt, args)
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/dispatcher.py", line 121, in _do_dispatch
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server result = func(ctxt, **new_args)
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server File "/usr/lib/python2.7/site-packages/ironic_lib/metrics.py", line 61, in wrapped
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server result = f(*args, **kwargs)
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/server.py", line 199, in inner
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server return func(*args, **kwargs)
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server File "/usr/lib/python2.7/site-packages/ironic/conductor/manager.py", line 271, in vendor_passthru
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server ret = vendor_func(task, **info)
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server File "/usr/lib/python2.7/site-packages/ironic/drivers/base.py", line 699, in passthru_handler
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server raise exception.VendorPassthruException(message=e)
2016-10-27 16:04:13.153 1573 ERROR oslo_messaging.rpc.server VendorPassthruException: 'BIOSStringAttribute' object has no attribute '_asdict'
To manage notifications about this bug go to:
https://bugs.launchpad.net/cloud-archive/+bug/1637671/+subscriptions
More information about the Ubuntu-openstack-bugs
mailing list