Bug 1440959 - Bare metal registration command hangs if ironic fails to move machines from enroll
Summary: Bare metal registration command hangs if ironic fails to move machines from e...
Keywords:
Status: CLOSED DUPLICATE of bug 1435591
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-tripleo-common
Version: 10.0 (Newton)
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: ---
: 10.0 (Newton)
Assignee: Toure Dunnon
QA Contact: Alexander Chuzhoy
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-04-10 20:26 UTC by Stephen Gordon
Modified: 2017-04-25 10:34 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-04-25 10:34:48 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Priority Status Summary Last Updated
Launchpad 1667776 None None None 2017-04-10 20:26:28 UTC

Description Stephen Gordon 2017-04-10 20:26:24 UTC
Cloned from launchpad bug 1667776.

Description:

The issue was ironic by default uses the ADMINISTRATOR, this env we had a OPERATOR account. However, ironic baremetal import shouldn't just hang forever. There should be a timeout, or if we fail to get power status we break out with a error to the user.

[stack@undercloud ~]$ time openstack baremetal import --json instackenv.json       [243/1996]
Started Mistral Workflow. Execution ID: 08be22c3-810d-47b9-81e0-b785a479f0fb
^CTraceback (most recent call last):
  File "/bin/openstack", line 10, in <module>
    sys.exit(main())
  File "/usr/lib/python2.7/site-packages/openstackclient/shell.py", line 209, in main
    return OpenStackShell().run(argv)
  File "/usr/lib/python2.7/site-packages/osc_lib/shell.py", line 135, in run
    ret_val = super(OpenStackShell, self).run(argv)
  File "/usr/lib/python2.7/site-packages/cliff/app.py", line 267, in run
    result = self.run_subcommand(remainder)
  File "/usr/lib/python2.7/site-packages/osc_lib/shell.py", line 180, in run_subcommand
    ret_value = super(OpenStackShell, self).run_subcommand(argv)
  File "/usr/lib/python2.7/site-packages/cliff/app.py", line 387, in run_subcommand
    result = cmd.run(parsed_args)
  File "/usr/lib/python2.7/site-packages/osc_lib/command/command.py", line 41, in run
    return super(Command, self).run(parsed_args)
  File "/usr/lib/python2.7/site-packages/cliff/command.py", line 59, in run
    return self.take_action(parsed_args) or 0
  File "/usr/lib/python2.7/site-packages/tripleoclient/v1/baremetal.py", line 190, in take_ac
tion
    instance_boot_option=parsed_args.instance_boot_option
  File "/usr/lib/python2.7/site-packages/tripleoclient/workflows/baremetal.py", line 38, in r
egister_or_update
    payload = ws.wait_for_message(execution.id)
  File "/usr/lib/python2.7/site-packages/tripleoclient/plugin.py", line 137, in wait_for_mess
age
    body = self.recv()['body']
  File "/usr/lib/python2.7/site-packages/tripleoclient/plugin.py", line 125, in recv
    return json.loads(self._ws.recv())
  File "/usr/lib/python2.7/site-packages/websocket/_core.py", line 348, in recv
    opcode, data = self.recv_data()
  File "/usr/lib/python2.7/site-packages/websocket/_core.py", line 365, in recv_data
    opcode, frame = self.recv_data_frame(control_frame)
  File "/usr/lib/python2.7/site-packages/websocket/_core.py", line 378, in recv_data_frame
    frame = self.recv_frame()
  File "/usr/lib/python2.7/site-packages/websocket/_core.py", line 410, in recv_frame
    return self.frame_buffer.recv_frame()
  File "/usr/lib/python2.7/site-packages/websocket/_abnf.py", line 300, in recv_frame
    self.recv_header()
  File "/usr/lib/python2.7/site-packages/websocket/_abnf.py", line 249, in recv_header
    header = self.recv_strict(2)
  File "/usr/lib/python2.7/site-packages/websocket/_abnf.py", line 334, in recv_strict
    bytes = self.recv(min(16384, shortage))
  File "/usr/lib/python2.7/site-packages/websocket/_core.py", line 476, in _recv
    return recv(self.sock, bufsize)
  File "/usr/lib/python2.7/site-packages/websocket/_socket.py", line 77, in recv
    bytes = sock.recv(bufsize)
KeyboardInterrupt

real    90m26.806s
user    0m0.466s
sys     0m0.090s

Specification URL (additional information):

https://bugs.launchpad.net/tripleo/+bug/1667776

Comment 1 Dmitry Tantsur 2017-04-25 10:34:48 UTC

*** This bug has been marked as a duplicate of bug 1435591 ***


Note You need to log in before you can comment on or make changes to this bug.