diff options
author | Ross Burton <ross@burtonini.com> | 2021-10-20 18:30:06 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-11-03 11:18:56 +0000 |
commit | 03a5e65cdd702e942c0a10097e00b8e58628fea8 (patch) | |
tree | 649b6219267a85f3e3abe8a28cd4d183edf5bfb8 /meta | |
parent | 2de98cf4b997e27c6c48be9e3459b7db03b9e093 (diff) | |
download | poky-03a5e65cdd702e942c0a10097e00b8e58628fea8.tar.gz |
oeqa/runtime: load modules using importlib
Instead of using __import__() which is low-level and discouraged, use
importlib.
(From OE-Core rev: d187bedad37eb4d75c84144148ac58b146ddba9e)
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 9f501d22eab5dbd565f3f5783f4f484a6d1f70a2)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta')
-rw-r--r-- | meta/lib/oeqa/runtime/context.py | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/meta/lib/oeqa/runtime/context.py b/meta/lib/oeqa/runtime/context.py index 3826f27642..7908ce1fd4 100644 --- a/meta/lib/oeqa/runtime/context.py +++ b/meta/lib/oeqa/runtime/context.py | |||
@@ -175,16 +175,12 @@ class OERuntimeTestContextExecutor(OETestContextExecutor): | |||
175 | # Search for and return a controller or None from given module name | 175 | # Search for and return a controller or None from given module name |
176 | @staticmethod | 176 | @staticmethod |
177 | def _loadControllerFromModule(target, modulename): | 177 | def _loadControllerFromModule(target, modulename): |
178 | obj = None | ||
179 | # import module, allowing it to raise import exception | ||
180 | module = __import__(modulename, globals(), locals(), [target]) | ||
181 | # look for target class in the module, catching any exceptions as it | ||
182 | # is valid that a module may not have the target class. | ||
183 | try: | 178 | try: |
184 | obj = getattr(module, target) | 179 | import importlib |
185 | except: | 180 | module = importlib.import_module(modulename) |
186 | obj = None | 181 | return getattr(module, target) |
187 | return obj | 182 | except AttributeError: |
183 | return None | ||
188 | 184 | ||
189 | @staticmethod | 185 | @staticmethod |
190 | def readPackagesManifest(manifest): | 186 | def readPackagesManifest(manifest): |