Commit Graph

289 Commits

Author SHA1 Message Date
Stephanos Ioannidis 339982f315 ci: bug_snapshot: Fix repository name resolution
`github.event.repository.name` is not available for the workflow runs
triggered by the `schedule` event.

This commit updates the workflow to use the repository name extracted
from the `GITHUB_REPOSITORY` environment variable, which is always
available.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-08-12 15:15:49 -04:00
Stephanos Ioannidis b4f3922c35 ci: bug_snapshot: Restrict to zephyrproject-rtos organisation
This commit restricts the bug snapshot workflow to the
`zephyrproject-rtos` organisation because it requires access to the
project internal infrastructure and cannot be reused downstream.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-08-12 15:15:49 -04:00
Stephanos Ioannidis 5a7bd7fac3 ci: twister: Include module test results in report
This commit modifies the twister workflow to include the module test
results in the unit test report.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-08-12 08:44:18 -05:00
Anas Nashif 4e854f7a09 ci: run bug snapshot daily
Store bug stats on a daily basis and keep original workflow behavior
triggered manually in place. Daily snapshots will be stored under daily/
folder and separate from manual snapshots.

The daily snapshots will be used for more granular analytics of github
issues over time.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2022-08-10 11:59:55 +02:00
Henri Xavier b187477fe7 scripts: Upgrade to junitparser v2+
There is a breaking change in Junitparser 'TestCase.result' between
v1.x and v2.x.

Update check_compliance.py minimally to take into account this change.

This avoids relying on an outdated package.

Signed-off-by: Henri Xavier <datacomos@huawei.com>
2022-08-03 14:04:36 -04:00
Fabio Baltieri a5dfd6bd64 ci: doc-build: bump timeout up to 45m
Give documentation a bit more time to build, seems like we are hitting
the current 30 minutes limit.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2022-07-20 09:41:32 -05:00
Christopher Friedt aa4e437573 ci: backports: check if a backport PR has a valid issue
This is an automated check for the Backports project to
require one or more `Fixes #<issue>` items in the body
of the pull request.

Fixes #46164

Signed-off-by: Christopher Friedt <cfriedt@fb.com>
2022-07-18 20:09:44 +09:00
Stephanos Ioannidis 55c073297c ci: twister: Use zephyrproject-rtos/action-s3-cache
This commit updates the Twister workflow to use the 'action-s3-cache'
action from the zephyrproject-rtos organisation.

It also updates the action reference such that it uses a specific
version of the action instead of the latest master.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-07-15 01:05:23 +09:00
Stephanos Ioannidis a18e211e9c ci: codecov: Use zephyrproject-rtos/action-s3-cache
This commit updates the Codecov workflow to use the 'action-s3-cache'
action from the zephyrproject-rtos organisation.

It also updates the action reference such that it uses a specific
version of the action instead of the latest master.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-07-15 01:05:23 +09:00
Stephanos Ioannidis 77a902efb6 ci: clang: Use zephyrproject-rtos/action-s3-cache
This commit updates the Clang workflow to use the 'action-s3-cache'
action from the zephyrproject-rtos organisation.

