diff options
Diffstat (limited to 'troveclient/shell.py')
-rw-r--r-- | troveclient/shell.py | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/troveclient/shell.py b/troveclient/shell.py index ad41d03..9d1b683 100644 --- a/troveclient/shell.py +++ b/troveclient/shell.py @@ -21,7 +21,7 @@ Command-line interface to the OpenStack Trove API. import argparse import getpass import glob -import imp +import importlib import itertools import logging import os @@ -299,6 +299,14 @@ class OpenStackTroveShell(object): yield name, module + def _load_module(self, name, path): + module_spec = importlib.spec_from_file_location( + name, path + ) + module = importlib.module_from_spec(module_spec) + module_spec.loader.exec_module(module) + return module + def _discover_via_contrib_path(self, version): module_path = os.path.dirname(os.path.abspath(__file__)) version_str = "v%s" % version.replace('.', '_') @@ -312,7 +320,7 @@ class OpenStackTroveShell(object): if name == "__init__": continue - module = imp.load_source(name, ext_path) + module = self._load_module(name, ext_path) yield name, module def _discover_via_entry_points(self): |