Commit Graph

750 Commits

Author SHA1 Message Date
Alberto Escolar Piedras
09137d16ac ci: bsim-tests: Add missing path to trigger BT tests
Also trigger the bluetooth tests if tests/bluetooth/common/testlib/
is changed.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2025-04-21 12:42:43 +02:00
Maciej Perkowski
2f9faa0a93 ci: workflows: Align used host
Ubuntu-24.04 is the version to be used as default in all
gh workflows

Signed-off-by: Maciej Perkowski <maciej.perkowski@nordicsemi.no>
2025-04-17 17:24:39 +02:00
Okan Sahin
bacb99da6d ci: doc: github: Require update for python version
Require latest python version for Setup Zephyr Project
step.

Signed-off-by: Okan Sahin <Okan.Sahin@analog.com>
2025-04-14 23:07:04 +02:00
Anas Nashif
130f2ce641 ci: twister: set number of jobs to use
We want to control the number of jobs we run in parallel. Detection on
some runners can be wrong.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-05 22:30:26 +09:00
Benjamin Cabé
207a048811 doc: requirements: switch to uv compile
Use uv compile to generate requirements.txt from requirements.in
This works better to capture dependencies that work for multiple python
versions, not just the one that was used to generate the
requirements.txt file.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-04-05 11:02:21 +02:00
Lukasz Mrugala
cf87f97824 ci: Run all Blackbox tests
We've previously restricted Blackbox test
runs to just one test file - test_output.py.
That was a mistake.

