Commit graph

47 commits

Author SHA1 Message Date
Ryan Turner
8b0cb77ffe ci: support labelling prs and labels as 'In progress' to disable automation
Some checks failed
Format sources / clang-format (push) Has been cancelled
Build and test / unit-test (push) Has been cancelled
Build and test / build-zephyr (push) Has been cancelled
Build and test / build (push) Has been cancelled
Signed-off-by: Ryan Turner <ryan@turnrye.com>
2026-08-02 17:52:48 +02:00
Ryan Turner
909e640490 ci: fix treating in progress labeled issues as in progress 2026-08-02 17:52:48 +02:00
Vlastimil Slinták
ea89d8d7e7 ci: cancel superseded PR runs and add job timeouts
Pushing to a PR branch now cancels the previous in-progress run
instead of queueing a duplicate ~40 minute build. Runs on branches
(master included) are never cancelled. Also drop the unused
RADIO_TOOL_VERSION env var.

Signed-off-by: Vlastimil Slinták <slintak@uart.cz>
2026-07-05 17:06:51 +02:00
Vlastimil Slinták
a58d4889a6 ci: rebuild devcontainer image on a weekly schedule
The image is the layer cache for the build workflow and goes stale
whenever the ubuntu:24.04 base image is updated upstream. Since the
last rebuild (May 26) the base moved (Jul 2), so every CI run now
rebuilds the full Miosix toolchain (~40 min) and is exposed to GNU
mirror outages. Also drop two unused env vars from this workflow.

Signed-off-by: Vlastimil Slinták <slintak@uart.cz>
2026-07-05 17:06:51 +02:00
Vlastimil Slinták
77cddaeb2c ci: replace slashes in branch name used for artifact file names
The artifact renaming step interpolates the branch name into output
file names. A branch name containing a slash (e.g. fix/foo) makes mv
interpret it as a nonexistent directory path and the build job fails.

Seen on PR #489.

Signed-off-by: Vlastimil Slinták <slintak@uart.cz>
2026-07-05 17:06:51 +02:00
Ryan Turner
e44fd28ae2 ci: only push devcontainer when on origin/master
Signed-off-by: Ryan Turner <ryan@turnrye.com>
2026-04-19 07:18:11 +02:00
Silvano Seva
75bf2fee17 ci: make close-stale job less aggressive
Increased period before an issue or PR is marked as stale to 60 days and
skip issues and PRs labelled as 'In progress'

Signed-off-by: Silvano Seva <silseva@fastwebnet.it>
2026-03-26 21:18:28 +01:00
Ryan Turner
e1d1387ef8 ci: pre-build devcontainer
Signed-off-by: Ryan Turner <ryan@turnrye.com>
2026-03-04 21:33:50 +01:00
Ryan Turner
13b067f2b1 ci: run faster steps first
This change makes it so that unit tests and zephyr build run before the conventional builds, hopefully giving the user feedback about failures more quickly. This is because the conventional builds utilize the devcontainer, which takes quite some time to spin up.

Signed-off-by: Ryan Turner <ryan@turnrye.com>
2026-03-04 08:10:40 +01:00
Ryan Turner
6cf321c1c0 ci: test: add GH check annotations for failed tests
This change makes it so that Catch2 reports its tests in JUnit format, and then a GH Action parses that and adds annotations on test failures.

Signed-off-by: Ryan Turner <ryan@turnrye.com>
2026-03-04 08:10:40 +01:00
Ryan Turner
2f18cdcc0c test: unit: add gcovr test coverage
Add a script to run gcovr; update contributing guide to explain usage; integrate
with vscode presents; add execution to ci.

To use this, execute `scripts/coverage.sh`. This builds with coverage
instrumentation, runs the test suite, and produces:
 * HTML report: `build_coverage/coverage/index.html` -- open in a browser to see
   per-file line-by-line coverage highlighting
 * MD report: `build_coverage/coverage/coverage.md` -- human-readable summary of
   test coverage which gets attached to the GitHub actions build
 * Cobertura XML: `build/coverage/cobertura.xml` -- machine-readable format used
   by CI; this gets archived today with the build, but no other use is in place
   yet

