Commit Graph

675 Commits

Author SHA1 Message Date
Fabio Baltieri
dd1a5f5a86 github: hello_world_multiplatform: run on any script changes
Open up the hello_world_multiplatform filter to run on any PR changing
anything in scripts. This should catch twister regressions as well.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-12-16 18:24:43 +01:00
Mert Ekren
c96c143a9a ci: workflows: remove rebase-merge folder before rebase
With gitv2.26, git rebase uses "git merge" mechanism instead of "git
apply". This creates a rebase-merge folder in .git, in case of rebase
conflict. This caused problems in self hosted runners due to old
rebase-merge folder. This commit deletes this folder before git rebase
action.

Signed-off-by: Mert Ekren <mert.ekren@analog.com>
2024-12-16 15:55:59 +01:00
Alberto Escolar Piedras
46e87afc25 ci: bsim tests: Fix paths for triggers
These paths were not updated when we transitioned to hwmv2
which led to CI jobs not being triggered in some cases.
Let's fix it.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-12-12 16:20:02 +01:00
Jamie McCrae
3a6c4f5b80 Revert "ci: twister: add workaround until module test data is fixed [REVERTME]"
This reverts commit b8957692fc.

Signed-off-by: Jamie McCrae <jamie.mccrae@nordicsemi.no>
2024-12-05 19:58:30 -05:00
Anas Nashif
b8957692fc ci: twister: add workaround until module test data is fixed [REVERTME]
Workaround for CI to not fail on building mcuboot tests.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-12-04 22:25:54 -05:00
Pieter De Gendt
3bf519de38 ci: compliance: Rebase on the target branch before running compliance
Prior to running the compliance checks, we rebase the PR onto the target
branch to check the compliance state as if we were merged.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2024-11-27 06:57:52 -05:00
Pieter De Gendt
5d9a0cba9b ci: compliance: Install python packages from requirements
Instead of maintaining two lists, use the requirements file for
installing compliance dependencies.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2024-11-27 08:16:58 +01:00
Pieter De Gendt
f475f3c8cc ci: compliance: Exclude ClangFormat
Stop running ClangFormat in CI as it confuses (first time) contributors
more than it helps.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2024-11-26 14:44:29 +00:00
Anas Nashif
ba5330e2ac ci: twister: for correctness, rename DAILY -> WEEKLY
We run on a weekly basis, not daily.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-26 08:45:16 +01:00
Anas Nashif
088670d605 ci: twister: report filter suites in weekly run
For analysis purposes, report filtered in weekly run.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-26 08:45:16 +01:00
Anas Nashif
5fc66f67b9 ci: twister: capture branch when publishing results
This way we can filter by branches in the dashboard.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-22 13:01:24 -06:00
Anas Nashif
1c6066baea ci: twister: prep: add a more vebose name
Expand onn the workflow name

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-22 13:01:24 -06:00
Anas Nashif
aba2274fae ci: twister: publish only main branch jobs
This workflow is wrongly being triggered by pushed to branches.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-22 13:01:24 -06:00
Anas Nashif
1f17c761e5 ci: test_plan: call with --no-detailed-test-id
add --no-detailed-test-id to call of test_plan. Was missed in previous
commit.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-22 17:40:25 +01:00
Anas Nashif
c14b022bea ci: twister: add --no-detailed-test-id
Switch to short test identifier in reporting.
Part of a series of changes to improve reporting and remove duplication
and clutter when running twister.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-22 08:27:16 -05:00
Anas Nashif
c1b8cd7db1 ci: twister_prep: do not double check for event
We already do the check for the job.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-20 15:53:58 -05:00
Anas Nashif
5b51632103 ci: twister: fix setting of output for workflow_call
Fix setting of output variables of workflow_call.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-20 15:53:58 -05:00
Anas Nashif
0c88010d0d Reapply "ci: twister: use workflow_call for prep job"
This reverts commit fd4c7bbbc2.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-20 15:53:58 -05:00
Anas Nashif
dc14a212eb ci: twister: check event using correct context
Check for event using correct github context.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-20 15:53:58 -05:00
Mahesh Mahadevan
2894c765a2 github: Update security page for v4.0.0 release
Updates the GitHub security page with the current supported versions
after the v4.0.0 release.

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2024-11-20 08:23:14 -05:00
Anas Nashif
fd4c7bbbc2 Revert "ci: twister: use workflow_call for prep job"
This reverts commit ac08acafdd.

