Systems fail to commission with proper IPMI credentials

Bug #1541878 reported by Chris Gregan on 2016-02-04
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
MAAS
Critical
Blake Rouse
1.10
Critical
Blake Rouse

Bug Description

Build Version/Date: 1.10
Environment used for testing: Xenial

Summary:
Nodes fail to gather IPMI information when enlisting then once IPMI information is manually entered, a power error occurs when attempting to commission.

Steps to Reproduce:
1) Enlist a new node
2) Enter IPMI information
3) Commission
4) Review Cluster logs

Expected result:
IPMI information is collected and used for commissioning

Actual result:
ubuntu@dratini:/var/log/maas$ tail clusterd.log
   File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 81, in callWithContext
     return func(*args,**kw)
   File "/usr/lib/python3/dist-packages/provisioningserver/drivers/power/ipmi.py", line 158, in power_query
     return self._issue_ipmi_command('query', **context)
   File "/usr/lib/python3/dist-packages/provisioningserver/drivers/power/ipmi.py", line 149, in _issue_ipmi_command
     ipmipower_command, power_change, power_address)
   File "/usr/lib/python3/dist-packages/provisioningserver/drivers/power/ipmi.py", line 85, in _issue_ipmi_power_command
     if 'on' in output:
 builtins.TypeError: a bytes-like object is required, not 'str'

ubuntu@dratini:/var/log/maas$ tail -n 40 clusterd.log
     self._runCallbacks()
 --- <exception caught here> ---
   File "/usr/lib/python3/dist-packages/twisted/internet/defer.py", line 588, in _runCallbacks
     current.result = callback(current.result, *args, **kw)
   File "/usr/lib/python3/dist-packages/provisioningserver/twisted/protocols/amp.py", line 1131, in checkKnownErrors
     key = error.trap(*command.allErrors)
   File "/usr/lib/python3/dist-packages/twisted/python/failure.py", line 342, in trap
     self.raiseException()
   File "/usr/lib/python3/dist-packages/twisted/python/failure.py", line 368, in raiseException
     raise self.value.with_traceback(self.tb)
   File "/usr/lib/python3/dist-packages/twisted/internet/defer.py", line 1126, in _inlineCallbacks
     result = result.throwExceptionIntoGenerator(g)
   File "/usr/lib/python3/dist-packages/twisted/python/failure.py", line 389, in throwExceptionIntoGenerator
     return g.throw(self.type, self.value, self.tb)
   File "/usr/lib/python3/dist-packages/provisioningserver/power/query.py", line 146, in get_power_state
     raise exc_type(exc_value).with_traceback(exc_trace)
   File "/usr/lib/python3/dist-packages/provisioningserver/power/query.py", line 117, in get_power_state
     system_id, hostname, power_type, context)
   File "/usr/lib/python3/dist-packages/twisted/internet/defer.py", line 1126, in _inlineCallbacks
     result = result.throwExceptionIntoGenerator(g)
   File "/usr/lib/python3/dist-packages/twisted/python/failure.py", line 389, in throwExceptionIntoGenerator
     return g.throw(self.type, self.value, self.tb)
   File "/usr/lib/python3/dist-packages/provisioningserver/drivers/power/__init__.py", line 240, in query
     self.power_query, system_id, context)
   File "/usr/lib/python3/dist-packages/twisted/python/threadpool.py", line 246, in inContext
     result = inContext.theWork()
   File "/usr/lib/python3/dist-packages/twisted/python/threadpool.py", line 262, in <lambda>
     inContext.theWork = lambda: context.call(ctx, func, *args, **kw)
   File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 118, in callWithContext
     return self.currentContext().callWithContext(ctx, func, *args, **kw)
   File "/usr/lib/python3/dist-packages/twisted/python/context.py", line 81, in callWithContext
     return func(*args,**kw)
   File "/usr/lib/python3/dist-packages/provisioningserver/drivers/power/ipmi.py", line 158, in power_query
     return self._issue_ipmi_command('query', **context)
   File "/usr/lib/python3/dist-packages/provisioningserver/drivers/power/ipmi.py", line 149, in _issue_ipmi_command
     ipmipower_command, power_change, power_address)
   File "/usr/lib/python3/dist-packages/provisioningserver/drivers/power/ipmi.py", line 85, in _issue_ipmi_power_command
     if 'on' in output:
 builtins.TypeError: a bytes-like object is required, not 'str'

Related branches

Chris Gregan (cgregan) on 2016-02-04
tags: added: cdo-qa
Changed in maas:
status: New → In Progress
importance: Undecided → Critical
assignee: nobody → Blake Rouse (blake-rouse)
milestone: none → 2.0.0
Changed in maas:
status: In Progress → Fix Committed
Changed in maas:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers