Patchwork [bitbake-devel,1/2] fetch2: make fetch failure errors more readable

login
register
mail settings
Submitter Paul Eggleton
Date Sept. 23, 2012, 5:05 p.m.
Message ID <1348419936-13985-1-git-send-email-paul.eggleton@linux.intel.com>
Download mbox | patch
Permalink /patch/37081/
State New
Headers show

Comments

Paul Eggleton - Sept. 23, 2012, 5:05 p.m.
Most of the time we don't need to see the fetch command; the fetch log
includes the command as a debug message in any case, so omit it. Also
adjust the way command output is printed (we don't need stderr/stdout
labelled, and print "no output" instead of "output:\nNone" when there is
no output.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
 bitbake/lib/bb/fetch2/__init__.py |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
Richard Purdie - Sept. 24, 2012, 11:14 a.m.
On Sun, 2012-09-23 at 18:05 +0100, Paul Eggleton wrote:
> Most of the time we don't need to see the fetch command; the fetch log
> includes the command as a debug message in any case, so omit it. Also
> adjust the way command output is printed (we don't need stderr/stdout
> labelled, and print "no output" instead of "output:\nNone" when there is
> no output.
> 
> Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
> ---
>  bitbake/lib/bb/fetch2/__init__.py |    8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)

Merged to master, thanks.

Richard

Patch

diff --git a/bitbake/lib/bb/fetch2/__init__.py b/bitbake/lib/bb/fetch2/__init__.py
index 37f7d75..1acb0a4 100644
--- a/bitbake/lib/bb/fetch2/__init__.py
+++ b/bitbake/lib/bb/fetch2/__init__.py
@@ -471,7 +471,13 @@  def runfetchcmd(cmd, d, quiet = False, cleanup = []):
     except bb.process.NotFoundError as e:
         error_message = "Fetch command %s" % (e.command)
     except bb.process.ExecutionError as e:
-        error_message = "Fetch command %s failed with exit code %s, output:\nSTDOUT: %s\nSTDERR: %s" % (e.command, e.exitcode, e.stdout, e.stderr)
+        if e.stdout:
+            output = "output:\n%s\n%s" % (e.stdout, e.stderr)
+        elif e.stderr:
+            output = "output:\n%s" % e.stderr
+        else:
+            output = "no output"
+        error_message = "Fetch command failed with exit code %s, %s" % (e.exitcode, output)
     except bb.process.CmdError as e:
         error_message = "Fetch command %s could not be run:\n%s" % (e.command, e.msg)
     if not success: