Skip to content

manual build

manual build #261

Workflow file for this run

name: colcon
on:
push:
pull_request:
paths-ignore:
- "README.md"
jobs:
build:
name: "${{ matrix.distribution }} (${{ matrix.ros }})"
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
# - distribution: ubuntu
# version: 22.04
# ros: humble
# - distribution: ubuntu
# version: 24.04
# ros: jazzy
- distribution: almalinux
version: 8
ros: humble
# - distribution: almalinux
# version: 9
# ros: jazzy
continue-on-error: ${{ matrix.ros == 'rolling' }}
container:
image: ${{ matrix.distribution }}:${{ matrix.version }}
env:
PIP_BREAK_SYSTEM_PACKAGES: 1
steps:
# act workaround
- if: ${{ matrix.distribution == 'ubuntu' }}
run: |
apt update
apt -y install nodejs
- if: ${{ matrix.distribution == 'almalinux'}}
run: |
dnf -y module enable nodejs:20
dnf -y install nodejs
- name: install ROS 2
if: ${{ matrix.distribution == 'ubuntu' }}
uses: ros-tooling/[email protected]
- name: install ROS 2 (almalinux)
if: ${{ matrix.distribution == 'almalinux' }}
run: |
dnf -y install 'dnf-command(config-manager)' epel-release
dnf -y config-manager --set-enabled powertools
curl --output /etc/yum.repos.d/ros2.repo http://packages.ros.org/ros2/rhel/ros2.repo
dnf -y makecache
dnf -y install git ros-dev-tools
rosdep init
- name: build and test dependencies (almalinux)
if: ${{ matrix.distribution == 'almalinux'}}
run: |
dnf -y install libasan python3-mypy
- name: build and test
uses: ros-tooling/[email protected]
if: ${{ matrix.distribution == 'ubuntu' }}
with:
package-name: camera_ros
target-ros2-distro: ${{ matrix.ros }}
- name: build and test (almalinux)
if: ${{ matrix.distribution == 'almalinux' }}
run: |
rosdep update
mkdir -p ~/camera_ws/src
cd ~/camera_ws/src
git clone https://github.com/christianrauch/camera_ros.git
cd ~/camera_ws
rosdep install --from-paths src --ignore-src -y --rosdistro humble
. /opt/ros/humble/setup.bash
colcon build