78 Commits

Author SHA1 Message Date
Ramon Roche
a0e42f2032 ci(workflows): bump all action versions to latest majors
Bump every GitHub Action in the repository to its latest major
version, addressing the upcoming Node.js 20 deprecation. Several
of the old versions (checkout v4, cache v4, setup-node v4,
labeler v5) use the Node 20 runtime which GitHub is deprecating.
The new versions use Node 22.

- actions/checkout v4/v5 to v6
- actions/upload-artifact v4 to v7
- actions/download-artifact v4 to v8
- actions/cache, cache/restore, cache/save v4 to v5
- actions/setup-node v4 to v6
- actions/setup-python v5 to v6
- actions/github-script v7/v8 to v9
- actions/labeler v5 to v6
- peter-evans/find-comment v3 to v4
- dorny/paths-filter v3 to v4
- codecov/codecov-action v4 to v6
- docker/setup-buildx-action v3 to v4
- docker/build-push-action v6 to v7
- tj-actions/changed-files v46 to v47

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2026-04-10 07:30:50 -06:00
Ramon Roche
5d5d9e399b
ci(workflows): wire ccache and caches across ci (#27036)
Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2026-04-09 21:51:25 -07:00
Ramon Roche
8552465408 ci(workflows): shallow checkout and fail-fast in checks
Port checkout hygiene from the CI orchestrator branch
(mrpollo/ci_orchestration) to current workflows without merging the
orchestrator itself.

- checks.yml: enable fail-fast (99% success rate observed, cancel on
  first failure saves runner time), switch to fetch-depth 1, extract
  safe.directory to its own step
- itcm_check.yml: fetch-depth 1, drop submodules: recursive (the
  Makefile bootstraps submodules as a prerequisite of board targets)
- sitl_tests.yml, ros_integration_tests.yml, mavros_mission_tests.yml,
  mavros_offboard_tests.yml, python_checks.yml: fetch-depth 1

Each change matches the corresponding job in ci-orchestrator.yml on
mrpollo/ci_orchestration 1:1. Workflows that legitimately need history
(clang-tidy, flash_analysis, failsafe_sim, ros_translation_node,
ekf_*_change_indicator, build_all_targets) are left alone.

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2026-04-09 15:57:34 -06:00
Ramon Roche
5db3060c2a ci(workflows): upgrade SITL and ROS integration runners to 8cpu
Upgrade the RunsOn runner for sitl_tests and ros_integration_tests
from 4cpu-linux-x64 / ubuntu22-full-x64 to 8cpu-linux-x64 /
ubuntu24-full-x64 with extras=s3-cache.

Matches the runner_medium spec used by the sitl-tests and
ros-integration-tests jobs in the CI orchestrator branch
(mrpollo/ci_orchestration). Both jobs are compile-heavy and benefit
from the 2x core count. The ubuntu24 image and s3-cache extras align
with the house style already used by clang-tidy, dev_container,
docs_deploy, docs-orchestrator, and build_deb_package.

No other changes (speed factor unchanged, container images unchanged).

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2026-04-09 15:57:00 -06:00
Ramon Roche
b243398231
feat(build): add SPDX 2.3 SBOM generation for builds (#26731) 2026-03-31 17:06:51 -06:00
Ramon Roche
864df9fc7b CI: disable VTOL and tailsitter SITL tests
Persistent flaky failures (timeouts, erratic transitions) make these
tests unreliable in CI. Commented out from the workflow matrix so they
can be re-enabled once the test infrastructure is stabilized. The test
definitions in sitl.json are preserved for local use.

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2026-02-17 09:30:18 -08:00
Ramon Roche
6bca640cac ci: no more uploads to flight review
Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2025-11-13 13:43:40 -09:00
Ramon Roche
2eac99cd20 ci: AWS instance review and improved build caching
* Tone down the performance of some runners from 8cpu+ down to 4cpu+
* Improve and document caching on PX4 builds with an improved ccache key strategy
* Review and document artifact upload logic for binaries uploaded to S3 and github
releases
* Future Improvement, introduce runners configuration file so we can
control more precesily which instances are allocated.

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2025-10-09 20:57:06 -04:00
Ramon Roche
83606cb0fc ci: concurrency cancel in progress
save compute time

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2025-07-07 10:25:40 +02:00
Ramon Roche
13f3a7ec6d ci: fix branch trigger strategy
Signed-off-by: Ramon Roche <mrpollo@gmail.com>
2025-07-07 10:25:40 +02:00
Marco Hauswirth
adc299d019 remove paths-ignore in workflows to enable CI-checks for pure CI changes... 2025-06-25 08:04:43 -07:00
Beat Küng
3d6056411f integration tests: add --force-color & set in CI
github actions supports color output, but does not report as a tty.
See https://github.com/actions/runner/issues/241.
2025-04-04 09:12:53 +02:00
Jacob Dahl
4c0a63f679
mavsdk_tests: add multicopter alt hold test (#24396)
* mavsdk_tests: add multicopter alt hold test

* fix test filter

* increase altitude tolerance to 10m as a test

* reduce to 1m tolerance

* increase to 5m tolerance

* increase to 2m tolerance

* reduce back to 1m

* delay 60 seconds

* fix log upload

* fix ulog upload path

* make altitude tolerance in tester.wait_until_altitude configurable

* fix lambda

* default arg in declaration

* tighten up tolerance
2025-03-21 16:21:10 -06:00
Hamish Willee
88d623bedb
Move PX4 Guide source into /docs (#24490)
* Add vitepress tree

* Update existing workflows so they dont trigger on changes in the docs path

* Add nojekyll, package.json, LICENCE etc

* Add crowdin docs upload/download scripts

* Add docs flaw checker workflows

* Used docs prefix for docs workflows

* Crowdin obvious fixes

* ci: docs move to self hosted runner

runs on a beefy server for faster builds

Signed-off-by: Ramon Roche <mrpollo@gmail.com>

* ci: don't run build action for docs or ci changes

Signed-off-by: Ramon Roche <mrpollo@gmail.com>

* ci: update runners

Signed-off-by: Ramon Roche <mrpollo@gmail.com>

* Add docs/en

* Add docs assets and scripts

* Fix up editlinks to point to PX4 sources

* Download just the translations that are supported

* Add translation sources for zh, uk, ko

* Update latest tranlsation and uorb graphs

* update vitepress to latest

---------

Signed-off-by: Ramon Roche <mrpollo@gmail.com>
Co-authored-by: Ramon Roche <mrpollo@gmail.com>
2025-03-13 16:08:27 +11:00
Ramon Roche
abb5048cdb ci: disable spot instances
guarantee execution of jobs
2024-11-20 14:52:45 -05:00
Ramon Roche
8e288629d0
ci: move runners to capacity optimized 2024-11-20 13:56:05 -05:00
Ramon Roche
00c3017334 ci: add note regarding RunsOn 2024-08-22 12:06:50 -04:00
Ramon Roche
89f29e91de ci: slow down sitl test realtime 2024-08-22 12:06:50 -04:00
Ramon Roche
7f33dcfcfb ci: upgrade sitl mavsdk tests workflow 2024-08-22 12:06:50 -04:00
Daniel Agar
6991ac014c
rename 'gazebo' simulation to 'gazebo-classic' (#20936)
- use `gazebo-classic` everywhere consistently referring to the original Gazebo (eg version 9,10,11)
   - additional `gazebo_*` helper targets added for compatibility, but warn about deprecation and tell you the new target naming
 - use `gz` everywhere when referring to Gazebo (aka Ignition Gazebo or new Gazebo)
2023-01-15 11:36:12 -05:00
Daniel Agar
618288cca9 SITL Gazebo classic make airframes simulator specific 2023-01-07 17:00:35 -05:00
Daniel Agar
dc0823062e
github actions: disable vtol_standard address sanitizer test
- unfortunately this is often too slow for github actions
2022-12-12 14:23:13 -05:00
Justin
88bf1030b5 Update CI to use the main branches. 2022-09-07 20:03:19 -04:00
Julian Oes
37fa4bccb6 mavsdk_tests: update MAVSDK dependency
This should fix the CI issue where the test just hangs trying to
connect.
2022-04-20 11:48:53 -04:00
alessandro
2c8a92c628 sitl config: put model name first
Github constructs the workflow names from the 
matrix configurations. Having latitude and longitude
in the fist columns makes these names rather cryptic.
2021-12-22 12:48:54 +01:00
Julian Oes
accbdbf129 DEBUG: get some mavsdk_test_runner.py output 2021-12-02 11:40:26 -05:00
Daniel Agar
3e6ff2451b
github actions increase newly added timeouts 2021-10-06 13:47:12 -04:00
Daniel Agar
6edb1fa1f8 github actions add timeout to SITL tests run 2021-10-06 09:28:27 -04:00
Daniel Agar
ad27d2c49a github actions enable ccache hash_dir for SITL tests 2021-10-06 09:28:27 -04:00
Daniel Agar
d002002ceb github actions increase ccache compression level 2021-10-06 09:28:27 -04:00
Jukka Laitinen
ffa5abbd65 ci: update container versions to 2021-09-08
Signed-off-by: Jukka Laitinen <jukkax@ssrc.tii.ae>
2021-09-09 09:43:15 +02:00
Beat Küng
b12b884f4c ci: update container version to 2021-05-04 2021-07-07 21:38:09 -04:00
Daniel Agar
d31a45a62d github actions SITL test run standard_vtol with address sanitizer 2021-06-04 13:27:42 -04:00
David Sidrane
92344b96b3 CI Update to 2021-04-29 2021-04-30 14:32:40 -04:00
Julian Oes
14e51098e5 workflows: use MAVSDK_VERSION in sitl_tests 2021-04-29 21:08:33 -04:00
Julian Oes
9eadabcb02 sitl_tests: update MAVSDK to v0.38.0 2021-04-06 11:35:18 -04:00
Daniel Agar
4a65ad9148 github actions decrease max ccache size
- lower compression level to 5 as recommended by ccache manual
2021-02-22 18:59:35 -05:00
Julian Oes
64d0ce43b6 mavsdk_tests: upload to logs.px4.io in test_runner
By doing the upload directly inside the mavsdk_test_runner.py we have
more context such as the model, case, etc.
2021-02-16 17:07:21 +01:00
Julian Oes
18281eee29 workflows: more meta information to log upload
This adds a little bit more information but still lacks the one to one
mapping between test and uploaded file.
2021-02-16 17:07:21 +01:00
Julian Oes
f08804da07 workflows: update to MAVSDK 0.36.0
This is required for the timestamp that comes with the attitude
information.
2021-02-09 11:32:41 +01:00
Peter van der Perk
8242968b2b UAVCAN v1 GPS demo with MAVCAN autoconfigure 2021-02-07 17:18:45 +01:00
Daniel Agar
71306f7f83 update all container tags to 2020-11-18 2020-11-19 13:37:57 -05:00
Daniel Agar
c8dfcf7f0d Github Actions: break up MAVSDK SITL tests
- run only 1 vehicle type per location
2020-11-10 13:11:51 -05:00
Daniel Agar
cf082d7f1c
Github actions: SITL tests upgrade MAVSDK v0.30.1 -> v0.33.1 2020-10-28 20:26:47 -04:00
Daniel Agar
28956e0399
Github actions: MAVSDK SITL tests fix log upload on failure 2020-10-08 13:10:08 -04:00
David Sidrane
59ba09d73c CI use 2020-08-14 with gcc 9.3.1 2020-09-16 21:32:04 -04:00
Julian Oes
720784b9e9 workflows: update MAVSDK used for SITL test 2020-09-16 12:51:56 -04:00
Julian Oes
06ad0de5eb workflows: move to MAVSDK v0.29.0 2020-09-16 12:51:56 -04:00
Daniel Agar
c1fc638ac3 github actions use build type for ccache key and fix coverage check 2020-06-20 19:17:13 -04:00
Daniel Agar
3092d9e1f9 github actions run SITL tests in parallel
- temporarily disable iris dual gps
2020-06-20 17:44:57 -04:00