Merge pull request #20 from ROBOTIS-GIT/feature-rosdep-ci #144
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# The name of the workflow | |
name: CI | |
# Specifies the events that trigger the workflow | |
on: | |
push: | |
branches: [ jazzy, main ] | |
pull_request: | |
branches: [ jazzy, main ] | |
# Defines a set of jobs to be run as part of the workflow | |
jobs: | |
# The name of the job | |
ROS_CI: | |
runs-on: ubuntu-22.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
ros_distribution: | |
# - humble | |
- jazzy | |
- rolling | |
include: | |
# ROS 2 Humble Hawksbill | |
# - docker_image: ubuntu:jammy | |
# ros_distribution: humble | |
# ros_version: 2 | |
# ROS 2 Jazzy Jalisco | |
- docker_image: ubuntu:noble | |
ros_distribution: jazzy | |
ros_version: 2 | |
# ROS 2 Rolling Ridley | |
- docker_image: ubuntu:noble | |
ros_distribution: rolling | |
ros_version: 2 | |
container: | |
image: ${{ matrix.docker_image }} | |
steps: | |
- name: Setup workspace | |
run: mkdir -p ros_ws/src | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
path: ros_ws/src | |
- name: Setup ROS environment | |
uses: ros-tooling/setup-ros@v0.7 | |
with: | |
required-ros-distributions: ${{ matrix.ros_distribution }} | |
- name: Check and Install ROS dependencies | |
shell: bash | |
run: | | |
set -e | |
source /opt/ros/${{ matrix.ros_distribution }}/setup.bash | |
echo "--- Updating rosdep definitions ---" | |
rosdep update | |
echo "--- Installing system dependencies for ROS 2 ${{ matrix.ros_distribution }} ---" | |
rosdep install --from-paths ros_ws/src --ignore-src -y -r --rosdistro ${{ matrix.ros_distribution }} | |
echo "--- Performing rosdep check for ROS 2 ${{ matrix.ros_distribution }} ---" | |
if rosdep check --from-paths ros_ws/src --ignore-src --rosdistro ${{ matrix.ros_distribution }}; then | |
echo "--- rosdep check passed ---" | |
else | |
echo "--- rosdep check failed: Missing system dependencies or unresolvable keys. ---" | |
exit 1 | |
fi | |
- name: Build and Test | |
uses: ros-tooling/action-ros-ci@v0.3 | |
with: | |
target-ros2-distro: ${{ matrix.ros_distribution }} | |
vcs-repo-file-url: "" | |
package-name: | | |
physical_ai_server | |
physical_ai_interfaces |