On Tue, May 19, 2020 at 3:02 PM Richard Purdie <richard.pur...@linuxfoundation.org> wrote: > > On Tue, 2020-05-19 at 20:36 +0200, Konrad Weihmann wrote: > > in case the opkg command fails in before no output of the tool > > itself was printed to assist the user with debugging the issue. > > Print all output of the tool by using CalledProcessError wrapper around > > the call > > > > Signed-off-by: Konrad Weihmann <kweihm...@outlook.com> > > --- > > meta/classes/package_ipk.bbclass | 11 +++++++---- > > 1 file changed, 7 insertions(+), 4 deletions(-) > > > > diff --git a/meta/classes/package_ipk.bbclass > > b/meta/classes/package_ipk.bbclass > > index c008559e4a..5e7d552cc5 100644 > > --- a/meta/classes/package_ipk.bbclass > > +++ b/meta/classes/package_ipk.bbclass > > @@ -223,10 +223,13 @@ def ipk_write_pkg(pkg, d): > > conffiles.close() > > > > os.chdir(basedir) > > - subprocess.check_output("PATH=\"%s\" %s %s %s" % > > (localdata.getVar("PATH"), > > - > > d.getVar("OPKGBUILDCMD"), pkg, pkgoutdir), > > - stderr=subprocess.STDOUT, > > - shell=True) > > + try: > > + subprocess.check_output("PATH=\"%s\" %s %s %s" % > > (localdata.getVar("PATH"), > > + > > d.getVar("OPKGBUILDCMD"), pkg, pkgoutdir), > > + stderr=subprocess.STDOUT, > > + shell=True) > > + except subprocess.CalledProcessError as exp: > > + bb.fatal("{} failed with {}: {}".format(exp.cmd, > > exp.returncode, exp.output.decode("utf-8"))) > > > > if d.getVar('IPK_SIGN_PACKAGES') == '1': > > ipkver = "%s-%s" % (d.getVar('PKGV'), d.getVar('PKGR')) > > I get the feeling we have a problem with our subprocess calls and > debugging but its hard to know what to do about it. We can patch each > call site like this but it starts to make we wonder whether we need a > general wrapper, or we're missing something in bitbake or elsewhere to > help with things. > > There is this code: > > http://git.yoctoproject.org/cgit.cgi/poky/tree/bitbake/lib/bb/utils.py#n378 > > which is meant to help but it clearly isn't helping/catching all cases. > > I think we are going to need to look at a wider/more general solution > or at least have a plan for one. >
are you think of wrapping subprocess.check_output calls with some post processing ? > Cheers, > > Richard > >
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#138494): https://lists.openembedded.org/g/openembedded-core/message/138494 Mute This Topic: https://lists.openembedded.org/mt/74331803/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-