Commit Graph

428 Commits

Author SHA1 Message Date
Gerard Marull-Paretas 7f9215da0e doc: move requirements to doc/
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>
2023-07-12 09:13:49 -04:00
Gerard Marull-Paretas 2c89bf5798 doc: add cmake SPHINXOPTS_EXTRA option
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>
2023-07-12 09:13:49 -04:00
Gerard Marull-Paretas a211469734 ci: doc-build: use zephyr-runner-linux-x64-4xlarge
This should allow us to observe faster build times when using
parallelization.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2023-07-12 09:13:49 -04:00
Henrik Brix Andersen 2a00b9e505 ci: github: workflows: west_cmds: install natsort package
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>
2023-07-07 09:19:02 +02:00
Michael Jones 343f60c631 doc: Add '--keep-going' flag to sphinx-build
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>
2023-07-03 10:05:52 +00:00
Anas Nashif ae114855f9 ci: doc-build: use customer runner
Apparently the PDF build needs more resources, otherwise we end up
aborting the build too early.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-06-20 16:49:07 +02:00
Anas Nashif 294e0ddee7 ci: doc-build: set shell as bash
Specify the shell variant being used in the workflow step.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-06-20 16:49:07 +02:00
Anas Nashif e3f0d402f9 ci: doc: upload build log for debugging
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>
2023-06-20 16:49:07 +02:00
Alberto Escolar Piedras 9af9a812b6 CI: bsim workflow: Fix getting bsim revision
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>
2023-06-08 11:49:17 -04:00
Alberto Escolar Piedras 1c165296e8 Revert "ci: doc-build: Pull 'bsim' west project"
This reverts commit 00130b72ce.

Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
2023-06-08 11:49:17 -04:00
Anas Nashif 135f5376c1 ci: workflows: create cache directory for ccache
Create cache directory before moving ccache.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-06-06 11:38:20 -04:00
Anas Nashif 1ebf0fdedb ci: Fix setup of ccache in twister workflow
Path for cache directory has changed, adapt workflow accordingly.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-06-06 09:39:11 -04:00
Stephanos Ioannidis 064d9f4dd8 ci: twister: Run on schedule once per week on Sunday
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>
2023-05-31 10:00:31 -04:00
Maciej Perkowski dc14bdd54f ci: twister: add unit tests for pytest plugin
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>
2023-05-26 13:52:15 -04:00
Fabio Baltieri dd8a65c03c ci: scripts_test: rebase before running tests
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>
2023-05-26 20:12:58 +09:00
Fabio Baltieri c1c06207a6 ci: add a workflow for script unit tests
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>
2023-05-25 15:40:07 +02:00
Fabio Baltieri 7039f8ce9c ci: do_not_merge: check for TSC tag as well
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>
2023-05-16 14:57:51 -04:00
Stephanos Ioannidis 90828ae9d4 ci: Use Zephyr SDK 0.16.1
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>
2023-05-16 01:50:00 +09:00
Stephanos Ioannidis b1588dce60 ci: Switch to CI image v0.26.4
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>
2023-05-16 01:50:00 +09:00
Benjamin Cabé 909080a7a5 ci: bump zephyrproject-rtos/action-first-interaction version
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>
2023-05-12 21:52:55 +09:00
Stephanos Ioannidis 8233f8ef91 ci: Use organisation-level AWS secrets
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>
2023-05-12 02:44:13 +09:00
Stephanos Ioannidis a466c3d661 ci: footprint-tracking: Install awscli package from workflow
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>
2023-05-11 21:53:11 +09:00
Stephanos Ioannidis 21d7ffb442 ci: footprint-tracking: Filter by organisation instead of repository
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>
2023-05-11 21:53:11 +09:00
Stephanos Ioannidis bca4a53dd7 ci: footprint-tracking: Specify branch trigger conditions
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>
2023-05-11 21:53:11 +09:00
Alberto Escolar Piedras 933d338c97 ci: bsim workflow: Update bsim to version pointed by manifest
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>
2023-05-04 19:51:20 +09:00
Stephanos Ioannidis 7f3326ad5d ci: Use CI Docker image v0.26.2
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>
2023-04-29 16:13:40 -04:00
Benjamin Cabé 8e305b3840 ci: Run greeting workflow on pull_request_target
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>
2023-04-27 17:37:47 +09:00
Benjamin Cabé a3ce0b0f7e github: add GitHub action to greet first time contributors
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>
2023-04-25 10:16:50 -07:00
Stephanos Ioannidis 00130b72ce ci: doc-build: Pull 'bsim' west project
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>
2023-04-20 15:47:25 +02:00
Przemyslaw Bida ee7f2af1be tests bsim/net: Refactor bsim workflows.
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>
2023-04-20 20:46:19 +09:00
Stephanos Ioannidis 81872eb701 ci: Use zephyrproject-rtos/action-s3-cache@v1.2.0
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>
2023-04-16 15:32:16 +09:00
Stephanos Ioannidis a982355f0a ci: codecov: Use codecov/codecov-action@v3
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>
2023-04-16 15:10:29 +09:00
Stephanos Ioannidis 7fe5c53b54 ci: Use carpentries/actions/check-valid-pr@v0.14.0
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>
2023-04-16 15:10:15 +09:00
Stephanos Ioannidis 9cf94c3602 ci: Use aws-actions/configure-aws-credentials@v2
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>
2023-04-16 15:09:53 +09:00
Stephanos Ioannidis f03190a2e1 ci: stale_issue: Use actions/stale@v8
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>
2023-04-16 15:08:16 +09:00
Stephanos Ioannidis 000e88fa9a ci: Use EnricoMi/publish-unit-test-result-action@v2
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>
2023-04-16 15:07:43 +09:00
Stephanos Ioannidis 494bb013cc ci: Use actions/download-artifact@v3
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>
2023-04-16 15:06:15 +09:00
Stephanos Ioannidis 260d054092 ci: backport: Update backport action to v2.0.3-3
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>
2023-04-16 14:23:56 +09:00
Stephanos Ioannidis 76078ea63c ci: clang: Use LLVM/Clang 16
This commit updates the Clang workflow to build tests using
LLVM/Clang 16.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2023-04-14 02:39:47 +09:00
Stephanos Ioannidis 4691359596 ci: Switch to CI image v0.26.1
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>
2023-04-14 02:39:47 +09:00
Stephanos Ioannidis b1e4116d40 ci: Use Ubuntu 22.04
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>
2023-04-14 02:39:47 +09:00
Przemyslaw Bida 32c566afa7 tests bsim/net: Separate bsim networking and bluetooth tests.
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>
2023-04-12 22:42:03 +09:00
Stephanos Ioannidis cadd6e6fa4 ci: backport_issue_check: Use ubuntu-22.04 virtual environment
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>
2023-03-22 02:49:03 +09:00
Alberto Escolar Piedras d44e36d438 ci: bluetooth worflow: Rename to Bsim
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>
2023-03-21 23:34:52 +09:00
Alberto Escolar Piedras f2d9b74da1 tests bsim: Move common scripts one level up
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>
2023-03-20 14:02:50 +00:00
Alberto Escolar Piedras 758e58a1b6 ci: Switch to CI image v0.25.1
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>
2023-03-20 21:17:44 +09:00
Stephanos Ioannidis 44a8b70ccc ci: manifest: Use ubuntu-22.04 virtual environment
This commit updates the manifest workflow to use the Ubuntu 22.04
virtual environment.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2023-03-19 03:53:49 +09:00
Stephanos Ioannidis e701ec5efc ci: assigner: Use ubuntu-22.04 virtual environment
This commit updates the pull request assigner workflow to use the
Ubuntu 22.04 virtual environment.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2023-03-19 03:53:49 +09:00
Alberto Escolar Piedras d21559d239 ci: bluetooth worflow: Do not install parallel
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>
2023-03-18 06:07:05 +09:00
Alberto Escolar Piedras f27c0b4905 tests bsim: Change folder structure
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>
2023-03-17 19:59:50 +01:00