[minor update] minor update fails with __init__() takes exactly 5 arguments (4 given)

Bug #1663698 reported by Lukas Bezdicka
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
tripleo
Fix Released
Critical
Brad P. Crochet

Bug Description

Minor update fails with error:

Started Mistral Workflow tripleo.package_update.v1.package_update_plan. Execution ID: 275f8e05-e081-4b8d-bd9d-2282428ba672
Instantiating messaging websocket client: ws://192.168.24.1:9000
Waiting for messages on queue 'ae2ff767-41ac-490f-ae02-b577fe32563e' with no timeout.
{u'execution': {u'id': u'275f8e05-e081-4b8d-bd9d-2282428ba672',
                u'input': {u'container': u'overcloud',
                           u'queue_name': u'ae2ff767-41ac-490f-ae02-b577fe32563e',
                           u'timeout': 0},
                u'name': u'tripleo.package_update.v1.package_update_plan',
                u'params': {},
                u'spec': {u'description': u'Take a container and perform a package update with possible breakpoints',
                          u'input': [u'container',
                                     {u'timeout': 240},
                                     {u'queue_name': u'tripleo'}],
                          u'name': u'package_update_plan',
                          u'tasks': {u'send_message': {u'action': u'zaqar.queue_post',
                                                       u'input': {u'messages': {u'body': {u'payload': {u'execution': u'<% execution() %>',
                                                                                                       u'message': u"<% $.get('message', '') %>",
                                                                                                       u'status': u"<% $.get('status', 'SUCCESS') %>"},
                                                                                          u'type': u'tripleo.package_update.v1.package_update_plan'}},
                                                                  u'queue_name': u'<% $.queue_name %>'},
                                                       u'name': u'send_message',
                                                       u'type': u'direct',
                                                       u'version': u'2.0'},
                                     u'set_update_failed': {u'name': u'set_update_failed',
                                                            u'on-success': u'send_message',
                                                            u'publish': {u'message': u'<% task(update).result %>',
                                                                         u'status': u'FAILED'},
                                                            u'type': u'direct',
                                                            u'version': u'2.0'},
                                     u'update': {u'action': u'tripleo.package_update.update_stack container=<% $.container %> timeout=<% $.timeout %>',
                                                 u'name': u'update',
                                                 u'on-error': u'set_update_failed',
                                                 u'on-success': u'send_message',
                                                 u'type': u'direct',
                                                 u'version': u'2.0'}},
                          u'version': u'2.0'}},
 u'message': u"Failed to run action [action_ex_id=a2cf63cb-5935-426c-b825-3ed304accb93, action_cls='<class 'mistral.actions.action_factory.UpdateStackAction'>', attributes='{}', params='{u'container': u'overcloud', u'timeout': 0}']\n ERROR: Stack overcloud already has an action (UPDATE) in progress.",
 u'status': u'FAILED'}
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/cliff/app.py", line 400, 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 90, in run
    return self.take_action(parsed_args) or 0
  File "/usr/lib/python2.7/site-packages/tripleoclient/v1/overcloud_update.py", line 85, in take_action
    self.app_args.verbose_level, timeout)
  File "/usr/lib/python2.7/site-packages/tripleoclient/workflows/package_update.py", line 53, in update_and_wait
    update(clients, **workflow_input)
  File "/usr/lib/python2.7/site-packages/tripleoclient/workflows/package_update.py", line 35, in update
    assert message['status'] == "SUCCESS", pprint.pformat(message)
