diff options
| author | j-griffith <john.griffith8@gmail.com> | 2017-05-31 08:44:07 -0600 |
|---|---|---|
| committer | John Griffith <john.griffith8@gmail.com> | 2017-07-26 11:49:03 -0600 |
| commit | 7547e55bbebfeb4232968780cfed4d9a448594ae (patch) | |
| tree | d9e96681e2b68748a6c1d47e51a2a5248b82c514 /cinderclient/client.py | |
| parent | 18381fb872e7280539e2b41ea2673bd230c89518 (diff) | |
| download | python-cinderclient-7547e55bbebfeb4232968780cfed4d9a448594ae.tar.gz | |
cinderclient might not return version for V2 API
The get_server_version call in cidnerclient/client.py relies on
either finding v 3.x or encountering an exception to revert back
to v 2.0. It's not clear that this call will always raise if
a non V3 capable Cinder is called, so just to be safe make sure
we return a 2.0 response if there's no V3 reported back.
Change-Id: I3b5fb895cad4b85d5f4ea286fb33f7dd0929e691
Closes-Bug: #1694729
Diffstat (limited to 'cinderclient/client.py')
| -rw-r--r-- | cinderclient/client.py | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/cinderclient/client.py b/cinderclient/client.py index 16152fb..dabfcd3 100644 --- a/cinderclient/client.py +++ b/cinderclient/client.py @@ -78,6 +78,8 @@ def get_server_version(url): :returns: APIVersion object for min and max version supported by the server """ + min_version = "2.0" + current_version = "2.0" logger = logging.getLogger(__name__) try: @@ -87,12 +89,14 @@ def get_server_version(url): versions = data['versions'] for version in versions: if '3.' in version['version']: - return (api_versions.APIVersion(version['min_version']), - api_versions.APIVersion(version['version'])) + min_version = version['min_version'] + current_version = version['version'] + break except exceptions.ClientException as e: logger.warning("Error in server version query:%s\n" "Returning APIVersion 2.0", six.text_type(e.message)) - return api_versions.APIVersion("2.0"), api_versions.APIVersion("2.0") + return (api_versions.APIVersion(min_version), + api_versions.APIVersion(current_version)) def get_highest_client_server_version(url): |
