[OE-core] [PATCH 1/1] classes/metadata_scm: fix git errors showing up on non-git repositories
Paul Eggleton
paul.eggleton at linux.intel.com
Mon Nov 9 14:40:08 UTC 2015
Fixes the following error showing up for layers that aren't a git repo
(or aren't parented by one):
fatal: Not a git repository (or any of the parent directories): .git
This was because we weren't intercepting stderr. We might as well just
use bb.process.run() here which does that and returns stdout and stderr
separately.
(This was a regression that came in with OE-Core revision
3aac11076e22ac4fea48f5404110bb959547a9fe).
Fixes [YOCTO #8661].
Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>
---
meta/classes/metadata_scm.bbclass | 20 ++++++++++----------
1 file changed, 10 insertions(+), 10 deletions(-)
diff --git a/meta/classes/metadata_scm.bbclass b/meta/classes/metadata_scm.bbclass
index 64465fa..0f7f423 100644
--- a/meta/classes/metadata_scm.bbclass
+++ b/meta/classes/metadata_scm.bbclass
@@ -65,19 +65,19 @@ def base_get_metadata_svn_revision(path, d):
return revision
def base_get_metadata_git_branch(path, d):
- import subprocess
+ import bb.process
try:
- return subprocess.check_output(["git", "rev-parse", "--abbrev-ref", "HEAD"],
- cwd=path).strip()
- except:
- return "<unknown>"
+ rev, _ = bb.process.run('git rev-parse --abbrev-ref HEAD', cwd=path)
+ except bb.process.ExecutionError:
+ rev = '<unknown>'
+ return rev.strip()
def base_get_metadata_git_revision(path, d):
- import subprocess
+ import bb.process
try:
- return subprocess.check_output(["git", "rev-parse", "HEAD"],
- cwd=path).strip()
- except:
- return "<unknown>"
+ rev, _ = bb.process.run('git rev-parse HEAD', cwd=path)
+ except bb.process.ExecutionError:
+ rev = '<unknown>'
+ return rev.strip()
--
2.1.0
More information about the Openembedded-core
mailing list