AssertionError: {u'execution': {u'id': u'275f8e05-e081-4b8d-bd9d-2282428ba672',
                u'input': {u'container': u'overcloud',
                           u'queue_name': u'ae2ff767-41ac-490f-ae02-b577fe32563e',
                           u'timeout': 0},
                u'name': u'tripleo.package_update.v1.package_update_plan',
                u'params': {},
                u'spec': {u'description': u'Take a container and perform a package update with possible breakpoints',
                          u'input': [u'container',
                                     {u'timeout': 240},
                                     {u'queue_name': u'tripleo'}],
                          u'name': u'package_update_plan',
                          u'tasks': {u'send_message': {u'action': u'zaqar.queue_post',
                                                       u'input': {u'messages': {u'body': {u'payload': {u'execution': u'<% execution() %>',
                                                                                                       u'message': u"<% $.get('message', '') %>",
                                                                                                       u'status': u"<% $.get('status', 'SUCCESS') %>"},
                                                                                          u'type': u'tripleo.package_update.v1.package_update_plan'}},
                                                                  u'queue_name': u'<% $.queue_name %>'},
                                                       u'name': u'send_message',
                                                       u'type': u'direct',
                                                       u'version': u'2.0'},
                                     u'set_update_failed': {u'name': u'set_update_failed',
                                                            u'on-success': u'send_message',
                                                            u'publish': {u'message': u'<% task(update).result %>',
                                                                         u'status': u'FAILED'},
                                                            u'type': u'direct',
                                                            u'version': u'2.0'},
                                     u'update': {u'action': u'tripleo.package_update.update_stack container=<% $.container %> timeout=<% $.timeout %>',
                                                 u'name': u'update',
                                                 u'on-error': u'set_update_failed',
                                                 u'on-success': u'send_message',
                                                 u'type': u'direct',
                                                 u'version': u'2.0'}},
                          u'version': u'2.0'}},
 u'message': u"Failed to run action [action_ex_id=a2cf63cb-5935-426c-b825-3ed304accb93, action_cls='<class 'mistral.actions.action_factory.UpdateStackAction'>', attributes='{}', params='{u'container': u'overcloud', u'timeout': 0}']\n ERROR: Stack overcloud already has an action (UPDATE) in progress.",
 u'status': u'FAILED'}
clean_up UpdateOvercloud: {u'execution': {u'id': u'275f8e05-e081-4b8d-bd9d-2282428ba672',
                u'input': {u'container': u'overcloud',
                           u'queue_name': u'ae2ff767-41ac-490f-ae02-b577fe32563e',
                           u'timeout': 0},
                u'name': u'tripleo.package_update.v1.package_update_plan',
                u'params': {},
                u'spec': {u'description': u'Take a container and perform a package update with possible breakpoints',
                          u'input': [u'container',
                                     {u'timeout': 240},
                                     {u'queue_name': u'tripleo'}],
                          u'name': u'package_update_plan',
                          u'tasks': {u'send_message': {u'action': u'zaqar.queue_post',
                                                       u'input': {u'messages': {u'body': {u'payload': {u'execution': u'<% execution() %>',
                                                                                                       u'message': u"<% $.get('message', '') %>",
                                                                                                       u'status': u"<% $.get('status', 'SUCCESS') %>"},
                                                                                          u'type': u'tripleo.package_update.v1.package_update_plan'}},
                                                                  u'queue_name': u'<% $.queue_name %>'},
                                                       u'name': u'send_message',
                                                       u'type': u'direct',
                                                       u'version': u'2.0'},
                                     u'set_update_failed': {u'name': u'set_update_failed',
                                                            u'on-success': u'send_message',
                                                            u'publish': {u'message': u'<% task(update).result %>',
                                                                         u'status': u'FAILED'},
                                                            u'type': u'direct',
                                                            u'version': u'2.0'},
                                     u'update': {u'action': u'tripleo.package_update.update_stack container=<% $.container %> timeout=<% $.timeout %>',
                                                 u'name': u'update',
                                                 u'on-error': u'set_update_failed',
                                                 u'on-success': u'send_message',
                                                 u'type': u'direct',
                                                 u'version': u'2.0'}},
                          u'version': u'2.0'}},
 u'message': u"Failed to run action [action_ex_id=a2cf63cb-5935-426c-b825-3ed304accb93, action_cls='<class 'mistral.actions.action_factory.UpdateStackAction'>', attributes='{}', params='{u'container': u'overcloud', u'timeout': 0}']\n ERROR: Stack overcloud already has an action (UPDATE) in progress.",
 u'status': u'FAILED'}
Traceback (most recent call last):
  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 279, 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 400, 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 90, in run
    return self.take_action(parsed_args) or 0
  File "/usr/lib/python2.7/site-packages/tripleoclient/v1/overcloud_update.py", line 85, in take_action
    self.app_args.verbose_level, timeout)
  File "/usr/lib/python2.7/site-packages/tripleoclient/workflows/package_update.py", line 53, in update_and_wait
    update(clients, **workflow_input)
  File "/usr/lib/python2.7/site-packages/tripleoclient/workflows/package_update.py", line 35, in update
    assert message['status'] == "SUCCESS", pprint.pformat(message)