It also updates the action reference such that it uses a specific
version of the action instead of the latest master.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-07-15 01:05:23 +09:00
Anas Nashif 9437e6d963 twister: fix twister testsuite
Make testsuite work again.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2022-07-05 12:06:27 -04:00
Carles Cufi f1d55bedff actions: manifest: Update SHA
Update the revision of the manifest SHA to include the updates.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2022-07-01 20:33:36 +09:00
Carles Cufi 1f8df5b858 gh: ext-source: Fix typo
Spell "maintaining" correctly.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2022-06-30 17:01:58 -04:00
Carles Cufi 97720bee1f gh: issue templates: Maintainershp section in ext-source
Add a maintainership section in the ext-source template, forcing future
contributors to identify one or more maintainers.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2022-06-28 11:08:56 +02:00
Carles Cufi 0eb2207ca2 gh: issue templates: Fix formatting of ext-source
Fix the heading level of the Dependencies section so that it matches the
rest of them.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2022-06-28 11:08:56 +02:00
Stephanos Ioannidis 1c8bdb8d73 ci: assigner: Skip assignment for draft pull requests
This commit updates the pull request assigner workflow to skip the
reviewers, assignee and labels assignment for the pull requests that
are marked as draft.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-06-09 22:19:06 +09:00
Stephanos Ioannidis 5dd359cc51 ci: Remove pull request labeler workflow
This commit removes the "Pull Request Labeler" workflow because the
newly added "Pull Request Assigner" workflow takes care of assigning
the pull request labels.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-06-08 11:56:31 -04:00
Stephanos Ioannidis 37f109a056 ci: Add pull request assigner workflow
This commit adds the "Pull Request Assigner" workflow that
automatically assigns the reviewers, assignee and labels for a pull
request.

Note that this workflow runs on the `pull_request_target` event in the
context of the base branch using the `MAINTAINERS.yml` from the base
branch.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-06-08 11:56:31 -04:00
Stephanos Ioannidis c534ae2947 ci: Run twister with forced color output
The GitHub Actions runner redirects the stdout and stderr console
outputs and, now that twister properly invokes the Colorama module
initialisation function, the color output is disabled when running the
twister in the CI.

This commit adds the `--force-color` option when invoking the twister
so that the ANSI color escape sequences are output even when the output
is redirected by the GitHub Actions runner (note that the web console
properly displays the color escape sequences).

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-05-25 12:48:31 +09:00
Martí Bolívar 54948e4108 .github: add workflows/bug_snapshot.yaml
This creates a new GitHub workflow that snapshots open bugs in a
compressed format that is convenient to extract for later analysis in
a Python script, using scripts/make_bugs_pickle.py.

The workflow is only run on demand. This allows us to run it during
the weekly release readiness meeting, right after we have finished the
initial bug triage for the week. That ensures that results are as
fresh and relevant as possible.

The resulting file is uploaded to S3; with the goal of enabling later
tracking and analysis.

Getting the analysis scripts themselves merged into Zephyr is left for
future work. This commit just allows us to get the data.

Co-authored-by: Stephanos Ioannidis <root@stephanos.io>
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-05-24 18:48:03 +02:00
Stephanos Ioannidis e09f78a414 ci: doc-publish: Do not run for pull requests
GitHub Actions may trigger the `workflow_run` event type when the
pull request source branch name matches one of the branches specified
under `branches:`.

This commit updates the documentation publish workflow to skip when the
preceding event type is `pull_request`, in order to prevent pull
request documentation from being uploaded as main documentation.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-05-20 23:26:14 +09:00
Stephanos Ioannidis 968d01732c ci: Update to Zephyr SDK 0.14.2
This commit updates the CI workflows to use the Zephyr SDK 0.14.2 for
building and testing Zephyr in the CI.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-05-19 11:26:06 -07:00
Stephanos Ioannidis 702677ebee ci: Switch to CI image 0.23.3
This commit updates the CI workflows to use the CI image 0.23.3, in
order to pull in the Zephyr SDK 0.14.2 and other minor enhancements
and bug fixes detailed in the docker-image release notes.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-05-19 11:26:06 -07:00
Gerard Marull-Paretas 9e323f1293 ci: doc-build: embed doc preview link to GH summary
Github summary is rendered using GH markdown engine, so hopefully
documentation preview link will be clickable. This change should improve
user experience, as one had to manually select and copy+paste the URL.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-05-18 02:01:54 +09:00
Anas Nashif 367b962c28 ci: twister generates testplan.json
use json testplan, not CSV. Twister has migrated away from CSV.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2022-05-13 15:53:04 -04:00
Anas Nashif f089f964fd twister: update ci options for twister
Now that we have partially oerhauled twister in the tree, modify actions
with new options:
- not reporting filtered tests is now default
- output is json, not csv

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2022-05-13 12:57:37 -04:00
Anas Nashif bb6f94c5a1 Revert "ci: run twister with CONFIG_LEGACY_INCLUDE_PATH=n"
This reverts commit e4ebba8025.

