<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/lib/oeqa/core/utils, branch hardknott</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=hardknott</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=hardknott'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2021-04-06T08:30:10+00:00</updated>
<entry>
<title>oeqa/concurrencytest: Fix display of test stdout/stderr</title>
<updated>2021-04-06T08:30:10+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-04-04T10:33:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=855fbb6f99655384bae413b2fe4909fd003fa866'/>
<id>urn:sha1:855fbb6f99655384bae413b2fe4909fd003fa866</id>
<content type='text'>
If oe-selftest is run with -j, the output to stdout/stderr is being
lost at present. Capture this and display it upon test failure. We
have code that previously tried to enable this but it wasn't functioning
correctly. This should give more usable error reports on the autobuilder.

This code will mix stdout and stderr as the output is streamed from the test
server without markup. This is most in keeping with subunit/testools though
and the easiest way to handle the various challenges here as far as I can
see.

(From OE-Core rev: 6a954ce5834c8026adecff8478c3d827640bc647)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>oeqa/concurrencytest: Rename variables to improve the code</title>
<updated>2021-04-06T08:30:10+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2021-04-04T10:30:07+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=f0c5a904d9ebe1e2ae4f691273e06e8dfd86cb56'/>
<id>urn:sha1:f0c5a904d9ebe1e2ae4f691273e06e8dfd86cb56</id>
<content type='text'>
Each time I look at this code I get confused about what the different
variables represent. Rename a few of them to better indicate what they
represent.

(From OE-Core rev: e39d97c0b191add9281bac463ca059685288c81a)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>oeqa/selftest: Clean up separate builddir in success case when non-threaded</title>
<updated>2020-06-28T07:36:00+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2020-06-27T12:42:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=79856aaf934f27fd6ff781d9434c0889b4d93652'/>
<id>urn:sha1:79856aaf934f27fd6ff781d9434c0889b4d93652</id>
<content type='text'>
If oe-selftest is run without -j, the separate build directory "build-st"
isn't cleaned up afterwards. Mirror the behaviour of the -j option to
handle this the same way, only preserve upon failure.

To do this, the remove function needs to be moved to the selftest
context module so that it can be accessed without requiring the
testtools and subunit modules the -j option requires.

A dummy wrapper class is used to wrap the tests and clean up afterwards.