AssertionError: {u'execution': {u'id': u'275f8e05-e081-4b8d-bd9d-2282428ba672',
                u'input': {u'container': u'overcloud',
                           u'queue_name': u'ae2ff767-41ac-490f-ae02-b577fe32563e',
                           u'timeout': 0},
                u'name': u'tripleo.package_update.v1.package_update_plan',
                u'params': {},
                u'spec': {u'description': u'Take a container and perform a package update with possible breakpoints',
                          u'input': [u'container',
                                     {u'timeout': 240},
                                     {u'queue_name': u'tripleo'}],
                          u'name': u'package_update_plan',
                          u'tasks': {u'send_message': {u'action': u'zaqar.queue_post',
                                                       u'input': {u'messages': {u'body': {u'payload': {u'execution': u'<% execution() %>',
                                                                                                       u'message': u"<% $.get('message', '') %>",
                                                                                                       u'status': u"<% $.get('status', 'SUCCESS') %>"},
                                                                                          u'type': u'tripleo.package_update.v1.package_update_plan'}},
                                                                  u'queue_name': u'<% $.queue_name %>'},
                                                       u'name': u'send_message',
                                                       u'type': u'direct',
                                                       u'version': u'2.0'},
                                     u'set_update_failed': {u'name': u'set_update_failed',
                                                            u'on-success': u'send_message',
                                                            u'publish': {u'message': u'<% task(update).result %>',
                                                                         u'status': u'FAILED'},
                                                            u'type': u'direct',
                                                            u'version': u'2.0'},
                                     u'update': {u'action': u'tripleo.package_update.update_stack container=<% $.container %> timeout=<% $.timeout %>',
                                                 u'name': u'update',
                                                 u'on-error': u'set_update_failed',
                                                 u'on-success': u'send_message',
                                                 u'type': u'direct',
                                                 u'version': u'2.0'}},
                          u'version': u'2.0'}},
 u'message': u"Failed to run action [action_ex_id=a2cf63cb-5935-426c-b825-3ed304accb93, action_cls='<class 'mistral.actions.action_factory.UpdateStackAction'>', attributes='{}', params='{u'container': u'overcloud', u'timeout': 0}']\n ERROR: Stack overcloud already has an action (UPDATE) in progress.",
 u'status': u'FAILED'}

END return value: 1

Attempted fix is https://review.openstack.org/#/c/430903/2

Brad P. Crochet (brad-9)
Changed in tripleo:
status: New → Triaged
importance: Undecided → Critical
assignee: nobody → Brad P. Crochet (brad-9)
milestone: none → ocata-rc1
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to python-tripleoclient (master)

Fix proposed to branch: master
Review: https://review.openstack.org/432422

Changed in tripleo:
status: Triaged → In Progress
Changed in tripleo:
milestone: ocata-rc1 → ocata-rc2
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to python-tripleoclient (master)

Reviewed: https://review.openstack.org/432422
Committed: https://git.openstack.org/cgit/openstack/python-tripleoclient/commit/?id=a137b490c931ce7eccf79e88e38a5ae14603f792
Submitter: Jenkins
Branch: master

commit a137b490c931ce7eccf79e88e38a5ae14603f792
Author: Brad P. Crochet <email address hidden>
Date: Fri Feb 10 13:52:56 2017 -0500

    Pass empty stack_fields to update manager

    There is an additional stack_fields param that needs to be passed to
    the update manager.

    Change-Id: Ic5cd462879ed1b8ab84144157d8f3d5f67f262b2
    Closes-Bug: #1663698

Changed in tripleo:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to python-tripleoclient (stable/ocata)

Fix proposed to branch: stable/ocata
Review: https://review.openstack.org/436534

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to python-tripleoclient (stable/ocata)

Reviewed: https://review.openstack.org/436534
Committed: https://git.openstack.org/cgit/openstack/python-tripleoclient/commit/?id=6c953327539cefba8d44cd9ec0e924bad905d435
Submitter: Jenkins
Branch: stable/ocata

commit 6c953327539cefba8d44cd9ec0e924bad905d435
Author: Brad P. Crochet <email address hidden>
Date: Fri Feb 10 13:52:56 2017 -0500

    Pass empty stack_fields to update manager

    There is an additional stack_fields param that needs to be passed to
    the update manager.

    Change-Id: Ic5cd462879ed1b8ab84144157d8f3d5f67f262b2
    Closes-Bug: #1663698
    (cherry picked from commit a137b490c931ce7eccf79e88e38a5ae14603f792)

tags: added: in-stable-ocata
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/python-tripleoclient 6.1.0

This issue was fixed in the openstack/python-tripleoclient 6.1.0 release.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/python-tripleoclient 7.0.0

This issue was fixed in the openstack/python-tripleoclient 7.0.0 release.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.