Files
rtabmap_ros/.github/workflows/ros2.yml
T

59 lines
2.1 KiB
YAML

name: ros2
on:
push:
branches: [ lyrical-devel ]
pull_request:
branches: [ lyrical-devel ]
workflow_dispatch:
env:
BUILD_TYPE: Release
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
build:
name: Build ros2 ${{ matrix.ros_distro }}${{ matrix.ros2_testing && ' (ros-testing)' || '' }}
runs-on: ubuntu-latest
strategy:
matrix:
ros_distro: [lyrical]
ros2_testing: [false, true] # build with main and ros-testing apt repositories
include:
- ros_distro: lyrical
skip_keys: '' # skip keys shoudl be empty when release on ROSDISTRO_devel branch, comment these keys in the appriopriate package.
# velodyne and grid_map_ros are not available on lyrical, they are commented in rtabmap_examples and rtabmap_util packages.
# Listed packages are built with their dependencies, but only listed packages are tested.
packages: 'rtabmap_ros rtabmap_conversions rtabmap_odom rtabmap_slam rtabmap_sync rtabmap_util rtabmap_python'
fail-fast: false
container:
image: osrf/ros:${{ matrix.ros_distro }}-desktop-full
steps:
- uses: actions/checkout@v4
- name: Remove ros2-apt-source (conflicts with ros2-testing-apt-source)
if: ${{ matrix.ros2_testing }}
run: |
apt-get remove -y ros2-apt-source
- uses: ros-tooling/[email protected]
with:
required-ros-distributions: ${{ matrix.ros_distro }}
use-ros2-testing: ${{ matrix.ros2_testing }}
- run: |
DEBIAN_FRONTEND=noninteractive
sudo apt update
sudo apt upgrade -y
- run: |
echo "repositories:\n introlab/rtabmap:\n type: git\n url: https://github.com/introlab/rtabmap.git\n version: lyrical-devel\n" > /tmp/deps.repos &&\
cat /tmp/deps.repos
- uses: ros-tooling/[email protected]
with:
package-name: ${{ matrix.packages }}
target-ros2-distro: ${{ matrix.ros_distro }}
vcs-repo-file-url: /tmp/deps.repos
rosdep-check: true
rosdep-skip-keys: "${{ matrix.skip_keys }}"