In the future another tool could be used to track coverage over time, or we
could institute minimum coverage requirements and have a GH actions
automatically open a comment when the coverage is not met, for instance.

Co-authored-by: GitHub Copilot <copilot@github.com> Signed-off-by: Ryan Turner
<ryan@turnrye.com>
2026-03-04 08:10:40 +01:00
Ryan Turner
649eee381e ci: test: run all unit tests
This change simplifies how unit tests are run in CI, ensuring that we always run all of them. This also prints more details about test failures compared to before, making troubleshooting by contributors easier.

Signed-off-by: Ryan Turner <ryan@turnrye.com>
2026-03-04 08:10:40 +01:00
Ryan Turner
67dc4d9436 build: add Catch2 subproject
Add the catch2 subproject wrap file and its REUSE license entry. Declare
the catch2-with-main dependency for native/linux builds only. Wrap the
unit test section in a cross-build guard so that test targets are not
declared when cross-compiling for embedded targets. Install catch2 via
apt in CI.

Co-authored-by: GitHub Copilot <copilot@github.com>
Signed-off-by: Ryan Turner <ryan@turnrye.com>
2026-03-04 08:10:40 +01:00
Ryan Turner
d7fb5f0ddd ci: close stale issues and PRs
This change adds a github action in order to warn users after 30 days of
inactivity that their PRs and issues are subject to being closed if they
are not updated within the next 5 days. Labels are added to auto-closed
issues so that analysis is easier, and issues with the labels bug or issue
are skipped from this.

I chose not to do this for the enhancement type issues, as the longer term
product backlog is being tracked in Tiaga, not GitHub Issues. Users are
still welcome to log issues for enhancements, but this will encourage them
to keep these discussions alive and work to a conclusion rather than having
the longer-term roadmap split across two places.

Signed-off-by: Ryan Turner <ryan@turnrye.com>
2026-02-17 18:46:43 +01:00
Morgan Diepart
f070a477a6 build: rename "build_arm" file to "build_cm4"
In file cross_cm7.txt, the target cpu was wrongly identified as being
Cortex M4. This does not affect compilation.
Also, file cross_arm.txt was renamed cross_cm4.txt and folder build_arm
was renamed to build_cm4. References to this were also updated.
2026-02-14 16:00:51 +01:00
Ryan Turner
862b7ab46a reuse: add reuse config, licenses
Integrate the REUSE tool by adding a config which addresses all of the
linting complaints based on my research. Also, address deprecated
licenses where necessary (the license didnt change, but the identifier
did).

Signed-off-by: Ryan Turner <ryan@turnrye.com>
2026-01-14 20:10:07 +01:00
Ryan Turner
edbe038329 test: unit: add test for M17 Callsign class 2025-11-17 22:04:27 +01:00
Ryan Turner
1c50bf8bad ci: rename build artifacts to align with naming convention
OpenRTX releases have had their artifacts follow a historical pattern,
which has both set users expectations and had documentation (both official
and unofficial) built. The CI builds don't follow those conventions though,
which causes confusion with users who don't have experience doing local
builds.
This change moves the build artifacts to match the file naming convention
users are accustomed to, and it uses the branch name as the name of the build
name that is listed.

Fixes: https://tasks.openrtx.org/project/openrtx/task/779
Signed-off-by: Ryan Turner <ryan@turnrye.com>
Acked-by: Silvano Seva <silseva@fastwebnet.it>
2025-11-02 20:17:18 +01:00
Ryan Turner
c596fd8007 ci: fix artifact path for cs7000p build target
The build artifacts were looking for a file ending with , and so it was never picked up. This fixes that problem.
2025-11-01 23:20:01 +01:00
Silvano Seva
6b255e56a1 ci: build Module17 bin target instead of wrap
Signed-off-by: Silvano Seva <silseva@fastwebnet.it>
2025-10-05 14:28:31 +02:00
Ryan Turner
04249f4d4d ci: ensure that build commands return the proper status code
Fix ensuring that build runCmd returns the proper status code so that if
a build fails, the CI fails
2025-10-02 19:39:57 +02:00
Ryan Turner
e1994357f8 ci: create builds using devcontainer
This change makes it so that CI/CD builds against all supported platforms,
utilizing the devcontainer as its environment rather than setting up one
separately. This allows to have the CICD builds and dev local builds more
similar and reduces the maintenance overhead.

