Commit Graph

834 Commits

Author SHA1 Message Date
Ross Burton
cabab2f259 Add meta-clang builders
Add a meta-clang builder that runs testimage on core-image-sato-sdk for
both qemux86-64 and qemuarm64, and add meta-clang to the nightly
check-layer builder.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-06-13 09:38:32 +01:00
Ross Burton
8d757d1c58 config.json: remove redundant oe-selftest-arm builder
This builder isn't run regularly, and is redundant now that
oe-selftest-armhost uses MACHINE=qemuarm64.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-06-13 09:38:32 +01:00
Ross Burton
9d76c17891 scripts/layer-config: remove unused imports
Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-06-13 09:38:32 +01:00
Richard Purdie
1e256e530a config.json: Separate out toolchain targets
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-06-08 11:16:43 +01:00
Richard Purdie
86a4721584 config.json: Update non-rpm targets to improve coverage
The "non-rpm" tests were not covering our builds particularly well and wasting
build resources. Update the tests to drop the "deb on rpm" and "rpm on deb" targets
which never really find issues.

Replace them with one set of good x86 and arm tests for both ipk and deb, adding in
SDK testing to the mix as well.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-06-08 10:49:16 +01:00
Richard Purdie
ab087eea18 config.json: Switch from qemux86 to qemux86-64 for general targets
Most users are using 64 bit x86 now, update our remaining configuration
defaults to reflect that.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-06-08 10:44:22 +01:00
Michael Halstead
7539f673ee scripts/publish-artefacts: remove all reference to deprecated edgerouter
edgerouter is no longer part of meta-yocto so we removed it from the
autobuilder configuration as well.

Signed-off-by: Michael Halstead <mhalstead@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-05-10 12:39:25 +01:00
Alexander Kanavin
f19a89d99e auh: publish output on https://autobuilder.yocto.io/pub/auh/
AUH itself already has an option to include the link into
its email reports; the option just needs to be enabled.

