From dc7e77989134fcda94934dc96aa8ac1c735bd939 Mon Sep 17 00:00:00 2001 From: Luong Anh Tuan Date: Wed, 2 Nov 2016 16:56:05 +0700 Subject: Make method import_versioned_module work Update function import_versioned_module in Oslo.utils 3.17. This patch update to meet new version. For more information: http://docs.openstack.org/developer/oslo.utils/history.html Change-Id: Ia031b53b27fcea66dbf4f2798d58b51c53c2d0cc Closes-Bug: #1627313 --- ceilometerclient/client.py | 5 +++-- ceilometerclient/common/utils.py | 8 -------- ceilometerclient/shell.py | 4 +++- requirements.txt | 2 +- 4 files changed, 7 insertions(+), 12 deletions(-) diff --git a/ceilometerclient/client.py b/ceilometerclient/client.py index c00ab1c..30fbe4f 100644 --- a/ceilometerclient/client.py +++ b/ceilometerclient/client.py @@ -19,10 +19,10 @@ from keystoneauth1 import exceptions as ka_exc from keystoneauth1.identity import v2 as v2_auth from keystoneauth1.identity import v3 as v3_auth from keystoneauth1 import session +from oslo_utils import importutils from oslo_utils import strutils import six.moves.urllib.parse as urlparse -from ceilometerclient.common import utils from ceilometerclient import exc from ceilometerclient.openstack.common.apiclient import auth from ceilometerclient.openstack.common.apiclient import client @@ -308,7 +308,8 @@ def _adjust_kwargs(kwargs): def Client(version, *args, **kwargs): client_kwargs = _adjust_kwargs(kwargs) - module = utils.import_versioned_module(version, 'client') + module = importutils.import_versioned_module('ceilometerclient', + version, 'client') client_class = getattr(module, 'Client') return client_class(*args, **client_kwargs) diff --git a/ceilometerclient/common/utils.py b/ceilometerclient/common/utils.py index 5e3da82..720691d 100644 --- a/ceilometerclient/common/utils.py +++ b/ceilometerclient/common/utils.py @@ -20,7 +20,6 @@ import textwrap from oslo_serialization import jsonutils from oslo_utils import encodeutils -from oslo_utils import importutils import prettytable import six @@ -140,13 +139,6 @@ def print_dict(d, dict_property="Property", wrap=0): print(encoded) -def import_versioned_module(version, submodule=None): - module = 'ceilometerclient.v%s' % version - if submodule: - module = '.'.join((module, submodule)) - return importutils.import_module(module) - - def args_array_to_dict(kwargs, key_to_convert): values_to_convert = kwargs.get(key_to_convert) if values_to_convert: diff --git a/ceilometerclient/shell.py b/ceilometerclient/shell.py index 1a8293e..f98804c 100644 --- a/ceilometerclient/shell.py +++ b/ceilometerclient/shell.py @@ -21,6 +21,7 @@ import logging import sys from oslo_utils import encodeutils +from oslo_utils import importutils import six import ceilometerclient @@ -112,7 +113,8 @@ class CeilometerShell(object): self.subcommands = {} subparsers = parser.add_subparsers(metavar='') - submodule = utils.import_versioned_module(version, 'shell') + submodule = importutils.import_versioned_module('ceilometerclient', + version, 'shell') self._find_actions(subparsers, submodule) self._find_actions(subparsers, self) self._add_bash_completion_subparser(subparsers) diff --git a/requirements.txt b/requirements.txt index 51fc204..f13ff9b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -6,7 +6,7 @@ iso8601>=0.1.11 # MIT keystoneauth1>=2.1.0 # Apache-2.0 oslo.i18n>=2.1.0 # Apache-2.0 oslo.serialization>=1.10.0 # Apache-2.0 -oslo.utils>=3.5.0 # Apache-2.0 +oslo.utils>=3.17.0 # Apache-2.0 PrettyTable<0.8,>=0.7 # BSD requests!=2.9.0,>=2.8.1 # Apache-2.0 six>=1.9.0 # MIT -- cgit v1.2.1