This is still not ready. We have lots of usages of old include paths.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2022-05-09 13:59:07 -04:00
Gerard Marull-Paretas e4ebba8025 ci: run twister with CONFIG_LEGACY_INCLUDE_PATH=n
Make sure all tests are run with the legacy include path option
disabled. This should prevent code not using includes with the
<zephyr/...> prefix to pass tests and so getting merged.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-05-09 12:45:29 -04:00
Gerard Marull-Paretas 6388778fb1 ci: doc-build: update Doxygen download URL
Doxygen only serves the latest couple of releases from their website.
However, all releases (including the old ones) can be downloaded from
Sourceforge.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-05-07 15:08:35 +09:00
Anas Nashif 0f64fdfbfd action: doc: use doxygen 1.9.4
1.9.2 distribution does not exist any more. Use the 1.9.4 which is the
latest.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2022-05-06 09:19:46 +09:00
Stephanos Ioannidis 27b5ef6d01 ci: Update to Zephyr SDK 0.14.1
This commit updates the CI workflows to use the Zephyr SDK 0.14.1 for
building and testing Zephyr in the CI.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-04-19 09:15:06 -04:00
Stephanos Ioannidis 43a56c2a2d ci: Switch to GitHub Container Registry
This commit updates the CI workflows to pull the CI image from the
GitHub Container Registry (GHCR) instead of the DockerHub, as part of
the effort to move away from using the DockerHub.

The rationale is as follows:

1. DockerHub imposes an impractical pull rate limit (200 pulls per
   6-hour period) that can easily be exceeded in a high volume CI like
   that of the Zephyr Project.

2. GitHub Container Registry is provided by the GitHub and offers
   better integration with the GitHub Actions (e.g. access permissions
   and tokens).

3. DockerHub offers very limited features for free accounts compared to
   the GitHub Container Registry.

Note that the CI image is still available on both GitHub Container
Registry and DockerHub, and third-party users are free to choose
whichever they prefer.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-04-19 09:15:06 -04:00
Stephanos Ioannidis f131c11318 ci: Add container owner mismatch workaround
The owner UID of the GITHUB_WORKSPACE directory may not match the
container user UID because of the way GitHub Actions runner is
implemented, and this can cause the Git operations to fail unless the
workspace directory is explicitly listed as a "safe directory."

For more details, refer to the following GitHub issue:

actions/checkout#760

Remove this workaround when GitHub comes up with a fundamental fix for
this problem.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-04-19 09:15:06 -04:00
Stephanos Ioannidis 55bc776104 ci: Remove GitPython installation step
This commit removes the GitPython package installation step from the CI
workflows since this package is now installed by default since the CI
image 0.23.0.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-04-19 09:15:06 -04:00
Stephanos Ioannidis db6f27b4c2 ci: Switch to CI image 0.23.0
This commit updates the CI workflows to use the CI image 0.23.0.

Note that the CI image 0.23.0 has had a major internal overhaul and
comes with higher risks than the normal updates.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-04-19 09:15:06 -04:00
Stephanos Ioannidis 13f382287a ci: twister: Trigger on release branches
This commit updates the Twister workflow to trigger on all pushes and
pull requests to the release branches.

Note that this change in itself does not make the Twister workflow run
on the existing release branches -- what this does is to prepare for
the future release branches to run the Twister workflow in them.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-04-16 15:53:16 +09:00
Stephanos Ioannidis c726aeacda templates: nomination: Fix 'TSC Project Roles' link
This commit fixes the broken 'TSC Project Roles' link URL, which has
been recently changed with the documentation structure overhaul.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-04-12 22:21:54 +09:00
Stephanos Ioannidis af0158d693 ci: backport: Update backport action to v1.1.1-3
This commit updates the backport workflow to use the backport action
v1.1.1-3, which introduces the following enhancements:

