From 777451ca43642e915b3ee9fa76b7a08a0936fa29 Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Mon, 9 Nov 2015 14:40:08 +0000 Subject: classes/metadata_scm: fix git errors showing up on non-git repositories 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]. (From OE-Core master rev: f533c1bf4c6edbecc67f9e2c62fd475d64668e86) (From OE-Core rev: 8968ede9c8cdcd2cbf13bd5bba95883082189908) Signed-off-by: Paul Eggleton Signed-off-by: Ross Burton Signed-off-by: Richard Purdie --- meta/classes/metadata_scm.bbclass | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) (limited to 'meta/classes') diff --git a/meta/classes/metadata_scm.bbclass b/meta/classes/metadata_scm.bbclass index 64465faa4c..0f7f4235a3 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 "" + rev, _ = bb.process.run('git rev-parse --abbrev-ref HEAD', cwd=path) + except bb.process.ExecutionError: + rev = '' + 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 "" + rev, _ = bb.process.run('git rev-parse HEAD', cwd=path) + except bb.process.ExecutionError: + rev = '' + return rev.strip() -- cgit v1.2.3-54-g00ecf