mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-04-14 10:07:39 +08:00
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>
75 lines
2.2 KiB
YAML
75 lines
2.2 KiB
YAML
name: ROS Translation Node Tests
|
|
on:
|
|
push:
|
|
branches:
|
|
- 'main'
|
|
paths-ignore:
|
|
- 'docs/**'
|
|
pull_request:
|
|
branches:
|
|
- '**'
|
|
paths-ignore:
|
|
- 'docs/**'
|
|
permissions:
|
|
contents: read
|
|
|
|
defaults:
|
|
run:
|
|
shell: bash
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
build_and_test:
|
|
name: Build and test [${{ matrix.config.ros_version }}]
|
|
runs-on: [runs-on,runner=4cpu-linux-x64,image=ubuntu24-full-x64,"run-id=${{ github.run_id }}",spot=false,extras=s3-cache]
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
config:
|
|
- {ros_version: "humble", ubuntu: "jammy"}
|
|
- {ros_version: "jazzy", ubuntu: "noble"}
|
|
container:
|
|
image: ros:${{ matrix.config.ros_version }}-ros-base-${{ matrix.config.ubuntu }}
|
|
steps:
|
|
- uses: runs-on/action@v2
|
|
- uses: actions/checkout@v6
|
|
with:
|
|
fetch-depth: 0
|
|
- name: Configure Git Safe Directory
|
|
run: git config --system --add safe.directory '*'
|
|
|
|
- uses: ./.github/actions/setup-ccache
|
|
id: ccache
|
|
with:
|
|
cache-key-prefix: ccache-ros-translation-${{ matrix.config.ros_version }}
|
|
max-size: 150M
|
|
base-dir: /ros_ws
|
|
install-ccache: 'true'
|
|
|
|
- name: Check .msg file versioning
|
|
if: github.event_name == 'pull_request'
|
|
run: |
|
|
./Tools/ci/check_msg_versioning.sh ${{ github.event.pull_request.base.sha }} ${{github.event.pull_request.head.sha}}
|
|
|
|
- name: Build - Translation Node
|
|
run: |
|
|
ros_ws=/ros_ws
|
|
mkdir -p $ros_ws/src
|
|
./Tools/copy_to_ros_ws.sh $ros_ws
|
|
cd $ros_ws
|
|
source /opt/ros/${{ matrix.config.ros_version }}/setup.sh
|
|
colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_COMPILER_LAUNCHER=ccache -DCMAKE_C_COMPILER_LAUNCHER=ccache --symlink-install --event-handlers=console_cohesion+
|
|
|
|
- name: Test - Translation Node Unit Tests
|
|
run: |
|
|
source /ros_ws/install/setup.sh
|
|
/ros_ws/build/translation_node/translation_node_unit_tests
|
|
|
|
- uses: ./.github/actions/save-ccache
|
|
if: always()
|
|
with:
|
|
cache-primary-key: ${{ steps.ccache.outputs.cache-primary-key }}
|