1. Cherry-pick backport commits with the `-x` option to improve
   traceability.

2. Disable incorrect warning when "rebase merge" method is enabled.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-04-12 14:10:04 +09:00
Martí Bolívar 434964a504 github: build docs from west 0.13.0a1
Prep work for the west release now that the first alpha is up.
This will allow the docs to be built and reviewed.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2022-04-06 18:39:35 +02:00
Stephanos Ioannidis 8779dbf56f Revert "gh: actions: Triggger the do not merge after manifest runs"
This reverts commit 4bb3039560, which is
no longer necessary because the manifest action now has the required
permissions to trigger another workflow.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-04-02 09:20:14 -04:00
Stephanos Ioannidis cb331139a8 ci: manifest: Use 'zephyrbot' token to run manifest action
This commit updates the CI manifest workflow to run the manifest action
as the 'zephyrbot' user instead of the 'github-actions' user.

The 'github-actions' user does not have the permissions required to
trigger another workflow and fails to trigger the "Do Not Merge"
workflow when it (un)labels a pull request with the "DNM" label.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-04-02 09:20:14 -04:00
Anas Nashif 033e301e10 ci: compliance: skip codeowner checks
Do not check for CODEOWNER file changes, we are moving away to
MAINTAINERs.yml file instead.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2022-04-01 17:16:41 -04:00
Carles Cufi 4bb3039560 gh: actions: Triggger the do not merge after manifest runs
For some reason when the manifest action runs and removes the DNM label,
the Do Not Merge workflow doesn't run automatically. Force it running
whenever the Manifest workflow completes to fix this.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2022-04-01 10:12:55 -04:00
Anas Nashif 6756c730d7 ci: add a do not merge workflow for DNM labels
Make PRs labeled with DNM unmergeable to avoid mistakes and accidental
merges.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2022-03-30 10:09:32 -04:00
Stephanos Ioannidis 1dd92ec865 ci: doc: Publish pull request docs to builds.zephyrproject.io
This commit updates the CI documentation build workflow to upload the
HTML pull request documentation builds to the S3 builds.zephyrproject.io
bucket so that they are directly accessible from the web.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-03-30 16:07:57 +09:00
Stephanos Ioannidis 88d64ad56f ci: license_check: Update to scancode action v4
This commit updates the license check workflow to use the v4 release
of the scancode action, which uses a more recent scancode version.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-03-30 16:06:19 +09:00
Anas Nashif 6502d2e060 ci: do not fail if ccache setup fails
Continue without cache of something fails with ccache setup.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2022-03-25 17:18:18 -04:00
Stephanos Ioannidis d300a6a268 ci: Update to Zephyr SDK 0.14.0
Pull in the CI docker image v0.22.0, which contains the Zephyr SDK
0.14.0 release, and use the Zephyr SDK 0.14.0 for building and testing
Zephyr in the CI.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-03-25 17:17:53 -04:00
Stephanos Ioannidis a4d4384447 ci: twister: Run `west config` after workspace initialisation
The twister workflow was invoking `west config`, which requires a west
workspace to be set up, prior to initialising the workspace via
`west init`.

This commit relocates the `west config` to be run after the workspace
initialisation.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-03-23 15:31:14 +09:00
Yuval Peress 347a297da2 modules: fff: Fix issue with tests being skipped in CI
The filter in the testcase.yaml made it impossible for these to run.
Also, the Kconfig names for the options didn't really make much sense
so they were renamed to avoid conflict.

This fixes an issue found by #36433.

Signed-off-by: Yuval Peress <peress@google.com>
2022-03-22 12:33:58 +01:00