diff options
| author | Thune Tran <thune.a.tran@boeing.com> | 2025-06-26 20:57:21 +0000 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2025-07-01 08:49:37 +0100 |
| commit | 041ba867db947c9336c47747c621d2a1719d5c4c (patch) | |
| tree | ae5fa9e709e159b239bafaa17f5ece9d5a8c929a /meta/lib/oeqa/sdk/buildtools-cases/build.py | |
| parent | ece7bb5490c8c8cc8db6529cad5f512e591d2ecb (diff) | |
| download | poky-041ba867db947c9336c47747c621d2a1719d5c4c.tar.gz | |
oeqa/sdk: Simplify test specification and discovery
Simplify how tests are specified and discovered for different SDK configurations
to allow per-layer customization.
* Introduce `TESTSDK_CASE_DIRS` variable to specify test directory types,
replacing the need to modify the default_cases class member
* Discover tests from configured layers using a common discovery pattern
(`<LAYER_DIR>/lib/oeqa/<dirname>/cases`) where `<dirname>` is specified in `TESTSDK_CASE_DIRS`
* The buildtools directories were renamed to follow the common discovery pattern
(`<LAYER_DIR>/lib/oeqa/<dirname>/cases`) for consistency across all SDK configurations.
meta/lib/oeqa/
├── sdk/cases/ # Standard SDK: dirname="sdk"
├── buildtools/cases/ # Buildtools: dirname="buildtools"
└── buildtools-docs/cases/ # Buildtools-docs: dirname="buildtools-docs"
meta-mingw/lib/oeqa/
└── sdkmingw/cases/ # MinGW: dirname="sdkmingw"
meta-foo/lib/oeqa/
└── sdk/cases/ # Standard SDK: dirname="sdk"
Tested by:
1. Adding new tests using the default discovery pattern `<LAYER_DIR>/lib/oeqa/sdk/cases` and
verifying they are discovered and executed.
2. Verifying existing SDK configuration tests work (requires -c populate_sdk first):
* Standard SDK: `bitbake core-image-minimal -c testsdk`
* Buildtools tarball: `bitbake buildtools-tarball -c testsdk`
* Buildtools docs tarball: `bitbake buildtools-docs-tarball -c testsdk`
* Mingw SDK: (SDKMACHINE = "x86_64-mingw32") `bitbake core-image-minimal -c testsdk`
(From OE-Core rev: bde94c128c0b4e7e1ebea40f582b4dd6dcc965ff)
Signed-off-by: Thune Tran <thune.a.tran@boeing.com>
Signed-off-by: Chuck Wolber <chuck.wolber@boeing.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/lib/oeqa/sdk/buildtools-cases/build.py')
| -rw-r--r-- | meta/lib/oeqa/sdk/buildtools-cases/build.py | 32 |
1 files changed, 0 insertions, 32 deletions
diff --git a/meta/lib/oeqa/sdk/buildtools-cases/build.py b/meta/lib/oeqa/sdk/buildtools-cases/build.py deleted file mode 100644 index c85c32496b..0000000000 --- a/meta/lib/oeqa/sdk/buildtools-cases/build.py +++ /dev/null | |||
| @@ -1,32 +0,0 @@ | |||
| 1 | # | ||
| 2 | # Copyright OpenEmbedded Contributors | ||
| 3 | # | ||
| 4 | # SPDX-License-Identifier: MIT | ||
| 5 | # | ||
| 6 | |||
| 7 | import os, tempfile | ||
| 8 | import time | ||
| 9 | from oeqa.sdk.case import OESDKTestCase | ||
| 10 | from oeqa.utils.subprocesstweak import errors_have_output | ||
| 11 | errors_have_output() | ||
| 12 | |||
| 13 | class BuildTests(OESDKTestCase): | ||
| 14 | """ | ||
| 15 | Verify that bitbake can build virtual/libc inside the buildtools. | ||
| 16 | """ | ||
| 17 | def test_libc(self): | ||
| 18 | with tempfile.TemporaryDirectory(prefix='bitbake-build-', dir=self.tc.sdk_dir) as testdir: | ||
| 19 | corebase = self.td['COREBASE'] | ||
| 20 | |||
| 21 | self._run('. %s/oe-init-build-env %s' % (corebase, testdir)) | ||
| 22 | with open(os.path.join(testdir, 'conf', 'local.conf'), 'ta') as conf: | ||
| 23 | conf.write('\n') | ||
| 24 | conf.write('DL_DIR = "%s"\n' % self.td['DL_DIR']) | ||
| 25 | |||
| 26 | try: | ||
| 27 | self._run('. %s/oe-init-build-env %s && bitbake virtual/libc' % (corebase, testdir)) | ||
| 28 | finally: | ||
| 29 | delay = 10 | ||
| 30 | while delay and (os.path.exists(testdir + "/bitbake.lock") or os.path.exists(testdir + "/cache/hashserv.db-wal")): | ||
| 31 | time.sleep(1) | ||
| 32 | delay = delay - 1 | ||