[YOCTO #15103]

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-05-04 16:29:15 +01:00
Thomas Roos
bb3b08ad62 config.json: meta-aws needs meta-multimedia now, for checklayer as well
Signed-off-by: Thomas Roos <throos@amazon.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-05-03 16:50:55 +01:00
Richard Purdie
2eceb32bcc config.json: meta-aws needs meta-multimedia now
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-14 16:47:13 +01:00
Richard Purdie
e185e1efde run-patchmetrics: Add mickledore
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-11 11:45:50 +01:00
Richard Purdie
54a2960aa8 cve-generate-chartdata: Fix syntax error
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-04-01 11:38:56 +01:00
Richard Purdie
d47f0b8c99 cve-generate-chartdata: Fix indentation
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-31 17:21:12 +01:00
Richard Purdie
3f489eb396 cve-generate-chartdata: Exclude linux-yocto for old release branches for now
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-31 17:20:15 +01:00
Richard Purdie
1741a9ca2b cve-report: Drop linux-yocto exclusion
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-29 16:08:29 +01:00
Alexis Lothoré
47343fdd5f scripts/generate-testresult-index.py: expose regression reports on web page
When available, expose tesresult-regressions-report.txt on non-release web page,
as it is done for many other artifacts currently

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-24 10:31:35 +00:00
Alexis Lothoré
20a27080b5 scripts/generate-testresult-index.py: fix typo in template var name
Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-24 09:55:47 +00:00
Alexis Lothoré
3a7ee08fa1 scripts/send_qa_email: return previous tag when running a non-release master build
Some nightly builders are configured in yocto-autobuilder2 to run master builds.
Those build parameters currently skip all branches of
get_regression_base_and_target, which then return None, while the caller
expects a base and target tuple

Set default behaviour to return previous tag as comparison base and passed
branch as target for such builds

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-23 16:06:37 +00:00
Alexis Lothoré
c932ae37d8 scripts/test_send_qa_email.py: allow tests with non static results
When the test assert is about a tag in Poky, the result will not be the same
depending on existing tags at the time of running tests.

Add a LAST_TAG marker to loosen constraints but still allow to tests for general
cases (e.g. : test that tag-depending tests does not return None)

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-23 16:06:37 +00:00
Alexis Lothoré
a07dc3b832 scripts/test_utils: test master nightly build case
Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-23 16:06:37 +00:00
Alexis Lothoré
ae10707e84 config.json: fix A. Belloni configuration for regression reporting
There is a typo in BUILD_HISTORY_FORKPUSH, leading to failures on Autobuilder
when trying to generate regression reports:

Traceback (most recent call last):
  File "/home/pokybuild/yocto-worker/a-full/yocto-autobuilder-helper/scripts/send-qa-email", line 213, in <module>
    send_qa_email()
  File "/home/pokybuild/yocto-worker/a-full/yocto-autobuilder-helper/scripts/send-qa-email", line 117, in send_qa_email
    basebranch, comparebranch = utils.getcomparisonbranch(ourconfig, repo, branch)
  File "/home/pokybuild/yocto-worker/a-full/yocto-autobuilder-helper/scripts/utils.py", line 392, in getcomparisonbranch
    comparerepo, comparebranch = base.split(":")
ValueError: not enough values to unpack (expected 2, got 1)

Observed on build a-full/5070

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-21 17:50:27 +00:00
Alexis Lothoré
8bfd8f9de4 config: flag A. Belloni master-next branch as testing branch
Add "abelloni/master-next" branch from poky-contrib in configuration so that
regression reports are generated when testing for patches

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-20 17:17:26 +00:00
Alexis Lothoré
61a1289e50 scripts/test_send_qa_email.py: add tests for base/target pair guessing
Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-20 17:17:26 +00:00
Alexis Lothoré
35af879d51 scripts/send-qa-email: fix testing branches regression reporting
d6018b891a broke regression reporting for testing
branches (e.g: master-next in poky, ross/mut in poky-contrib) by ignoring the comparebranch returned by
utils.getcomparison branch

Fix regression reporting for those branches by using comparebranch again. The
fix also refactor/add a intermediary step to guess base and target for
regression reporting, to isolate a bit the logic and make it easier later to add
multiple base/target couples

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-20 17:17:26 +00:00
Alexis Lothoré
11409d7fea scripts/send-qa-email: add tests for is_release_version
Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-20 17:17:26 +00:00
Alexis Lothoré
8f2d6752cc scripts/send-qa-email: protect is_release_version from None value
Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-20 17:17:26 +00:00
Alexis Lothoré
0a815f4032 scripts/send-qa-email: invert boolean logic for release check
is_non_release_version has an inverted logic which makes its reuse quite
confusing

Transform it as is_release_version and let caller do the negation if needed

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-20 17:17:26 +00:00
Alexis Lothoré
b913d47991 scripts/send-qa-email: remove unused variable
Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-20 17:17:26 +00:00
Alexis Lothoré
ffdc167377 scripts/utils: add unit tests for getcomparisonbranch
Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-20 17:17:26 +00:00
Alexis Lothoré
95dbb1b6fe scripts/send-qa-email: use yocto_testresults_query.py for sha1 resolution
A new tool named yocto_testresults_query.py has been integrated in poky as a
thin wrapper between send-qa-email and resulttool. The new tool is in charge of
converting tags/branches names to SHA1 revisions and to call resulttool with
those revisions

Remove any code related to tag/branches conversions to SHA1 and use
yocto_testresults_qery.py instead

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-03-08 18:00:06 +00:00
Richard Purdie
fe4a3b081a config.json: Switch to new buildtools tarball with binutils fix
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-23 22:15:29 +00:00
Alexis Lothoré
ff074831d7 scripts/prepare-shared-repos: fix minor typo in autobuilder logs
Minor typo observed when cheking the "Prepared shared repository" step logs in
autobuilder web interface:

====================================================================================================
Intially fetching repo poky (1675810261.1)
====================================================================================================

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-15 11:31:10 +00:00
Richard Purdie
a16accc5dd cve-report: Remove ignore list and expose all CVEs
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-07 21:53:00 +00:00
Alexis Lothoré
013d4f4df1 scripts/send-qa-email: add target and base revisions in regression report
Current regression reports do not contain information about versions compared
when generating reports. While it is still possible to get the information by
searching the autobuilder log, it is not convenient. Moreover, future
developments will allow to generate multiple reports (with different bases for
comparison) in a single build.
As a consequence, embed target and base revisions in the report header

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-07 21:51:47 +00:00
Alexis Lothoré
2c0d9e1977 scripts/send-qa-email: reduce testresults shallow clone depth
Since we are now force-fetching base revisions and target revisions for
regression report generation, we can make testresults clone even more "shallow"
to increase clone speed in CI pipelines

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-07 21:51:47 +00:00
Alexis Lothoré
13b0ddac62 scripts/send-qa-email: force current revision fetch
If we try to run send-qa-email to simulate past releases (for example, for
development or debugging), the execution will very likely fail because the
target revision to examine (ie: the poky revision) is too old, and as a
consequence is not contained in the testresults shallow clone anymore (because
testsresults history keeps moving forward as builds are triggered on
autobuilder). As a consequence, force-fetch the "target" revision, as it is
already done for the "base" revision

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-07 21:51:47 +00:00
Randy MacLeod
4b6a53b04e config.json: set oe-time-dd-test.sh timeout to 3 seconds
For the month of January 2023, the distribution of dd times has a long
tail that extends to 13 seconds with 2 events exceeding the current
limit of 30 seconds.

Reduce the timeout to 3 seconds based on the observed distribution of
dd times, which would result in the timout triggering about 20 times a month.
That's enough data to be useful but not so much that it's overwhelming the
logging or the people who will analyze it. It also avoids the rapid increase
in the tail of the distribution which starts to rise exponentially under 2 seconds.
It's sensible response time for people to expect the system to have.

Signed-off-by: Randy MacLeod <Randy.MacLeod@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-02-03 12:39:05 +00:00
Alexis Lothoré
54d8e519f3 scripts/send_qa_email.py: add unit tests on previous version computation
The "previous version" computation bring many edge cases depending on the
version under release. Add a basic test suite to validate currently implemented
computation strategy and to prevent mistakes when ediiting it in the future

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 22:40:34 +00:00
Alexis Lothoré
d6018b891a scripts/send-qa-email: Generate regression reports against most relevant release
Instead of only generating regressions reports against HEAD of relevant branch, compute
most relevant tag (ie : release) against which we can check for regressions. General rules
introduced are the following :
- milestone release is checked against previous milestone if possible, otherwise
  against major release
- point release  is checked against previous point release if possible,
  otherwise against major release
- major release is checked against previous major release
- a non release build is checked against base branch
Examples :
- 4.1.2.rc1 is checked against yocto-4.1.1
- 4.1.2 is checked against yocto-4.1.1
- 4.1.1.rc1 is checked against yocto-4.1
- 4.1.1 is checked against yocto-4.1
- 4.1 is checked against yocto-4.0
- 4.1.rc4 is checked against yocto-4.0
- 4.1_M2.rc1 is checked against 4.1_M1
- 4.1_M2 is checked against 4.1_M1
- 4.1_M1.rc1 is checked against yocto-4.0
- 4.1_M1 is checked against yocto-4.0

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 22:40:29 +00:00
Alexis Lothoré
caf1e75312 scripts/send_qa_email.py: Wrap send_qa_email.py content in function
This wrapping allows importing send_qa_email.py in another script without
executing the QA emailing routine. This is useful for unit testing the script
internal functions

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 22:40:11 +00:00
Alexis Lothoré
8b16d49789 scripts/send-qa-email: add symlink to preserve compatibility with autobuilder
Merely renaming send-qa-email to send_qa_email.py would imply to update
yocto-autobuilder2 scripts, which can be daunting. In order to preserve
compatibility with current configuration, add a symlink pointing to the
new script

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 22:40:07 +00:00
Alexis Lothoré
5adb7a7dc3 scripts/send_qa_email.py: Rename send-qa-email to send_qa_email.py
This rename fixes send-qa-email regarding python guidelines, which allows to
import the script content in another script (for unit testing purpose for
example)

Signed-off-by: Alexis Lothoré <alexis.lothore@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-26 22:40:02 +00:00
Michael Halstead
f195338438 run-docs-build: switch to released docs tarball
The pub/non-release directories have aged out and no longer work.
Switch to a stable location and bump the version to 4.1.2 as well.

Signed-off-by: Michael Halstead <mhalstead@linuxfoundation.org>
2023-01-17 11:04:42 -08:00
Richard Purdie
655dd1c146 scripts/run-config: Only run bitbake command if environment file exists
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-14 21:06:38 +00:00
Richard Purdie
4cc1f44a22 scripts/run-config: Ensure bitbake server is shutdown at the end
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-14 12:35:10 +00:00
Richard Purdie
cba1cd63bd config.json: Set BB_NUMBER_PARSE_THREADS
Currently we use 56 or 24 cores on the various workers but this is
pulling machines over with OOM issues, particularly in oe-selftest.
Lower the parallelism for parsing to try and help avoid this as we
don't really need maximum speed for parsing on the autobuilder.

Keep the same numbers for the perf workers as we want to use all
cores there.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2023-01-13 17:37:25 +00:00
Alexandre Belloni
06ee0dee6c config.json: use -a option for oe-selftest
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-26 11:19:15 +00:00
Richard Purdie
9c401a85ea config.json: Switch alma8/strem8/opensuse to use full buildtools
Also drop centos8 as we don't test that now.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-11 22:37:52 +00:00
Richard Purdie
c2a6f225d6 config.json: Update to use 4.1 buildtools with later python version
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-11 22:24:40 +00:00
Alexander Kanavin
5843653181 config.json: add x86 (32 bit) ptest options
This will be particularly useful for testing Y2038 issues,
as that is the only 32 bit target that can be run at native speed
on the AB cluster.

Whether a-full should get fast ptests or full ptests can be decided
after collecting AB execution times for both.

Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-12-07 11:24:05 +00:00