Hi Alex,
On Fri, 1 Nov 2024 at 12:32 PM, Alexander Kanavin wrote:
> Anyway, implementation runCmd() indeed defaults to stderr being
> redirected and appended to stdout, so the standard stream and the
> error stream are mashed together.
>
> To avoid that, you should also set stderr=subprocess.PIPE when calling
> runCmd(). Check meta/lib/oeqa/selftest/cases/runcmd.py for examples:
>
> def test_output(self):
> result = runCmd("echo stdout; echo stderr >&2", shell=True,
> sync=False)
> self.assertEqual("stdout\nstderr", result.output)
> self.assertEqual("", result.error)
>
> def test_output_split(self):
> result = runCmd("echo stdout; echo stderr >&2", shell=True,
> stderr=subprocess.PIPE, sync=False)
> self.assertEqual("stdout", result.output)
> self.assertEqual("stderr", result.error)
I didn't realize that stderr=subprocess.PIPE could be used. I've submitted a
separate commit.
https://lists.openembedded.org/g/openembedded-core/message/206602
Thanks,
Vince
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#206603):
https://lists.openembedded.org/g/openembedded-core/message/206603
Mute This Topic: https://lists.openembedded.org/mt/109308684/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-