This commit makes the relevant workflow run
all of the blackbox test files again.

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2025-04-03 11:06:44 +02:00
Anas Nashif
f61c94bb1b ci: codecov: remove bsim step from workflow
This is not needed for this specific workflow. We do not do anything
with bsim here.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-01 16:26:22 +02:00
Anas Nashif
4d2ddf06c1 ci: codecov: install pinned python environment
Need gcovr for coverage generation.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-04-01 16:26:22 +02:00
Benjamin Cabé
6f4bb7ef62 ci: github: bump the actions-deps group across 1 directory with 8 updates
Bumps the actions-deps group with 8 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [actions/checkout](https://github.com/actions/checkout) | `4.1.7` | `4.2.2` |
| [actions/setup-python](https://github.com/actions/setup-python) | `5.4.0` | `5.5.0` |
| [dawidd6/action-download-artifact](https://github.com/dawidd6/action-download-artifact) | `8` | `9` |
| [tj-actions/changed-files](https://github.com/tj-actions/changed-files) | `46.0.1` | `46.0.3` |
| [actions/upload-artifact](https://github.com/actions/upload-artifact) | `4.3.5` | `4.6.2` |
| [actions/download-artifact](https://github.com/actions/download-artifact) | `4.1.9` | `4.2.1` |
| [github/codeql-action](https://github.com/github/codeql-action) | `3.28.11` | `3.28.13` |
| [zgosalvez/github-actions-ensure-sha-pinned-actions](https://github.com/zgosalvez/github-actions-ensure-sha-pinned-actions) | `3.0.22` | `3.0.23` |

Updates `actions/checkout` from 4.1.7 to 4.2.2
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v4.1.7...11bd71901bbe5b1630ceea73d27597364c9af683)

Updates `actions/setup-python` from 5.4.0 to 5.5.0
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](42375524e2...8d9ed9ac5c)

Updates `dawidd6/action-download-artifact` from 8 to 9
- [Release notes](https://github.com/dawidd6/action-download-artifact/releases)
- [Commits](20319c5641...07ab29fd4a)

Updates `tj-actions/changed-files` from 46.0.1 to 46.0.3
- [Release notes](https://github.com/tj-actions/changed-files/releases)
- [Changelog](https://github.com/tj-actions/changed-files/blob/main/HISTORY.md)
- [Commits](2f7c5bfce2...823fcebdb3)

Updates `actions/upload-artifact` from 4.3.5 to 4.6.2
- [Release notes](https://github.com/actions/upload-artifact/releases)
- [Commits](https://github.com/actions/upload-artifact/compare/v4.3.5...ea165f8d65b6e75b540449e92b4886f43607fa02)

Updates `actions/download-artifact` from 4.1.9 to 4.2.1
- [Release notes](https://github.com/actions/download-artifact/releases)
- [Commits](cc20338598...95815c38cf)

Updates `github/codeql-action` from 3.28.11 to 3.28.13
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
- [Commits](https://github.com/github/codeql-action/compare/v3.28.11...1b549b9259bda1cb5ddde3b41741a82a2d15a841)

Updates `zgosalvez/github-actions-ensure-sha-pinned-actions` from 3.0.22
to 3.0.23
- [Release notes](https://github.com/zgosalvez/github-actions-ensure-sha-pinned-actions/releases)
- [Commits](25ed13d062...4830be28ce)

---

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-31 20:16:41 -04:00
Benjamin Cabé
454a1c8844 ci: bsim-tests: Exclude .rst files from path patterns
Updated the bsim-tests workflow to exclude all .rst files.

As per GitHub docs:

The order that you define paths patterns matters:

A matching negative pattern (prefixed with !) after a positive match
will exclude the path.
A matching positive pattern after a negative match will include the path
again.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-31 22:00:55 +02:00
Benjamin Cabé
8e90ba4af9 ci: github: bump action-first-interaction to v1.1.1+zephyr.6
No functional change. This is only so as to adopt a versioning scheme
where the Zephyr version of the action is considered more recent than
the upstream version (here, v1.1.1) by means of using dots instead of
dashes.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-31 22:00:46 +02:00
Pieter De Gendt
6f6a687934 ci: compliance: Exclude the Identity check for dependabot
The identity check for dependabot will always fail, skip it for PRs
created by dependabot.

Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
2025-03-31 14:32:25 +02:00
Anas Nashif
06f42f6bfa twister: Move prep stage to a github runner
Speed things up by using GH runners, we do not need the power of our own
runners to create the test plan. This also simplifies the workflow
considerably.

PRs now will get queued immediately, ie. no need to wait for a Zephyr
hosted runner to create the plan and then wait again for another round
to get more runners for execution.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-31 11:29:31 +02:00
Anas Nashif
2faf62c35c ci: overhaul and pin dependencies on twister_tests_blackbox
Pin dependencies on the workflow and move it from using docker to the
zephyr setup action.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-29 07:44:46 -04:00
Anas Nashif
11ece85d1b ci: workflows: pin python dependencies
Pin python dependencies to hashes and cleanup/unify python setup steps in
various workflows.

We now have one dependency file containing all requirements for github
actions that is managed centrally with hashes. No direct pip installs
are needed in workflow files and everything shall go via the
requirements file.

Pinning to specific version and hashes helps with preventing supply
chain attacks.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-29 07:44:46 -04:00
Anas Nashif
7f62d193fc ci: use gh managed tokens in workflows
Do not use custom tokens, rely on GH provided and managed tokens.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-26 00:46:32 +01:00
Anas Nashif
f812de81e6 ci: workflows: rename do_not_merge workflow
Add more functionality to the workflow, it is not only about not-merging
anymore.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-26 00:46:20 +01:00
Anas Nashif
7b1e610cc7 ci: move PR body check to a different workflow
Move PR body check to a workflow that monitors editing of PRs.
Avoids rerunnin compliance check and other heavy weights workflows on
just an edit of the PR body.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-26 00:46:20 +01:00
Anas Nashif
66fa04962f ci: twister: convert to pull_request
Convert twister workflow to use pull_request.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-26 00:46:20 +01:00
Benjamin Cabé
9b60782ac8 ci: github: Add workflow to ensure all GH actions are pinned
This commit introduces a new workflow that checks for SHA-pinned GitHub
Actions on pull requests.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-25 22:16:32 +01:00
Anas Nashif
be18415fc3 ci: codeql: enable on PRs
Enable CodeQL on PRs to catch issues before they are merged.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-24 12:17:19 +01:00
Anas Nashif
961593d152 Revert "ci: twister: move weekly to sunday [REVERT ME]"
This reverts commit c99325a8a5.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-23 10:24:07 -04:00
Anas Nashif
c99325a8a5 ci: twister: move weekly to sunday [REVERT ME]
Previous job failed, let's give it another try.

Should be reverted once workflow has started.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-23 10:15:49 -04:00
Anas Nashif
3b6fe8677b ci: Add codeql workflow for python, actions, js
Integrate codeql code scanning from github to do basic static code
analysis on python, actions, js.

c/cpp to be added later.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-21 14:39:50 -04:00
Benjamin Cabé
911d803291 doc: ci: github: Require hashes during pip install
require hashes in doc ci workflow

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-21 14:39:29 -04:00
Benjamin Cabé
d794fe42f9 ci: doc: github: drop unused env variable
We get West from the action-zephyr-setup action

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-21 14:39:29 -04:00
Benjamin Cabé
df2bdb9a6f ci: doc: github: Build PDF from vanilla ubuntu
Moved away from a texlive docker container to a vanilla ubuntu runner
so that we can better track the actual dependencies a user needs to
build the PDF rather than relying on the gigabytes of random stuff
that the texlive docker container pulls in.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-21 14:39:29 -04:00
Benjamin Cabé
0bc512fa84 ci: github: update dependabot.yml to manage documentation dependencies
Added a new configuration for pip dependencies in the doc/
Groups all updates into one PR.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-21 14:39:29 -04:00
Benjamin Cabé
d161e29a12 ci: doc: update documentation dependencies to include coverxygen
Removed coverxygen installation from the CI workflow and added it to the
requirements.txt/.in files and make it easier for anyone to potentially
use it locally.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-21 14:39:29 -04:00
Benjamin Cabé
1185942575 ci: doc: github: check Doxygen MD5 checksum
Add a check that we're installing a legit Doxygen binary

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-21 14:39:29 -04:00
Benjamin Cabé
c9a149349a ci: Update GitHub Actions workflows to follow principle of least privilege
Default to `permissions: read-all` in all workflows and then add
additional permissions as needed at the job level

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 18:53:52 -04:00
Benjamin Cabé
f254b5775a ci: doc: do not prevent running doc CI in forks
Building docs just works on vanilla GH runner so it can be convenient
to not prevent the workflow to run on forks.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 18:50:30 -04:00
Benjamin Cabé
e82ab80574 doc: do not trigger doc-build on PR touching tests/
There is no need to trigger a doc build when tests are being
changed.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 18:50:30 -04:00
Benjamin Cabé
8ce24da0cf ci: doc: bump and pin tj-actions/changed-files action
Ensure we run the latest version of this action (and align with what is
already used for bsim-tests)

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 18:50:30 -04:00
Benjamin Cabé
2eec91d527 ci: doc: pin actions/checkout GH action
Following the revert in the previous commit, pin the actions/checkout
action to align with what is now the accepted practice in the project.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 18:50:30 -04:00
Benjamin Cabé
1baaaafabd Revert "ci: doc-build: do not check for changed files"
This reverts commit b80526658c
and restores the original use of looking for changed files
before triggering a documentation build.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 18:50:30 -04:00
Anas Nashif
d13ccfd74c ci: clang: add workflow on push
Change workflow to work on push events.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-19 08:55:43 -04:00
Anas Nashif
ed222a9f1f Revert "ci: drop clang workflow, use main twister flow instead"
This reverts commit ecaa30329e.

Restore as a push workflow.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-19 08:55:43 -04:00
Benjamin Cabé
d5b2fcffa5 ci: scorecard: bump actions to latest as per dependabot
Apply dependabot suggested updates to the `scorecard` workflow to pull
latest versions of the actions.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 08:53:00 -04:00
Benjamin Cabé
078ac84db0 ci: pin "actions/" GitHub Actions to SHAs
This commit follows up on e808ccfxy and completes the pinning of *all*
GitHub Actions to SHAs, including GitHub-owned `actions/*` actions.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-19 08:53:00 -04:00
Anas Nashif
ddcb8611ed ci: twister: use ci specific test configuration
Use a CI specific test configuration that forces samples to be built in
integration mode.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-19 08:51:50 -04:00
Jan Gałda
4b622a256e ci: Use Ubuntu 24 in GH actions
Ubuntu 20.04 will be deprecated soon

Signed-off-by: Jan Gałda <jan.galda@nordicsemi.no>
2025-03-17 21:02:38 -04:00
Benjamin Cabé
e808ccf013 ci: pin GitHub Actions to SHAs
This commit updates all GitHub Actions workflows to use specific
SHAs for the actions when they're not GitHub owned (`actions/*`)
instead of using tag-based versioning since tags are mutable.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-03-17 20:58:39 -04:00
Flavio Ceolin
7431e52f1d github: templates/ext: Add security section
Add a security section in the external source code issue template
requesting information about known vulnerabilities and cryptographic
usage.

Signed-off-by: Flavio Ceolin <flavio@hubblenetwork.com>
2025-03-17 07:05:56 +01:00
Anas Nashif
b80526658c ci: doc-build: do not check for changed files
Remove check for changed files for now until we have a better way to do
that without the 3rd party action.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2025-03-15 11:39:28 -04:00
Fabio Baltieri
0bf3c9bc93 github: Update security page for v4.1.0 release
Updates the GitHub security page with the current supported versions
after the v4.1.0 release.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2025-03-14 14:40:44 +01:00
Benjamin Cabé
5a2e6124a4 doc: ci: reduce documentation build job count
Reduce the number of parallel jobs for documentation build since we use
GH-hosted runner with only 4 vCPUs and 16GiB of RAM.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-02-21 18:03:37 +00:00
Benjamin Cabé
4260bd0df3 doc: ci: use ubuntu-24.04 runner
Make CI run on latest Ubuntu LTS so that default Python version
is effectively 3.12.
This allows to build against latest Sphinx 8.2 release, as it
dropped support for Python 3.10.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-02-21 15:13:20 +00:00
Benjamin Cabé
b6922c83a8 ci: doc: add action-zephyr-setup
Setup a fully working Zephyr workspace so that documentation steps that
require e.g. building Zephyr apps have the ability to do so.
The "turbo" builds running on pull requests get a minimal setup, with
no toolchain being installed.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-02-20 15:08:50 +00:00
Benjamin Cabé
43013e4899 ci: twister: upload junit.xml artifact
The "raw" junit.xml is a useful artifact to make available to developers
as it can be ingested by various tools to help dig into failures, look
at evolution of test results over time, etc.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-02-17 21:03:01 +01:00