Skip to contentSkip to conversation

oe-selftest: import git module only when needed

PATCH New Ed Bartosh 1 participant 1 message Dec 19, 2016

lore
Share & tools
lore

Ed Bartosh

author
#0 lore raw

PATCH 1/1 oe-selftest: import git module only when needed

git module is not included into standard Python library and therefore causes import errors on the systems where PythonGit is not installed.

As git module only used in the code implementing --repository functionality it's better to import git only in the scope that requires it.

[YOCTO #10821]

---
 meta/lib/oeqa/utils/metadata.py | 2 +-
 scripts/oe-selftest             | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)
meta/lib/oeqa/utils/metadata.py +1 -1
index ecbe763..5d8bf84 100644
@@ -5,7 +5,6 @@
 # Functions to get metadata from the testing host used
 # for analytics of test results.
 
-from git import Repo, InvalidGitRepositoryError, NoSuchPathError
 from collections import OrderedDict
 from collections.abc import MutableMapping
 from xml.dom.minidom import parseString
@@ -46,6 +45,7 @@ def metadata_from_data_store(d):
 
 def get_layers(layers):
     """ Returns layer name, branch, and revision as OrderedDict. """
+    from git import Repo, InvalidGitRepositoryError, NoSuchPathError
 
     layer_dict = OrderedDict()
     for layer in layers.split():
scripts/oe-selftest +1 -1
index f4b861f..bfcea66 100755
@@ -36,7 +36,6 @@ import re
 import fnmatch
 import collections
 import imp
-import git
 
 sys.path.insert(0, os.path.dirname(os.path.realpath(__file__)) + '/lib')
 import scriptpath
@@ -577,6 +576,7 @@ def main():
         log.info("Finished")
 
         if args.repository:
+            import git
             # Commit tests results to repository
             metadata = metadata_from_bb()
             git_dir = os.path.join(os.getcwd(), 'selftest')
Signature · 1 line
2.1.4