Pull requests not working as expected.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-19 19:49:21 -05:00
Anas Nashif
2f0fcdf81c ci: twister: do not fail if there are no artifacts
Do not fail if we can't download any artifacts, i.e. when job is
cancelled.

Only publish on push/schedule

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-19 19:49:21 -05:00
Pieter De Gendt
1be5c157d9 scripts: ci: check_compliance: Add python lint/format check
Add a compliance test using ruff, for both linting and formatting of
newly added python files.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2024-11-19 18:36:54 -05:00
Anas Nashif
ac08acafdd ci: twister: use workflow_call for prep job
Use workflow_call to allow for different type of nodes depending on
event.

On push, we do not need to use zephyr runners, GH runners are enough and
are much faster to deploy and start.

This resolves an issue where push jobs will have to be queued for a
longer time waiting for the prep step, once the prep step is done, we
will have to wait one more time in the queue for requested nodes.

This should speed up execution of push events in CI.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-19 17:48:11 -05:00
Anas Nashif
0a8b16693f ci: twister: split publishing results out of main workflow
Move publishing data to ES to a workflow_run step. This way we can
change the main workflow to use pull_request instead of
pull_request_target.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-19 17:48:11 -05:00
Anas Nashif
cfd5469dc1 ci: do not pull babblesim in twister test workflow
No need to pull babblesim and nrf_hw_models when doing twister testing.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-19 09:57:13 -05:00
Carles Cufi
a3cc532221 actions: manifest: check additional metadata in projects
See https://github.com/zephyrproject-rtos/action-manifest/pull/14.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2024-11-16 13:28:58 -05:00
Fabio Baltieri
f7ff83079f github: west_cmds: add missing anytree package
Add missing anytree package, runners started to fail on it:

../pylib/twister/twisterlib/runner.py:60: in <module>
    from anytree import Node, RenderTree
E   ModuleNotFoundError: No module named 'anytree'

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-11-14 09:51:06 -05:00
Anas Nashif
9f5ef47184 ci: twister: also report filtered instances
For statistical purposes and to improve over all coverage, report
filtered suites so we can see trends in elasticsearch and act on them.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-11-13 20:04:04 -05:00
Benjamin Cabé
dc2c13bebd doc: ci: Build documentation on board documentation changes
Adds glob expression triggering CI for *all* changes in boards'
documentation, not just those matching the "*.rst" pattern since there
can also be images being changed without any other change on RST files.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-11-08 11:40:58 -06:00
Stephanos Ioannidis
5c00d99f4b ci: Add '-specs' to ccache ignore option list
`-specs=` is an alternate form of `--specs=`, which is now used by the
Zephyr build system.

This commit adds `-specs=*` to the ccache ignore option list because, as
with `--specs=*`, ccache is unable to resolve the toolchain specs file path
and refuses to cache when this option is specified.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2024-11-06 11:26:32 +09:00
Stephanos Ioannidis
e1389fa2cf ci: doc-publish-pr: Improve workflow security
Improve workflow security.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2024-10-29 21:48:50 +09:00
Carles Cufi
d73fda80a6 ci: Switch to CI image v0.27.4
This commit updates the CI workflows to use the CI image v0.27.4, which
includes nrf-regtool v7.0.0.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2024-10-27 16:20:25 +01:00
Dmitrii Golovanov
e0b748e1ab ci: footprint: extend data transform on all applications
In addition to 'footprints' application data, execute transformation
step for all other applications listed in `plan.txt` to upload their
memory footprint reports to the ELK storage as well.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-10-25 14:08:18 +02:00
Henrik Brix Andersen
cd543887f4 ci: build samples/cpp/hello_world as part of the multiplatform test
Build the C++ version of the Hello, World sample as part of the
multiplatform (build) test in CI.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2024-10-23 16:54:07 +02:00
Stephanos Ioannidis
974c7d4229 ci: Switch to CI image v0.27.3
This commit updates the CI workflows to use the CI image v0.27.3, which
includes Zephyr SDK 0.17.0.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2024-10-22 19:04:37 -04:00
Dmitrii Golovanov
3d78524186 ci: footprint: Fix missing globstar
Add missing globstar wildcard option.