Co-authored-by: Peter Buchegger <peter@pbuchegger.at>
2025-09-12 17:20:20 +02:00
Ryan Turner
74e89450b7 clang-format: add lint job and update run script
Update clang-format script to only run on files that are passing the
formatter, that way the clang-format script is useable by CI and
contributors.
2025-09-12 15:46:08 +02:00
marco
359c29592b Add CS7000/CS700P/DM1701 to actions build 2025-04-21 21:31:11 +02:00
marco
16038ceba7 Add github workflow for zephyr targets 2025-02-08 21:39:42 +01:00
Marco
36ef3b310c Added function to convert minmea coordinate to fixed-point integer representation 2024-04-10 08:04:26 +02:00
Marco
b71509ecb6 Add smallscreen and mod17 linux binaries to artifacts 2024-02-18 11:36:31 +01:00
Marco
69c0bc484c Update github actions "checkout" and "upload-artifacts" to v4
The v3 actions use Node 16 which is now deprecated and will be phased out.
To fix this we will use the v4 actions which are based on Node20.
For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/
2024-02-06 19:29:27 +01:00
marco
4ed9262a96 Updated linux build targets in github workflow 2024-01-09 12:36:23 +01:00
Silvano Seva
f703a48069 ci: use linux codec2 library from apt instead of building it 2023-12-12 19:08:02 +01:00
Ryan Turner
384a07d197 ci: add a job for builds 2023-12-12 19:07:53 +01:00
marco
65d2fdb0e3 Fix unit tests by using system provided codec2 2023-11-10 19:03:28 +01:00
Ryan Turner
ec57e74bc6 feat(ui): add tooling to generate symbols, add GPS status icon and macro latch icon to the macro menu
Ref https://github.com/OpenRTX/OpenRTX/issues/161
2023-08-24 09:32:01 +02:00
Ryan Turner
29b6eb08ff chore(test): fix unit tests and explore a github workflow 2023-08-17 12:16:13 +02:00
Fred
419639b7fe
Remove unmaintained dependency from CI 2021-11-10 23:58:06 +01:00
Silvano Seva
6fd53d1917 Updated version number in meson.build and added libcodec2-dev dependency to CI script 2021-10-08 19:28:59 +02:00
Niccolò Izzo
cc5fe0ecc7 Fix CI by adding codec2 dependency
Add codec2 package installation to fix compilation issue after M17 code integration.
2021-10-08 17:24:46 +02:00
Fred
e6a1770579 Remove bin2sgl from CI 2021-04-24 16:57:30 +02:00
Fred
75eac13001 Add gd77 and dm1801 targets to CI 2021-03-24 09:59:58 +01:00
Federico Amedeo Izzo
fc65891a29 Renamed target mduv380 to mduv3x0 to be consistent with md3x0` 2021-03-21 18:26:53 +01:00
Fred
b1c94e1722 Add submodule checkout to Actions workflow 2021-03-15 21:03:42 +01:00
Silvano Seva
61327e60db Fixed error in CI script preventing it from installing the miosix compiler 2021-03-14 11:56:51 +01:00
Silvano Seva
9dce6b9213 Updated CI config to allow cross-compilation with miosix kernel 2021-03-14 11:52:59 +01:00
Nimayer
9a99eee190 Create FUNDING.yml 2021-02-28 22:24:39 +01:00
silseva
d64cb8a1ba Updated CI configuration after merge of MD-380 and MD-390 targets 2021-02-03 15:15:54 +01:00
Fred
d7cc27e41b Add radio_tool dependency to Github actions 2021-01-03 10:18:20 +01:00
Fred
f8b509aeea Create main.yml 2021-01-03 09:52:42 +01:00