Bug 1488471 - OSP11 -> OSP12 upgrade: undercloud upgrade fails with: __init__() got an unexpected keyword argument 'url'
Summary: OSP11 -> OSP12 upgrade: undercloud upgrade fails with: __init__() got an unex...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: python-tripleoclient
Version: 11.0 (Ocata)
Hardware: Unspecified
OS: Unspecified
high
urgent
Target Milestone: rc
: 12.0 (Pike)
Assignee: RHOS Maint
QA Contact: Marius Cornea
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2017-09-05 13:14 UTC by Marius Cornea
Modified: 2018-02-05 19:12 UTC (History)
15 users (show)

Fixed In Version: python-tripleoclient-7.3.4-0.20171108081803.ca08346.el7ost
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2017-12-13 22:02:49 UTC
Target Upstream Version:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Launchpad 1717524 0 None None None 2017-09-15 14:03:37 UTC
OpenStack gerrit 504897 0 None None None 2017-09-19 09:15:05 UTC
OpenStack gerrit 504922 0 None None None 2017-09-19 09:15:50 UTC
Red Hat Product Errata RHEA-2017:3462 0 normal SHIPPED_LIVE Red Hat OpenStack Platform 12.0 Enhancement Advisory 2018-02-16 01:43:25 UTC

Description Marius Cornea 2017-09-05 13:14:14 UTC
Description of problem:
OSP11 -> OSP12 upgrade: undercloud upgrade fails with: __init__() got an unexpected keyword argument 'url'

Version-Release number of selected component (if applicable):
instack-6.0.0-1.el7ost.noarch
instack-undercloud-6.1.0-3.el7ost.noarch


How reproducible:
100%

Steps to Reproduce:
1. Deploy OSP11
2. Upgrade undercloud to OSP12
sudo yum install -y ceph-ansible

sudo yum update -y python-tripleoclient
openstack undercloud upgrade


Actual results:
__init__() got an unexpected keyword argument 'url'


Expected results:
Undercloud upgrade completes.

Additional info:

Comment 1 Marius Cornea 2017-09-05 13:15:45 UTC
Workarounds:
before undercloud upgrade:
sudo yum update -y python-tripleoclient python-openstackclient

Comment 2 Jose Luis Franco 2017-09-15 11:15:10 UTC
Issue reproduced, more information obtained from the verbose logs:

auth_config_hook(): {'auth_type': 'password', 'beta_command': False, 'tripleoclient_api_version': '1', u'compute_api_version': u'2', 'key': None, u'database_api_version': '1', 'metrics_api_version': '1', 'data_processing_api_version': '1.1', 'inspector_api_version': '1', 'policy_api_version': '1', u'network_api_version': u'2', u'message': u'', u'image_format': u'qcow2', 'networks': [], u'image_api_version': u'2', 'verify': True, u'status': u'active', u'dns_api_version': '2', u'object_store_api_version': u'1', 'username': 'admin', u'container_infra_api_version': '1', 'verbose_level': 4, 'region_name': '', 'api_timeout': None, u'baremetal_api_version': '1.29', 'queues_api_version': '2', 'auth': {'url': 'x', 'token': '***', 'project_name': 'admin'}, 'default_domain': 'default', u'image_api_use_tasks': False, u'floating_ip_source': u'neutron', u'orchestration_api_version': '1', 'timing': False, 'password': '***', u'application_catalog_api_version': '1', 'murano_packages_service': 'murano', 'cacert': None, u'key_manager_api_version': '1', u'metering_api_version': u'2', 'deferred_help': False, u'identity_api_version': u'2.0', u'workflow_api_version': '2', u'volume_api_version': u'2', 'cert': None, u'secgroup_source': u'neutron', 'translator_api_version': '1', 'alarming_api_version': '2', u'container_api_version': u'1', 'auth_url': 'https://192.168.24.2:13000/v2.0', u'interface': None, u'disable_vendor_agent': {}}
__init__() got an unexpected keyword argument 'url'
clean_up UpgradeUndercloud: __init__() got an unexpected keyword argument 'url'
END return value: 1


This dictionary seems to be the one causing the error:
'auth': {'url': 'x', 'token': '***', 'project_name': 'admin'} 

The workaround mentioned in comment 1 solves the issue because in pike the code which sets the auth variable has been changed:
https://github.com/openstack/python-openstackclient/commit/1c3cb0a3b54cdb6cd5b27e88372b65cfac844422#diff-172c2898e78a23662134d5b594d15af5

Comment 3 Jose Luis Franco 2017-09-15 11:38:52 UTC
I verified in my local environment that cherry picking https://review.openstack.org/#/c/450453/2 to (ocata) python-openstackclient solves the issue. 

"openstack undercloud" command is not the only command affected by this bug, all commands with auth_required = False (like openstack overcloud, openstack --help, complete, command list, module list)

Comment 4 Marios Andreou 2017-11-07 07:27:52 UTC
is there anything further here? Looks like both patches are merged so moving this POST

Comment 5 Jose Luis Franco 2017-11-07 08:14:40 UTC
There is nothing left Marios, last time I reproduced it it was working perfectly and the 'openstack undercloud upgrade' was not returning any error. 
Thanks for moving it forward.

Comment 10 errata-xmlrpc 2017-12-13 22:02:49 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHEA-2017:3462


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