This commit updates the CI workflows to use the CI image v0.24.11 that
includes BabbleSim v1.1.2, which improves simulation stability and
fixes the intermittent failures currently reported by the Bluetooth
test workflow.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the CI image 0.24.10, in
order to pull in a more recent version of BabbleSim (v1.1.1) and an
additional thrift-compiler dependency for the Apache Thrift module.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Move away from opensearch and switch to elasticsearch for reporting.
The results will be available at https://kibana.zephyrproject.io/
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This reverts commit 21eb27c5c0.
This change has been a source of much trouble and ends up preventing us
from tracking test results across tree. It uses the repo name as the
namespace, and that is not always the same and does not have to be
called 'zephyr', depending on where you are running and in which
environment.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
It looks like versions >= 1.9.2 have disappeared from the Sourceforge
website. Since they use GH releases since 1.9.6, the version we use,
let's just update download URL.
Ref. https://github.com/doxygen/doxygen/issues/9801
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
Add a YAMLLint compliance check that uses the yamllint package to report
linting error on YAML files.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Fix all line-length errors detected by yamllint:
yamllint -f parsable -c .yamllint $( find -regex '.*\.y[a]*ml' ) | \
grep '(line-length)'
Using a limit is set to 100 columns, not touching the commandlines in
GitHub workflows (at least for now).
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Fix all comments-indentation errors detected by yamllint:
yamllint -f parsable -c .yamllint $( find -regex '.*\.y[a]*ml' ) | \
grep '(comments-indentation)'
This checks that the comment is aligned with the content.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Fix all brackets errors detected by yamllint:
yamllint -f parsable -c .yamllint $( find -regex '.*\.y[a]*ml' ) | \
grep '(brackets)'
Default config is to have no spaces inside brackets, changed few
documentation strings as well that refered to lists even though the
linter does not care about those.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Fix all thruthy errors detected by yamllint:
yamllint -f parsable -c .yamllint $( find -regex '.*\.y[a]*ml' ) | \
grep '(truthy)'
This only accepts true/false for boolean properties. Seems like python
takes all sort of formats:
https://github.com/yaml/pyyaml/blob/master/lib/yaml/constructor.py#L224-L235
But the current specs only mention "true" or "false"
https://yaml.org/spec/1.2.2/#10212-boolean
Which is the standard yamllint config.
Excluding codeconv and workflow files, as some are using yes/no instead
in the respective documentation.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Update action-manifest to the latest commit, pick up:
a6d0c6e action: match revisions with a refs/ prefix
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
This commit disables the PDF documentation build for pull request CI
runs because the HTML documentation build already validates the
documentation changes and the PDF build takes significantly longer than
the HTML build.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit increases the timeout for PDF documentation build job from
45 minutes to 60 minutes because it can occasionally take more than 45
minutes on the GitHub Actions hosted runners.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Add a simple one-liner that checks for "0" in the count of merge
commits. If a merge commit is present the output will be "1"
or higher, failing the job.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
This commit updates the bluetooth-tests workflow to install the GNU
parallel utility to enable parallel execution of the Bluetooth tests.
Note that the Bluetooth test script automatically parallelises the
tests when `parallel` is available in the PATH; otherwise, it
sequentially executes the tests.
Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
This commit updates the bluetooth-tests workflow to use the
zephyr-runner-linux-x64-4xlarge runner, which has 16 vCPU and 32 GiB
RAM, and the embedded repository cache.
Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
This commit updates the CI workflows to use the Zephyr SDK 0.15.2 for
building and testing Zephyr in the CI.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the CI image 0.24.6, in
order to pull in the Zephyr SDK 0.15.2 release.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Instead of listing each test manually, use the script itself to list
them:
- When invoking it just exclude the one we don't want by default
- When parsing the output files, use the -l output as a list
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Check names must not contain spaces, since they are passed via `-m` in
the command-line.
Also update .gitignore and compliance.yml.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Use the latest Ubuntu image. There's no special reason for this change
other than staying up-to-date.
Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
In the new ephemeral Zephyr runners, the cached repository files are
located in a foreign file system and Git clone operation cannot create
hard-links to the cached repository objects, which forces the Git clone
operation to copy the objects from the cache file system to the runner
container file system.
This commit updates the CI workflows to instead perform a "shared
clone" of the cached repository, which allows the cloned repository to
utilise the object database of the cached repository.
While "shared clone" can be often dangerous because the source
repository objects can be deleted, in this case, the source repository
(i.e. cached repository) is mounted as read-only and immutable.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
With the patch a relative path between a test and west's project top
directory is always calculated instead of being relative to zephyr
base. The test names and results structur change by addition of one
level. This way the names/structure conventon for tests from zephyr and
modules is alligned.
For external tests ".." parts are replaced with "external".
This allows to maintain unified folder structure also for results of
external tests.
Without this patch the folder/name allignment is lost for
external and module test becaming depandant on a way how
twister was called.
.
Signed-off-by: Maciej Perkowski <Maciej.Perkowski@nordicsemi.no>
junitparser has a bug that prevents it from working correctly when lxml
is not installed.
See this GH issue for more information:
https://github.com/weiwei/junitparser/issues/99
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
This commit adds a workflow to periodically clean-up the stale workflow
runs that are stuck in 'queued' state.
These stale workflow runs can result from occasional GitHub webhook
delivery mishaps and may affect the CI autoscaler decision making
process.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the twister workflow to only run on the
repositories in the zephyrproject-rtos organisation because this
workflow requires a custom runner type only available within the
zephyrproject-rtos organisation.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the clang workflow to only run on the repositories
in the zephyrproject-rtos organisation because this workflow requires
a custom runner type only available within the zephyrproject-rtos
organisation.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the codecov workflow to not run on the fork
repositories because this workflow requires a custom runner type only
available within the zephyrproject-rtos organisation and there is not
much point in running this workflow on the repositories other than the
main Zephyr repository.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the manifest workflow to not label the pull
requests updating the west manifest (`west.yml`) with the `west` label
because the `manifest` label alone is enough for this purpose and the
`west` label can be easily confused with the `area: West` label.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
On push, upload test results to opensearch for analysis and reporting.
Goal is to use this data to understand test coverage better and use this
services for all test reporting, also for results coming from testing on
hardware.
Opensearch is currenly being used for evaluation, we are considering
the switch to elasticsearch later.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This commit updates the CI workflows that trigger on both push and pull
request events to limit their event trigger scope to the main and the
release branches.
This prevents these workflows from simultaneously triggering on both
push and pull request events when a pull request is created from an
upstream branch to another upstream branch (e.g. pull requests from
the backport branches to the release branches).
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the codecov workflow to pre-clone the Zephyr
repository from the runner repository cache.
Note that the `origin` remote URL is reconfigured to that of the GitHub
Zephyr repository because the checkout action attempts to delete
everything and re-clone otherwise.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
The repository clean-up steps are no longer necessary because the new
zephyr-runner is ephemeral and does not contain any files from the
previous runs.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the clang workflow to pre-clone the Zephyr
repository from the runner repository cache.
Note that the `origin` remote URL is reconfigured to that of the GitHub
Zephyr repository because the checkout action attempts to delete
everything and re-clone otherwise.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the clang workflow to use the new Kubernetes-based
zephyr-runner.
Note that the repository cache directory path has been changed for the
new runner.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>