Set bash as default shell for the workflow.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-10-22 18:27:28 -04:00
Dmitrii Golovanov
b758e205b2 ci: footprint: Fix shopt not found
Use bash explicitly to have shopt available.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-10-22 14:16:03 +02:00
Benjamin Cabé
8f4ee9bb81 ci: doc: don't fail publish job if there's no artifact to publish
If doc build has not generated any artifact, gracefully skip
publication.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-10-17 15:37:27 -04:00
Dmitrii Golovanov
e528d53a7a ci: footprint: Add data transform and upload to ELK
Extend `footprint-tracking` CI workflow with two more steps:

 * pack Memory Footprint data produced by `track.py` script
   into Twister JSON footprint reports (`twister-footprint.json).

 * upload Twister JSON footprint reports into ElasticSearch storage.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2024-10-17 10:47:01 -04:00
Pieter De Gendt
d66d3170cf ci: github: Run CI for python 3.13
Python 3.13 has been released, add it to the CI matrix for python
workflows.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2024-10-15 13:52:49 +02:00
Alberto Escolar Piedras
9451424677 ci: bsim tests: Also trigger on MbedTLS module changes
Trigger bsim tests also on changes to the MbedTLS module code in Zephyr
side. To avoid possible regressions in bsim tests when this code is
changed getting into main.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-10-09 13:45:41 +02:00
David Brown
c3438903d2 github: workflows: Add cargo support to twister
Add cargo's bin to the path, and print out the versioning of the tool to
make it easy to ensure the right version has been installed.

Signed-off-by: David Brown <david.brown@linaro.org>
2024-09-20 15:25:05 -05:00
Benjamin Cabé
d8997b4dc3 ci: github: git clean after rebase
After rebasing the PR on main, the local copy of the repository may
still contain untracked directories and files (for example, the commits
from the pull request are "git mv"ing files out of directories that are
then left empty). Add a git clean so that we run CI in conditions
that are as close as possible to a fresh clone.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-09-19 15:13:49 +02:00
Benjamin Cabé
c394234305 ci: doc: build the documentation using GitHub-hosted runners
There is no reason to use our custom runners for docs build
as it's equally fast on GH default runners and allows doc CI
to be expedited more quickly even when our build farm is
busy.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-09-17 09:05:22 -05:00
Benjamin Cabé
fd4f3ce246 scripts: compliance: add sphinx-lint linter
ReStructuredText can sometimes be tricky to get right, especially for
folks that might be more familiar with Markdown.

This adds a Sphinx/RST linter to the compliance check script to help
catch common issues that can easily go unnoticed and cause rendering
issues.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-09-13 11:43:04 -05:00
Fabio Baltieri
df77d10597 ci: drop unused python exclusions
Drop some exclusions for python 3.6, this version is not tested in the
first place anyway so these are redundant.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2024-09-12 12:59:07 -04:00
Alberto Escolar Piedras
12ea90c8dc ci: bsim tests: Also trigger on common nordic DT changes
The bsim boards, just like the real ones, use the common
nordic DT definitions, but this were not triggering CI.
Some issues got in main due to this. Let's be sure to trigger
this workflow also when the releavnt DT files are changed.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2024-09-12 14:47:42 +02:00
Anas Nashif
a0411ad2e1 ci: use latest docker image: v0.26.14
new docker with an updated renode version and rust toolchains.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2024-08-29 18:03:18 +02:00
Benjamin Cabé
346031d060 ci: github: bump tj-actions/changed-files version
Bump tj-actions/changed-files to latest (v45).

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-08-28 06:50:10 -04:00