name: ros2 on: push: branches: [ master ] pull_request: branches: [ master ] env: # Customize the CMake build type here (Release, Debug, RelWithDebInfo, etc.) BUILD_TYPE: Release jobs: build: # The CMake configure and build commands are platform agnostic and should work equally # well on Windows or Mac. You can convert this to a matrix build if you need # cross-platform coverage. # See: https://docs.github.com/en/free-pro-team@latest/actions/learn-github-actions/managing-complex-workflows#using-a-build-matrix name: Build on ros2 ${{ matrix.ros_distro }} and ${{ matrix.os }} runs-on: ${{ matrix.os }} strategy: matrix: ros_distro: [foxy, galactic, humble] include: - ros_distro: 'foxy' os: ubuntu-20.04 - ros_distro: 'galactic' os: ubuntu-20.04 - ros_distro: 'humble' os: ubuntu-22.04 steps: - uses: ros-tooling/setup-ros@v0.4 with: required-ros-distributions: ${{ matrix.ros_distro }} - name: Install dependencies run: | sudo apt-get update sudo apt-get -y install ros-${{ matrix.ros_distro }}-cv-bridge qtbase5-dev - name: Setup ros2 workspace run: | source /opt/ros/${{ matrix.ros_distro }}/setup.bash mkdir -p ${{github.workspace}}/ros2_ws/src cd ${{github.workspace}}/ros2_ws colcon build - uses: actions/checkout@v2 with: path: 'ros2_ws/src/find_object_2d' - name: colcon build run: | source /opt/ros/${{ matrix.ros_distro }}/setup.bash cd ${{github.workspace}}/ros2_ws colcon build --event-handlers console_direct+