diff --git a/heatclient/client.py b/heatclient/client.py index 8237b8e1..77444f43 100644 --- a/heatclient/client.py +++ b/heatclient/client.py @@ -10,10 +10,11 @@ # License for the specific language governing permissions and limitations # under the License. -from heatclient.common import utils +from oslo_utils import importutils def Client(version, *args, **kwargs): - module = utils.import_versioned_module(version, 'client') + module = importutils.import_versioned_module('heatclient', + version, 'client') client_class = getattr(module, 'Client') return client_class(*args, **kwargs) diff --git a/heatclient/common/utils.py b/heatclient/common/utils.py index 91410acd..dfc8378e 100644 --- a/heatclient/common/utils.py +++ b/heatclient/common/utils.py @@ -21,7 +21,6 @@ import uuid from oslo_serialization import jsonutils from oslo_utils import encodeutils -from oslo_utils import importutils import prettytable import six from six.moves.urllib import error @@ -239,13 +238,6 @@ def find_resource(manager, name_or_id): raise exc.CommandError(msg) -def import_versioned_module(version, submodule=None): - module = 'heatclient.v%s' % version - if submodule: - module = '.'.join((module, submodule)) - return importutils.import_module(module) - - def format_parameters(params, parse_semicolon=True): '''Reformat parameters into dict of format expected by the API.''' diff --git a/heatclient/shell.py b/heatclient/shell.py index 558fb8a8..be9cf4e2 100644 --- a/heatclient/shell.py +++ b/heatclient/shell.py @@ -348,7 +348,8 @@ class HeatShell(object): self.subcommands = {} subparsers = parser.add_subparsers(metavar='') - submodule = utils.import_versioned_module(version, 'shell') + submodule = importutils.import_versioned_module('heatclient', + version, 'shell') self._find_actions(subparsers, submodule) self._find_actions(subparsers, self) self._add_bash_completion_subparser(subparsers)