Move the GitHub runners currently on macos-11 to macos-14 as the former is
no longer supported by GitHub.
Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
Do not fail during results merge if
twister or the bsim workflows did not run
(or produce an xml).
Depending on what has changed in a PR
and therefore what tests are run this can happen.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Let's merge the results and publish them as in the
twister workflow.
It is nicer to not select files by hand and produces
a nicer report.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Our documentation uses image formats such as WebP that are not supported
by LaTeX. This commit enables Sphinx's sphinx.ext.imageconverter
extension, and updates the documentation to indicate ImageMagick is
required to build docs.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This commit updates the CI workflows to use the CI image v0.26.13, which
includes Zephyr SDK 0.16.8.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit reduces the parallel job count for building the documentation
from the default value of 16 (i.e. `-j auto` aka. the vCPU count) to 14
because the total available RAM in the runners is 32GiB and each
sphinx-build process may use more than 2GiB of RAM, which can lead to
out-of-memory conditions.
Note that the HTML doc build process was parallelised prior to this change
in spite of the lack of `-j auto` in the CI workflow because the default
`SPHINXOPTS` includes `-j auto` and only `SPHINXOPTS_EXTRA` was specified
-- this commit explicitly adds the `SPHINXOPTS` for it with the default
value specified in doc/CMakeLists.txt to make the job count configurable
while ensuring the previous behaviour is preserved.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Reschedule from '6:25 and 18:25, Monday-Friday'
to 'everyday at the same time'.
Signed-off-by: Arkadiusz Cholewinski <arkadiuszx.cholewinski@intel.com>
This commit updates the codecov workflow to specify the full coverage
report file path under `files` because codecov-action v4 does not correctly
process the `directory` parameter.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit adds the token for uploading to codecov.io because codecov now
requires a token and rejects any upload requests without one.
It also updates the codecov-action version from v3 to v4, which is required
for using a "global upload token."
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Update getting started guide, release notes, and CI actions to
use Python 3.10 as minimum supported version.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
The behavior of glob() changedin Python 3.11 and runing the old one
means we are missing some changes that trigger a compliance failure when
ran on an updated system. Upgrade to 3.11 so those are caught in CI.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
This reverts commit 3ba4c98a1d.
A repo from microsoft was not available, that lead to ci
actions failing. This hat been fixed, so this workaround
is no longer needed.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
Bump tj-actions/changed-files to v44.
As of v42, input file patterns that end with a / now match all sub-files
within the directory without requiring to specify the globstar pattern.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Blackbox tests do not produce easily accessible artifacts.
Thus, the upload steps ought to be removed.
Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
This commit updates the CI workflows to use the CI image v0.26.11, which
includes bsim 2.2 and nrf-regtool 5.1.0.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Refer to the nrf5340 bsim boards by their hwmv2 name.
As a bonus remove a few variable settings
which match the defaults from the scripts.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Some bsim tests have a dependency on testlib. Since testlib does not
have a stable API, it's a good idea to run the bsim tests.
Signed-off-by: Aleksander Wasaznik <aleksander.wasaznik@nordicsemi.no>
With the introduction of the new runners, the time it takes to build the
documentation in CI has slowed down to the point that the job often times
out.
Applied a conservative 2x factor to the timeouts that were in place.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
When updating the bsim install in the docker image's
/opt/bsim_west to the version pointed in the Zephyr
manifest, we are detaching the head to that version.
We suppress the "You are in 'detached HEAD' state..."
git warning as it is just noise in CI.
So far we were doing it by globally supressing that
warning. Let's instead just supress it for the
command in question so we don't change global
git config against expectations.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
The west manifest may point to a newer version of bsim than
the one avaliable in the docker image. Let's ensure
we run with that one.
This is equivalent to the change done in
933d338c97
for the bsim-tests workflow.
Note that the update and rebuild is incremental,
so if the docker image already has the right
version the operation is very fast
(~1 second)
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This commit updates the bsim-tests workflow to use the new zephyr-runner v2
CI runner deployment.
It also updates the workflow to use the `ci-repo-cache` Docker image, which
includes the Zephyr repository cache, because the node level repository
cache is no longer available in the zephyr-runner v2.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the twister_tests_blackbox workflow to use the CI image
v0.26.9, in order to pull in the Zephyr SDK 0.16.5-1 release and keep the
image and SDK versions in sync with the rest of the CI workflows.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the errno workflow to use the CI image v0.26.9, in
order to pull in the Zephyr SDK 0.16.5-1 release and keep the image and SDK
versions in sync with the rest of the CI workflows.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the clang workflow such that ccache only uses remote
Redis cache storage when available.
The purpose of this to reduce the individual runner local disk IOPS
requirement; thereby, reducing the overall load on the SAN.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the clang workflow to, when available, use Redis remote
storage backend for the ccache compilation cache data.
The Redis cache server is hosted in the Kubernetes cluster in which the
zephyr-runner pods run -- the Redis remote storage backend will be ignored
if the server is unavailable.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the clang workflow to use the new zephyr-runner v2 CI
runner deployment.
It also updates the workflow to use the `ci-repo-cache` Docker image, which
includes the Zephyr repository cache, because the node level repository
cache is no longer available in the zephyr-runner v2.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit sets the codecov workflow twister timeout multiplier to 2,
which effectively increases the default test timeout from 60 to 120
seconds, because the new cost-effective Zephyr runners may take longer to
execute tests and the default timeout is not sufficient for some tests to
complete.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the codecov workflow such that ccache only uses remote
Redis cache storage when available.
The purpose of this to reduce the individual runner local disk IOPS
requirement; thereby, reducing the overall load on the SAN.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit adds the compiler `--specs=*` flag to the ccache ignore option
list because ccache is unable to resolve the toolchain-provided specs file
path and will consider source files to be uncacheable if it is unable to
read the specified specs file.
Note that adding `--specs=*` to the ignore option list is not a problem
because it is unlikely for the content of the toolchain libc spec file to
change without the compiler executable itself changing.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the codecov workflow to, when available, use Redis
remote storage backend for the ccache compilation cache data.
The Redis cache server is hosted in the Kubernetes cluster in which the
zephyr-runner pods run -- the Redis remote storage backend will be ignored
if the server is unavailable.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the codecov workflow to store ccache data in the
zephyr-runner v2 node cache.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the codecov workflow to use the new zephyr-runner v2 CI
runner deployment.
It also updates the workflow to use the `ci-repo-cache` Docker image, which
includes the Zephyr repository cache, because the node level repository
cache is no longer available in the zephyr-runner v2.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the codecov workflow to run on all forks under the
zephyrproject-rtos organisation.
The purpose of this is mainly to simplify the process of testing of this
workflow under the zephyr-testing repository.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the bsim-tests workflow to use the new zephyr-runner v2
CI runner deployment.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the doc-build workflow to use the new zephyr-runner v2
CI runner deployment.
It also installs additional system packages that are not available by
default in the zephyr-runner v2.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
The current version is generating a deprecation warning:
Node.js 16 actions are deprecated. Please update the following actions
to use Node.js 20: actions/setup-python@v4.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
This commit increases the twister build job timeout from the default value
of 6 hours to 24 hours because scheduled (weekly) build runs take longer
than 6 hours to complete.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit sets the twister timeout multiplier to 2, which effectively
increases the default test timeout from 60 to 120 seconds, because the new
cost-effective Zephyr runners may take longer to execute tests and the
default timeout is not sufficient for some tests to complete.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the twister workflow such that ccache only uses remote
Redis cache storage when available.
The purpose of this to reduce the individual runner local disk IOPS
requirement; thereby, reducing the overall load on the SAN.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit adds the compiler `--specs=*` flag to the ccache ignore option
list because ccache is unable to resolve the toolchain-provided specs file
path and will consider source files to be uncacheable if it is unable to
read the specified specs file.
Note that adding `--specs=*` to the ignore option list is not a problem
because it is unlikely for the content of the toolchain libc spec file to
change without the compiler executable itself changing.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the twister workflow to, when available, use Redis
remote storage backend for the ccache compilation cache data.
The Redis cache server is hosted in the Kubernetes cluster in which the
zephyr-runner pods run -- the Redis remote storage backend will be ignored
if the server is unavailable.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the twister workflow to store ccache data in the
zephyr-runner v2 node cache.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the twister workflow jobs that run on the zephyr-runner
v2 to print the underlying cloud service information in the logs to help
trace and debug potential runner issues.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the twister workflow to use the new zephyr-runner v2 CI
runner deployment.
It also updates the workflow to use the `ci-repo-cache` Docker image, which
includes the Zephyr repository cache, because the node level repository
cache is no longer available in the zephyr-runner v2.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Extend codecov workflow to include coverage analysis.
Signed-off-by: Arkadiusz Cholewinski <arkadiuszx.cholewinski@intel.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Make sure we run twister and west unit tests on branches, to avoid
breakage when introducing changes to those branches.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Build phase was skipped, we were checking for file changes which will
not have any results on a scheduled event.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
The API coverage documentation support was (relatively) recently introduced
in bad87f1684 and is not available in older
release branches.
Since doc-publish workflows always run in the default (main) branch
context, it is necessary to make the API coverage documentation handling
optional for the workflow runs that are triggered from older release
branches.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Generate one single status for all jobs and also report success when
twister run is being skipped to be able to make this a required check.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This workflow runs in the background and does not report anything and
does emit failures. Remove for now until we have something that is
actionable.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This commit updates the CI workflows to use the CI image v0.26.7, in order
to pull in the Zephyr SDK 0.16.5 release.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Seems like GitHub introduced a macOS on ARM runner, add it to the
multiplatform test, with this we are running all the SDKs minus the
Linux ARM64 one.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Align the standard action versions with the other workflows, those have
been updated in 0dcb0518be but this file was merged after.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
gcovr 7.0 has some incompatible format, stick with 6.0 for now until we
have a compatible solution with gcovr 7.0 output.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Pytest twister harness tests have been added to the
twister_tests.yml workflow some time ago.
However, the $ZEPHYR_BASE/scripts/pylib/pytest-twister-harness/**
has not been monitored by the automatic GitHub Action triggers
of that workflow.
This change adds monitoring for the relevant files.
Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
Update Github actions to their latest versions to fix the following
warnings on runs:
```
Node.js 16 actions are deprecated. Please update the following actions
to use Node.js 20: actions/checkout@v3, actions/cache@v3,
actions/upload-artifact@v3. For more information see:
https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
```
`actions/checkout` and `actions/cache` are straight Node version
upgrades, `actions/upload-artifact` and `actions/download-artifact` have
breaking changes, but don't appear to affect our usage.
https://github.com/actions/upload-artifact
Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
Add a new workflow to build the hello world sample application on all
three supported platforms using the reusable setup action.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Get more reviewers added to make sure we have all relevant reviewers
looking at changes targeting collab branches.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
We should not have any dependencies on optional modules, for example on
Kconfigs from optional modules. Compliance has to pass without any
optional modules enabled.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
The ZEPHYR_SDK_INSTALL_DIR currently tries to read the SDK_VERSION at
the PR base ref, but this has only been introduced recently. Move the
ZEPHYR_SDK_INSTALL_DIR settings down as part of the build step after the
rebase so the file will always be found from now, even on old PRs.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Drop all hardcoded ZEPHYR_SDK_INSTALL_DIR settings, set the variable
automatically from the SDK_VERSION file instead.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Add new workflow steps to the babblesim workflow to run
also the UART tests on the nrf52_bsim.
This commit:
* Enables the single device tests (which we may
move to the normal twister workflow once we fix the
requirement for a fixture)
* Adds as a placeholder the infra for multidevice tests.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
A simple workflow that runs when a PR is merged and updates the
elasticsearch index with merged PR info.
The dashboard for displaying the information can be found here:
https://kibana.zephyrproject.io/
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Needed for full functionality of the job server in twister
which only works with kitware supplied ninja version.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Add "Architecture Review" and "dev-review" to the list of labels that
block a PR from merging, less chances to merge these before discussion
unintentionally.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Increase stack size for tests and exclude nono libc scenarios causing
some issues with coverage collection.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Use gcovr to generate reports and upload cobertura style file instead of
previously lcov info file.
We have been seeing issues with lcov format and code being reporting as
not covered although by inspecting the generate output files, they
should be.
The XML format we generate is otherwise easier to parse and deal with.
Also reduce frequency to twice a day.
Fixes#66656
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Switch from native_posix to native_sim as test platform
for this workflow.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Switch from native_posix to native_sim as test platform
for this workflow.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Add a step to the first twister shard to upload the list of Python
packages used with the build.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
This fixes a bug with the action's Docker container apparently not being
able to run Node correctly anymore...
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Coverity issues need to be resolved and closed by owners, not by the
bot. Other wise we will continue scanning them and reporting them over
and over.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Seems like the PDF build hit the "detected dubious ownership in
repository" issue that has already been worked around in other workflow.
Add that step here as well.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Skip the rebase step if it's not a pull request. Schedule and push runs
have no base ref to rebase against anyway, currently the step is failing
and being skipped.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Hardwaremap testing requires installing requirements-run-tests.txt.
This change adds that to the relevant workflow.
Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
Also run some split BT stack tests on the nrf5340 platform
to test this configuration.
Move the selection of which BT tests are built and run
in each platform to files in the tests/bsim/ folder.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
The compliance and coding guidelines workflows are using the same pip
cache key, but they install a different set of packages. This is
probably a copy paste error from the documentation build workflow, which
has been changed to use a hash, and is causing one of the two steps to
restore from a incorrect cache.
Fix this by using a hash of the workflow file itself as a key, as that's
where the python package list is defined.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Add some west update flags to do a shallow fetch of the modules and
skip the tags. That data is not needed anyway, should make the
compliance check initialization a bit faster.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
The license check workflow quietly stopped working after commit
8f66f854c3. Upgrading the checkout action
changed default behavior to only fetch one commit instead of all history
for all branches, which caused an uncaught fatal error in the scancode
action:
fatal: ambiguous argument 'origin/main..': unknown revision or path not
in the working tree.
The scancode action then completed successfully having not actually
checked anything.
Fix this by setting the checkout action fetch depth to 0, similar to
other workflows.
Signed-off-by: Maureen Helm <maureen.helm@analog.com>
As documentation is now built using one of our self-hosted runners,
have the GitHub action only run for the upstream repo, not for potential
forks.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Upgrade to v1.2.0, which comes with a bugfix and support for processing
PRs that have removed modifications to the manifest.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
looks like our docker image is way too big for the GH runners, so move
to own runners until we have a better solution.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
PR #63195 has managed to change code under test without
triggering those tests.
This change should remedy that by creating a new workflow,
based on twister_tests.yaml, that runs tests in
scripts/tests/build_helpers if build_helpers are modified.
Such a workflow should be easily extendable if we ever have more
non-Twister things to test in scripts/pylib.
Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
Run all bsim bluetooth controller tests also
on a nrf5340bsim_nrf5340_cpunet, as the controller
runs in a quite different mode.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Update the text so it points to useful parts of the documentation
regarding CI and contribution guidelines.
Also invite users to join Discord to ask for help.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Add a rebase step after checkout for the documentation build CI run.
This is in line with what pretty much all other workfloww already do,
and means that if a PR is opened on a broken tree and the breakage get
fixed, the PR run just have to be retried for the test to pass and we
don't have to ask the authors to rebase and lose any pending approvals.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Include CI runs to push and pull request against collab- branches so
that thay can be used for detecting CI breakages before trying to open
PRs against main.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
A recent fix in zephyrproject-rtos/action-first-interaction/pull/5 is
now making the bot's comments on PR be actual comments, not PR
"review comments".
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Let's also run the BabbleSim tests when either
the native simulator or the the include headers
are changed.
The include path was forgotten when creating the filter.
The nrf52_bsim was changed to use the native simulator
in 3a4bebacb1
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
In addition to the white-box testing and unit tests,
we would like to have some black-box testing for the
console commands of twister.
This serves as a Proof of Concept for future expansion.
Special dummy tests are made for blackbox testing.
Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
Add a scheduled entry to run_assignee to run the module assignment
function periodically, as well as a target to run the issue code when
issue labels are changed.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
The compile script was modified to fully parallelize
all bsim test images builds.
This speed up the build time, but as we are
building ~80 images, the average load on the system
will skyrocket to over 200.
For CI systems we are seeing in quite many cases,
the CI server loosing connection with the CI runner,
while this part of the job is run, and suspect it is
due to this load.
Nice the job down (by the default +10),
as this should alleviate this problem without slowing
down the job.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Zephyr scripts do not require documentation dependencies, so let's
move them from scripts/ to doc/.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Add a new CMake option to append options to SPHINXOPTS. This allows us
to easily extend default SPHINXOPTS. This patch also restores the "-j
auto" option in CI (now that we use a custom runner).
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Install the natsort package before running the west commands test
suites. The natsort package is required by twister, which is imported in
the runners, since c37deeb0c4.
Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
So that we see all the potential errors in CI and not just the first
and can assess how much work there is to do.
This was introduced for debuggin but gmarull has suggested keeping it
in.
Signed-off-by: Michael Jones <m.pricejones@gmail.com>
When PDF build fails, we want to see what cmaused the failure, so upload
the log for later analysis.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
As the bsim repo is disabled by default, west list bsim -f {sha}
fails.
Instead get the revision field which works.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This commit updates the twister workflow to run once per week on Sunday
instead of twice per week on Wednesday and Saturday because the
scheduled run results are not checked very often and once-per-week
should be sufficient for the purpose of catching broken tests.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Adding a stage to twister unit test workflow where tests for
pytest-twister-harness plugin are executed.
Signed-off-by: Maciej Perkowski <Maciej.Perkowski@nordicsemi.no>
Add a rebase on top of BASE_REF before the pytest run to make sure that
PRs that predates the test introduction runs on top of the current HEAD.
This prevents pytest from failing with error code 5 because no tests are
found.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Add a "Scripts tests" workflow, for now just run pytest against
"scripts/build", but keep the naming generic so this could be reused for
other tests under scripts that are not covered by the other workflows.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Check for TSC tag in addition to the DNM one, so that PR scheduled for
TSC discussion can't be merged by mistake.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
This commit updates the CI workflows to use the Zephyr SDK 0.16.1 for
building and testing Zephyr in the CI.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the CI image v0.26.4, in
order to pull in the Zephyr SDK 0.16.1 release.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Bump to v1.1.1-zephyr-3 version of the first-interaction GH action.
This fixes several issues:
- some contributors being improperly flagged as first-time contributors
- retry/throttling handling to address secondary API rate limit causing
action to sometimes fail
- first time contributor not being notified on their first merged PR
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This commit updates the CI workflows to use the `zephyrproject-rtos`
organisation-level AWS secrets instead of the repository-level secrets.
Using organisation-level secrets allows more centralised management of
the access keys used throughout the GitHub Actions CI infrastructure.
Note that the `AWS_*_ACCESS_KEY_ID` is now stored in plaintext as a
variable instead of a secret because it is equivalent to username and
needs to be identifiable for management and audit purposes.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
The Zephyr CI Docker image no longer contains the `awscli` Python
package due to dependency conflicts.
This commit updates the footprint tracking workflow, which uses the
CI Docker image, to manually install the `awscli` package into an
isolated virtual environment.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the footprint tracking workflow to run on all
repositories in the `zephyrproject-rtos` organisation to ensure that
it runs on other test repositories such as `zephyr-testing`.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
When the `paths` condition is used alongside the `tags` or `branches`
condition, both conditions must be satisified for the workflow to
trigger -- this resulted in the workflow not triggering on push to the
`main` branch when one of the files under the paths listed in the
`paths` condition was modified.
This commit adds the `branches` condition to the workflow so that any
push to the `main` and release branches, as well as release tags,
containing the changes to the files under the paths specified by the
`path` condition trigger this workflow.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
To ensure a reproducible enviroment while not needing
to update the docker images too often,
let's update on the fly the docker bsim installation to
whatever the Zephyr manifest points to.
Note that the update and rebuild is incremental,
so if the docker image already has the right version
the operation is very fast.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This commit updates the CI workflows to use the CI image v0.26.2, which
includes the west-based BabbleSim installation.
Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
In order to be able to comment on PR, the workflow requires a
GITHUB_TOKEN with appropriate write permissions, which are only
provided when running in the context of the base of the pull
request.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Adds the configuration file for a GitHub action that will greet first-time
contributor the first time they:
- open an issue
- open a PR
- get a PR of theirs merged
Fixes#56092.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This commit updates the documentation build workflow to pull in the
'bsim' west project (with its submanifest) so that the build process
does not fail due to a manifest import failure.
Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This commit combines bsim-networking and bsim-bluetooth workflows
and separates runs of networking or ble tests based on files changed.
Signed-off-by: Przemyslaw Bida <przemyslaw.bida@nordicsemi.no>
This commit updates the CI workflows to use the S3 cache action v1.2.0,
which is based on node.js 16 and @actions/core 1.10.0, in preparation
for the upcoming removal of the deprecated GitHub features.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the codecov-action v3,
which is based on node.js 16 and @actions/core 1.10.0, in preparation
for the upcoming removal of the deprecated GitHub features.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the check-valid-pr action
v0.14.0, which uses the up-to-date GitHub commands, in preparation for
the upcoming removal of the deprecated GitHub features.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the AWS
configure-aws-credentials action v2, which is based on node.js 16 and
@actions/core 1.10.0, in preparation for the upcoming removal of the
deprecated GitHub features.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the stale issue workflow to use the stale action
v8, which is based on node.js 16 and @actions/core 1.10.0, in
preparation for the upcoming removal of the deprecated GitHub features.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the
publish-unit-test-result-action v2, which uses the up-to-date GitHub
commands, in preparation for the upcoming removal of the deprecated
GitHub features.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the download-artifact
action v3, which is based on node.js 16 and @actions/core 1.10.0, in
preparation for the upcoming removal of the deprecated GitHub features.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the backport action to v2.0.3-3, which is based on
node.js 16 and @actions/core 1.10.0, in preparation for the upcoming
removal of the deprecated GitHub features.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the CI image v0.26.1, which
is based on Ubuntu 22.04 and and includes LLVM 16.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the GitHub Ubuntu 22.04
virtual environment for running jobs.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Splitting bsim tests workflows to be triggered separatley for networking
(thread/802.15.4) and bluetooth tests.
Signed-off-by: Przemyslaw Bida <przemyslaw.bida@nordicsemi.no>
This commit updates the pull request backport issue check workflow to
use the Ubuntu 22.04 virtual environment.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This workflow and tests do not cover just Bluetooth anymore
but also cover other networking areas.
Rename the workflow and artifacts for clarity.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
These scripts are common for bluetooth and other tests
Let's move them one level up.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Which includes the latest babblesim (v2.0.1)
which is required to enable 802.15.4
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This commit updates the pull request assigner workflow to use the
Ubuntu 22.04 virtual environment.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Parallel is already installed in the docker image.
Let's save a few seconds in each CI run.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Bsim won't be limited anymore to BT tests.
In preparation for adding more tests in network areas
swap the tests/bluetooth/bsim with tests/bsim/bluetooth
There is no other changes in this commit beyond that.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This commit updates the CI workflows to use the Zephyr SDK 0.16.0 for
building and testing Zephyr in the CI.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the CI image v0.25.0, in
order to pull in the Zephyr SDK 0.16.0 release.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Since the move to github workflows
e366d7948a
we lost the ability to run in CI in twister the bsim boards.
This means people cannot use the nrf52_bsim in normal twister
workflows even if it would work perfectly fine otherwise
(say as a stand alone test of the controller that does not
require an actual BT pair).
It also meant changes to the bsim board itself where not
tested with twister like for other boards, but relied solely
on the BT tests.
Enable this kind of tests again.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Quite a few applications in samples/bluetooth
are part of the bluetooth regression run in simulation.
Changes to them should also trigger this CI workflow.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
New LaTeX Docker image (Debian based) uses Python 3.11. On Debian
systems, this version does not allow to install packages to the system
environment using pip. Use a virtual environment instead.
Signed-off-by: Gerard Marull-Paretas <gerard@teslabs.com>
This commit separates each test by layer level.
Obviously the tests will run the whole stack, but they should be separated
by which component/layer they intend on testing.
Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
This way we will get unified data across the matrix and will not have
duplications when re-running a job.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
The release notes are in and west==1.0.0 is installable via pypi.
Move the doc build over to it and fix a typo while we are here.
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
The alpha for this release is up on pypi; start using it so we can
test out the doc build in CI.
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
This commit updates the CI workflows to use the CI image v0.24.11 that
includes BabbleSim v1.1.2, which improves simulation stability and
fixes the intermittent failures currently reported by the Bluetooth
test workflow.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the CI image 0.24.10, in
order to pull in a more recent version of BabbleSim (v1.1.1) and an
additional thrift-compiler dependency for the Apache Thrift module.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Move away from opensearch and switch to elasticsearch for reporting.
The results will be available at https://kibana.zephyrproject.io/
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This reverts commit 21eb27c5c0.
This change has been a source of much trouble and ends up preventing us
from tracking test results across tree. It uses the repo name as the
namespace, and that is not always the same and does not have to be
called 'zephyr', depending on where you are running and in which
environment.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
It looks like versions >= 1.9.2 have disappeared from the Sourceforge
website. Since they use GH releases since 1.9.6, the version we use,
let's just update download URL.
Ref. https://github.com/doxygen/doxygen/issues/9801
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Add a YAMLLint compliance check that uses the yamllint package to report
linting error on YAML files.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Fix all line-length errors detected by yamllint:
yamllint -f parsable -c .yamllint $( find -regex '.*\.y[a]*ml' ) | \
grep '(line-length)'
Using a limit is set to 100 columns, not touching the commandlines in
GitHub workflows (at least for now).
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Fix all comments-indentation errors detected by yamllint:
yamllint -f parsable -c .yamllint $( find -regex '.*\.y[a]*ml' ) | \
grep '(comments-indentation)'
This checks that the comment is aligned with the content.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>