[YOCTO #13953]

(From OE-Core rev: 1b376ade430d40d3cfe9c18f200c764d622710e5)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>oeqa/concurrencytest: don't delete build directory for failed tests</title>
<updated>2020-05-24T22:56:03+00:00</updated>
<author>
<name>Steve Sakoman</name>
<email>steve@sakoman.com</email>
</author>
<published>2020-05-22T22:38:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=6b3b5ab4ba74030db65906abd89491fce44c0f12'/>
<id>urn:sha1:6b3b5ab4ba74030db65906abd89491fce44c0f12</id>
<content type='text'>
(From OE-Core rev: 3d5aa170d2e88b852bd2a4452aab9311a24badef)

Signed-off-by: Steve Sakoman &lt;steve@sakoman.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>oeqa/selftest: Standardise seperate builddir for concurrent and non-concurrent selftest</title>
<updated>2020-02-21T09:39:00+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2020-02-19T18:19:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=c569157d9d8aa43eddb98e9fbe66339bf7f20958'/>
<id>urn:sha1:c569157d9d8aa43eddb98e9fbe66339bf7f20958</id>
<content type='text'>
Currently oe-selftest reuses the current build directory and the concurrent
version run with -j does not.

Standardise and use a separate new build directory in both cases. This will lead
to simpler code and more reliable user run tests.

(From OE-Core rev: 50238b0717b04e0a1fa69d618e8c8aa8445a80b0)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>concurrencytest.py: add outSideTestaddSkip for subunit</title>
<updated>2020-02-18T23:53:55+00:00</updated>
<author>
<name>Trevor Gamblin</name>
<email>trevor.gamblin@windriver.com</email>
</author>
<published>2020-02-18T14:56:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=450688b0104ee035813569156805584c4e50ac66'/>
<id>urn:sha1:450688b0104ee035813569156805584c4e50ac66</id>
<content type='text'>
see: https://bugzilla.yoctoproject.org/show_bug.cgi?id=13663

When running oe-selftest in concurrency mode (e.g. with oe-selftest
--run-tests oescripts.OEPybootchartguyTests -j 4), if a skip occurred
during setUpClass() rather than within individual tests, the entire
suite would show "UNKNOWN" as each test's result. This is because
subunit doesn't know how to handle skips outside of individual tests.
An example of where this occurs is when running the above call to
oe-selftest in concurrency mode on a host machine that does not have
python3-cairo installed.

Patch subunit inside concurrencytest.py to provide a method called
outSideTestaddSkip, which will allow subunit to correctly detect the
skip in setUpClass().

(From OE-Core rev: 9b8734b584d6e8d9c32ff2a721b29f3f3e61cca7)

Signed-off-by: Trevor Gamblin &lt;trevor.gamblin@windriver.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>oeqa/concurrencytest: Optimise for autobuilder/clobberdir</title>
<updated>2019-12-06T14:41:28+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2019-12-05T10:56:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=055695994ad4945a07a0866236257a999409c419'/>
<id>urn:sha1:055695994ad4945a07a0866236257a999409c419</id>
<content type='text'>
We're seeing huge delays on the autobuilder during oe-selftest builddir
deletion. For example there is a currently running selftest we could do
with the results from and its been going 13 hours, at least 8 of which
was in deletion of the builddirs.

There are a variety of ways we could solve this problem however the
autobuilder has a mechanism for deferred deletion, "clobberdir" which
it already uses for this kind of work.

Whilst in general hardcoding things like this is horrible, I believe
in this case the benefits (and resulting improvements on my sanity
if nothing else) mean this is a case where we should do it.

If/as/when someone can come up with a better solution that is fine
and this can be replaced.

(From OE-Core rev: 51a84937d32a85cbdb7d5b1d1ec69a290d0c303b)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>oeqa/core/utils/concurrencytest.py: Handle exceptions and details</title>
<updated>2019-09-30T15:55:21+00:00</updated>
<author>
<name>Nathan Rossi</name>
<email>nathan@nathanrossi.com</email>
</author>
<published>2019-09-27T05:31:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=02a334c98fef6a8af9ee3dcd29815dbe6d145d3c'/>
<id>urn:sha1:02a334c98fef6a8af9ee3dcd29815dbe6d145d3c</id>
<content type='text'>
Handle the streaming of exception content with details data. The
testtools package allows both 'err' and 'details' kwargs but can only
pass one of them to the parent.

To handle the passing of exception traceback and details data at the
same time, encode the traceback into the details object and remove the
'err' arg from the add* result call. This encodes the traceback similar
to how 'err' is handled without any details object. Decoding is already
done by testtools when the traceback is encoded in the details object.

(From OE-Core rev: 3613451825b251784b7673d89db465b9782c3a31)

Signed-off-by: Nathan Rossi &lt;nathan@nathanrossi.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>oeqa/concurrenttest: Use ionice to delete build directories</title>
<updated>2019-09-19T19:30:35+00:00</updated>
<author>
<name>Richard Purdie</name>
<email>richard.purdie@linuxfoundation.org</email>
</author>
<published>2019-09-19T12:21:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=e9f859106c8a53d9711ac27f337f1ebb4564b6b7'/>
<id>urn:sha1:e9f859106c8a53d9711ac27f337f1ebb4564b6b7</id>
<content type='text'>
Autobuilder type infrastructure can benefit from deletion of certain files as
background IO due to the way Linux filesystem priority works.

We have problems where build directories as part of oe-selftest being
delete starves the running tasks of IO to the point builds take much
longer to compelte.

Having this option of running the deletion at "idle" helps a lot with
that. Use the new option added to bb.utils.prunedir().

(From OE-Core rev: d41e7018be56902b7a1be4590e468cd15e02a3b5)

Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>oeqa/core: Implement proper extra result collection and serialization</title>
<updated>2019-09-07T20:56:43+00:00</updated>
<author>
<name>Nathan Rossi</name>
<email>nathan@nathanrossi.com</email>
</author>
<published>2019-09-07T12:55:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=1220faf6659e404f6aa2c3155eb8840ac361c2b2'/>
<id>urn:sha1:1220faf6659e404f6aa2c3155eb8840ac361c2b2</id>
<content type='text'>
Implement handling of extra result (e.g. ptestresult) collection with
the addition of a "extraresults" extraction function in OETestResult. In
order to be able to serialize and deserialize the extraresults data,
allow OETestResult add* calls to take a details kwarg. The subunit
module can handle cross-process transfer of binary data for the details
kwarg. With a TestResult proxy class to sit inbetween to encode and
decode to and from json.

(From OE-Core rev: b0831d43606415807af80e2aa1d0566d0b8c209c)

Signed-off-by: Nathan Rossi &lt;nathan@nathanrossi.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
