diff options
author | Andrey Kurilin <akurilin@mirantis.com> | 2016-11-24 19:59:13 +0200 |
---|---|---|
committer | Andrey Kurilin <akurilin@mirantis.com> | 2016-11-30 18:00:05 +0000 |
commit | f834711d2f4a6052a054ffc79918f615e400bdbe (patch) | |
tree | 633a1d48267edd975c11ab1ce94694e76012701a /novaclient/client.py | |
parent | 43bbe88ac84a5486db7c4140e155f8f52af3118d (diff) | |
download | python-novaclient-f834711d2f4a6052a054ffc79918f615e400bdbe.tar.gz |
Move all extensions from contrib dir
All extensions from novaclient.v2.contrib should be not be extensions in
case of api version >=2.0;<=3.0 (historically, they are turned on by default
for cli layer), so let's move it from contrib dir and turn on by default.
Change-Id: I4ef4e44cf970947dad33110ce658a133e4f2893e
Diffstat (limited to 'novaclient/client.py')
-rw-r--r-- | novaclient/client.py | 21 |
1 files changed, 7 insertions, 14 deletions
diff --git a/novaclient/client.py b/novaclient/client.py index f9fecaa4..79f36342 100644 --- a/novaclient/client.py +++ b/novaclient/client.py @@ -22,12 +22,9 @@ OpenStack Client interface. Handles the REST calls and responses. import copy import functools -import glob import hashlib -import imp import itertools import logging -import os import pkgutil import re import warnings @@ -772,18 +769,14 @@ def _discover_via_python_path(): def _discover_via_contrib_path(version): - module_path = os.path.dirname(os.path.abspath(__file__)) - ext_path = os.path.join(module_path, "v%s" % version.ver_major, 'contrib') - ext_glob = os.path.join(ext_path, "*.py") + if version.ver_major == 2: + modules = {"baremetal": "novaclient.v2.contrib.baremetal", + "tenant_networks": "novaclient.v2.contrib.tenant_networks"} - for ext_path in glob.iglob(ext_glob): - name = os.path.basename(ext_path)[:-3] - - if name in extensions_ignored_name: - continue - - module = imp.load_source(name, ext_path) - yield name, module + for name, module_name in modules.items(): + module_loader = pkgutil.get_loader(module_name) + module = module_loader.load_module(module_name) + yield name, module def _discover_via_entry_points(): |