Commit Graph

486 Commits

Author SHA1 Message Date
Carles Cufi 85d2202e43 action: manifest: Use the new Git tree checkout feature
Use the feature introduced in:
https://github.com/zephyrproject-rtos/action-manifest/pull/8

This requires a West workspace to be initialized, since it uses
Manifest.from_file().

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2023-09-12 06:15:10 -04:00
Lukasz Mrugala 91dd4fcfdc .github: workflows: Black box testing fix
This fix pulls West in black box testing.
Previously changes in West could break it.

Signed-off-by: Lukasz Mrugala <lukaszx.mrugala@intel.com>
2023-09-11 12:29:22 -04:00
Andrew McLachlan 990b421b09 ci: Run greeting workflow on zephyrproject-rtos/zephyr.
Only run first time contributor check on zephyrproject-rtos/zephyr.

Signed-off-by: Andrew McLachlan <andrew.mclachlan@analog.com>
2023-09-06 09:35:57 -04:00
Alberto Escolar Piedras 393db164e1 ci: bsim: Improve path triggers for bsim tests
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>
2023-09-04 13:00:52 -04:00
Henrik Brix Andersen 2b29364883 github: issue templates: remove hardware support template
Remove the Hardware Support request template. Hardware support requests
generally end up being stale and no one picks them up. This avoids giving
users false hope that simply opening a Hardware Support request will result
in someone implementing the requested support.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2023-08-31 11:04:09 +03:00
Lukasz Mrugala 4d467af7f4 scripts: tests: twister: Black box testing
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>
2023-08-28 15:57:06 +02:00
Fabio Baltieri 6728af6458 ci: assigner: fix closing if statement
Bash uses fi, not endif.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2023-08-25 10:10:31 +01:00
Fabio Baltieri abb8ede0bc ci: assigner: add module and issue support, enable issue
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>
2023-08-25 10:33:06 +02:00
Andreas Deininger 8f66f854c3 ci: Bump checkout action to latest version
Bump checkout action to latest version v3

Signed-off-by: Andreas Deininger <andreas@deininger.net>
2023-08-16 14:59:16 +02:00
Alberto Escolar Piedras b83a828825 ci: bsim workflow: nice down test images build
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>
2023-08-16 13:02:51 +02:00
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 c1e40bb3d5 templates: change template file namaes for proper sorting
prefix with numbers to get sorting based on usage. Most common files
issue types should come first, with bugs being at the top.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2023-06-08 07:32:45 -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