Openembedded Core Discussions
 help / color / mirror / Atom feed
From: Mikko Rapeli <mikko.rapeli@linaro.org>
To: Richard Purdie <richard.purdie@linuxfoundation.org>
Cc: openembedded-core@lists.openembedded.org
Subject: Re: [OE-core] [PATCH v3 4/5] testexport.bbclass: use image suffix in testexport tar ball name
Date: Mon, 14 Jul 2025 15:26:33 +0300	[thread overview]
Message-ID: <aHT3efhwan1KNT2x@nuoska> (raw)
In-Reply-To: <8f8c45afad9226d215b4c37d13abd8d677e79755.camel@linuxfoundation.org>

Hi,

On Mon, Jul 14, 2025 at 01:08:42PM +0100, Richard Purdie wrote:
> On Wed, 2025-07-02 at 10:25 +0300, Mikko Rapeli via lists.openembedded.org wrote:
> > testexport.tar.gz is image specific. Thus add same image name
> > suffix to the tar ball name. For example genericarm64 machine
> > core-image-minimal image tar ball changes name from
> > testexport.tar.gz to testexport-core-image-minimal-genericarm64.tar.gz
> > 
> > This way testexport from multiple images can exists in the same
> > directory.
> > 
> > Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org>
> > ---
> > �meta/classes-recipe/testexport.bbclass | 8 ++++++--
> > �1 file changed, 6 insertions(+), 2 deletions(-)
> > 
> > diff --git a/meta/classes-recipe/testexport.bbclass b/meta/classes-recipe/testexport.bbclass
> > index 843d777e3bb9..3005fc0dfa52 100644
> > --- a/meta/classes-recipe/testexport.bbclass
> > +++ b/meta/classes-recipe/testexport.bbclass
> > @@ -136,8 +136,12 @@ def copy_needed_files(d, tc):
> > ������������ if dir == '__pycache__':
> > ���������������� shutil.rmtree(os.path.join(subdir, dir))
> > �
> > +��� image_basename = d.getVar('IMAGE_BASENAME')
> > +��� image_machine_suffix = d.getVar('IMAGE_MACHINE_SUFFIX')
> > +
> > ���� # Create tar file for common parts of testexport
> > -��� testexport_create_tarball(d, "testexport.tar.gz", d.getVar("TEST_EXPORT_DIR"))
> > +��� testexport_create_tarball(d, "testexport-%s%s.tar.gz" %
> > +������� (image_basename, image_machine_suffix), d.getVar("TEST_EXPORT_DIR"))
> > �
> > ���� # Copy packages needed for runtime testing
> > ���� test_paths = get_runtime_paths(d)
> > @@ -149,7 +153,7 @@ def copy_needed_files(d, tc):
> > �������� export_pkg_dir = os.path.join(d.getVar("TEST_EXPORT_DIR"), "packages")
> > �������� oe.path.copytree(test_pkg_dir, export_pkg_dir)
> > �������� # Create tar file for packages needed by the DUT
> > -������� testexport_create_tarball(d, "testexport_packages_%s.tar.gz" % d.getVar("MACHINE"), export_pkg_dir)
> > +������� testexport_create_tarball(d, "testexport_packages%s.tar.gz" % image_machine_suffix, export_pkg_dir)
> > �
> > ���� # Copy SDK
> > ���� if d.getVar("TEST_EXPORT_SDK_ENABLED") == "1":
> 
> Since most of the machine and image specific elements of this have been
> removed, does it not make sense just to have one testexport tarball
> generated by an external script?
> 
> The testdata json file is already exported separately.
> 
> I've held off this patch for that reason, making it machine specific
> seems a backwards step?

Currently the image specific testdata json is inside the testexport
tar ball as core-image-sato/data/testdata.json. Same file is available
after build in
tmp/deploy/images/genericarm64/core-image-sato-genericarm64.rootfs.testdata.json
so I could switch the exported tests over to that.

I'll try to set this up with a different patch. Thanks for the feedback!

The new approach needs some standardisation between what is in build
output and what is in the test environment. There is a similar issue
with opkg/ipk runtime test and the need for just a few files around
80kb from the ipk archive, not the full archive which is possibly
gigabytes in size. I've now set these up with a separate script
outside of poky. It would be nice if these small scripts could live
in poky, possibly scripts/contrib/ ? I could capture the image specific
testdata.json file in the same way too, for example a single tar ball.

Cheers,

-Mikko


      reply	other threads:[~2025-07-14 12:26 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-07-02  7:25 [PATCH v3 1/5] oeqa runtime: set self.runner and handle None Mikko Rapeli
2025-07-02  7:25 ` [PATCH v3 2/5] oeqa context.py: use TEST_SUITES if set Mikko Rapeli
2025-07-02  7:25 ` [PATCH v3 3/5] testexport.bbclass oe-test: capture all tests and data from all layers Mikko Rapeli
2025-07-05 16:07   ` [OE-core] " Richard Purdie
2025-07-07  7:16     ` Mikko Rapeli
2025-07-02  7:25 ` [PATCH v3 4/5] testexport.bbclass: use image suffix in testexport tar ball name Mikko Rapeli
2025-07-14 12:08   ` [OE-core] " Richard Purdie
2025-07-14 12:26     ` Mikko Rapeli [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aHT3efhwan1KNT2x@nuoska \
    --to=mikko.rapeli@linaro.org \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=richard.purdie@linuxfoundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox