After rebasing the PR on main, the local copy of the repository may
still contain untracked directories and files (for example, the commits
from the pull request are "git mv"ing files out of directories that are
then left empty). Add a git clean so that we run CI in conditions
that are as close as possible to a fresh clone.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This commit updates the CI workflows to use the CI image v0.26.13, which
includes Zephyr SDK 0.16.8.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the CI image v0.26.11, which
includes bsim 2.2 and nrf-regtool 5.1.0.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
When updating the bsim install in the docker image's
/opt/bsim_west to the version pointed in the Zephyr
manifest, we are detaching the head to that version.
We suppress the "You are in 'detached HEAD' state..."
git warning as it is just noise in CI.
So far we were doing it by globally supressing that
warning. Let's instead just supress it for the
command in question so we don't change global
git config against expectations.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
The west manifest may point to a newer version of bsim than
the one avaliable in the docker image. Let's ensure
we run with that one.
This is equivalent to the change done in
933d338c97
for the bsim-tests workflow.
Note that the update and rebuild is incremental,
so if the docker image already has the right
version the operation is very fast
(~1 second)
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
This commit updates the clang workflow such that ccache only uses remote
Redis cache storage when available.
The purpose of this to reduce the individual runner local disk IOPS
requirement; thereby, reducing the overall load on the SAN.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the clang workflow to, when available, use Redis remote
storage backend for the ccache compilation cache data.
The Redis cache server is hosted in the Kubernetes cluster in which the
zephyr-runner pods run -- the Redis remote storage backend will be ignored
if the server is unavailable.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the clang workflow to use the new zephyr-runner v2 CI
runner deployment.
It also updates the workflow to use the `ci-repo-cache` Docker image, which
includes the Zephyr repository cache, because the node level repository
cache is no longer available in the zephyr-runner v2.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the CI image v0.26.7, in order
to pull in the Zephyr SDK 0.16.5 release.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
Update Github actions to their latest versions to fix the following
warnings on runs:
```
Node.js 16 actions are deprecated. Please update the following actions
to use Node.js 20: actions/checkout@v3, actions/cache@v3,
actions/upload-artifact@v3. For more information see:
https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
```
`actions/checkout` and `actions/cache` are straight Node version
upgrades, `actions/upload-artifact` and `actions/download-artifact` have
breaking changes, but don't appear to affect our usage.
https://github.com/actions/upload-artifact
Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
Drop all hardcoded ZEPHYR_SDK_INSTALL_DIR settings, set the variable
automatically from the SDK_VERSION file instead.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
Switch from native_posix to native_sim as test platform
for this workflow.
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
This commit updates the CI workflows to use the Zephyr SDK 0.16.0 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 v0.25.0, in
order to pull in the Zephyr SDK 0.16.0 release.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
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>
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>
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>
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>
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>
This commit updates the CI workflows to use the latest
"upload-artifact" action v3, which is based on Node.js 16.
Note that Node.js 12-based actions are now deprecated by GitHub and may
stop working in the near future.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the latest "checkout"
action v3, which is based on Node.js 16.
Note that Node.js 12-based actions are now deprecated by GitHub and may
stop working in the near future.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the workflow to use the output parameter file
(`GITHUB_OUTPUT`) instead of the stdout-based output parameter setting,
which is now deprecated by GitHub and will be removed in the near
future.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit adds a concurrency group to the workflow in order to ensure
that only one instance of the workflow runs for an event-ref
combination.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the Zephyr SDK 0.15.1 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.5, in
order to pull in the Zephyr SDK 0.15.1 release.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
This commit updates the CI workflows to use the CI image 0.24.3, in
order to pull in the LLVM/Clang 15 and Renode 1.13.1.
Signed-off-by: Stephanos Ioannidis <root@stephanos.io>