Skip to content

Bump Jazzy

Bump Jazzy #797

Workflow file for this run

name: CI
on:
pull_request:
paths-ignore:
- 'README.md'
branches:
- '**'
workflow_call:
env:
ROS_DISTRO: jazzy
jobs:
micro_ros_build:
runs-on: ubuntu-latest
container:
image: ubuntu:24.04
strategy:
fail-fast: false
steps:
- uses: actions/checkout@v4
with:
path: src/micro_ros_setup
- uses: ros-tooling/[email protected]
with:
use-ros2-testing: false
required-ros-distributions: ${{ env.ROS_DISTRO }}
- name: Dependencies
run: |
apt update
rosdep update --rosdistro ${{ env.ROS_DISTRO }}
rosdep install --rosdistro ${{ env.ROS_DISTRO }} -y --from-paths src --ignore-src -y
- name: Build
run: |
. /opt/ros/${{ env.ROS_DISTRO }}/setup.sh
colcon build
- name: Install micro-ROS build system
run: |
(test -f install/micro_ros_setup/lib/micro_ros_setup/build_firmware.sh) && true || false
- uses: actions/upload-artifact@v1
with:
name: micro_ros_build
path: install
micro_ros_agent:
runs-on: ubuntu-latest
container:
image: ubuntu:24.04
strategy:
fail-fast: false
needs: micro_ros_build
steps:
- uses: actions/checkout@v4
with:
path: src/micro_ros_setup
- uses: ros-tooling/[email protected]
with:
use-ros2-testing: false
required-ros-distributions: ${{ env.ROS_DISTRO }}
- name: dependencies
run: |
apt update
apt install -y ros-${{ env.ROS_DISTRO }}-rmw-fastrtps-cpp
rosdep update --rosdistro ${{ env.ROS_DISTRO }}
rosdep install --rosdistro ${{ env.ROS_DISTRO }} -y --from-paths src --ignore-src -y
- uses: actions/download-artifact@v1
with:
name: micro_ros_build
path: install
# Workaround https://github.com/actions/upload-artifact/issues/38
- run: |
chmod +x -R install
- name: build
run: |
. /opt/ros/${{ env.ROS_DISTRO }}/setup.sh
. install/local_setup.sh
ros2 run micro_ros_setup create_agent_ws.sh
ros2 run micro_ros_setup build_agent.sh
- name: installation
run: |
(test -f install/micro_ros_agent/lib/micro_ros_agent/micro_ros_agent) && true || false
micro_ros_client:
runs-on: ubuntu-latest
needs: micro_ros_build
container:
image: ubuntu:24.04
strategy:
fail-fast: false
matrix:
include:
- rtos: host
platform: null
configuration: null
transport_arguments: null
binary: 'install/micro_ros_demos_rclc/lib/micro_ros_demos_rclc/int32_publisher/int32_publisher'
- rtos: generate_lib
platform: null
configuration: null
transport_arguments: null
build_arguments: $(pwd)/src/micro_ros_setup/config/generate_lib/generic/demo_toolchain.cmake
binary: 'firmware/build/libmicroros.a'
- rtos: freertos
platform: crazyflie21
configuration: crazyflie_position_publisher
transport_arguments: -t serial -d 1
binary: 'firmware/freertos_apps/microros_crazyflie21_extensions/cf2.bin'
- rtos: freertos
platform: olimex-stm32-e407
configuration: int32_publisher
transport_arguments: -t serial -d 1
binary: 'firmware/freertos_apps/microros_olimex_e407_extensions/build/micro-ROS.elf'
- rtos: freertos
platform: nucleo_f446re
configuration: int32_publisher
transport_arguments: -t serial -d 1
binary: 'firmware/freertos_apps/microros_nucleo_f446re_extensions/build/micro-ROS.elf'
- rtos: freertos
platform: nucleo_f446ze
configuration: int32_publisher
transport_arguments: -t serial -d 1
binary: 'firmware/freertos_apps/microros_nucleo_f446ze_extensions/build/micro-ROS.elf'
- rtos: freertos
platform: nucleo_f746zg
configuration: int32_publisher
transport_arguments: -t serial -d 1
binary: 'firmware/freertos_apps/microros_nucleo_f746zg_extensions/build/micro-ROS.elf'
- rtos: freertos
platform: nucleo_f767zi
configuration: int32_publisher
transport_arguments: -t serial -d 1
binary: 'firmware/freertos_apps/microros_nucleo_f767zi_extensions/build/micro-ROS.elf'
- rtos: freertos
platform: esp32
configuration: int32_publisher
transport_arguments: -t serial -d 1
binary: 'firmware/freertos_apps/microros_esp32_extensions/build/int32_publisher.elf'
- rtos: zephyr
platform: olimex-stm32-e407
configuration: int32_publisher
transport_arguments: -t serial-usb
binary: 'firmware/build/zephyr/zephyr.bin'
- rtos: zephyr
platform: discovery_l475_iot1
configuration: int32_publisher
transport_arguments: -t serial-usb
binary: 'firmware/build/zephyr/zephyr.bin'
- rtos: zephyr
platform: nucleo_h743zi
configuration: int32_publisher
transport_arguments: -t serial -d 3
binary: 'firmware/build/zephyr/zephyr.bin'
- rtos: zephyr
platform: nucleo_f746zg
configuration: int32_publisher
transport_arguments: -t serial -d 3
binary: 'firmware/build/zephyr/zephyr.bin'
- rtos: zephyr
platform: host
configuration: ping_pong
transport_arguments: -t udp -i 192.168.1.1 -p 8080
binary: 'firmware/build/zephyr/zephyr.exe'
- rtos: raspbian
platform: buster_v7
configuration: agent_lite
binary: 'firmware/bin/micro_ros_agent_lite'
- rtos: raspbian
platform: buster_v7
configuration: weather_publisher
binary: 'firmware/bin/weather_publisher'
- rtos: mbed
platform: disco_l475vg_iot01a
binary: 'firmware/micro_ros_mbed/cmake_build/DISCO_L475VG_IOT01A/develop/GCC_ARM/micro_ros_mbed.bin'
steps:
- uses: actions/checkout@v4
with:
path: src/micro_ros_setup
- uses: ros-tooling/[email protected]
with:
use-ros2-testing: false
required-ros-distributions: ${{ env.ROS_DISTRO }}
- name: Dependencies
run: |
apt update
apt upgrade -y
apt-get update
rosdep update --rosdistro ${{ env.ROS_DISTRO }}
rosdep install --rosdistro ${{ env.ROS_DISTRO }} -y --from-paths src --ignore-src -y
- uses: actions/download-artifact@v1
with:
name: micro_ros_build
path: install
# Workaround https://github.com/actions/upload-artifact/issues/38
- run: |
chmod +x -R install
- name: Configure and build micro-ROS
run: |
. /opt/ros/${{ env.ROS_DISTRO }}/setup.sh
. install/local_setup.sh
ros2 run micro_ros_setup create_firmware_ws.sh ${{ matrix.rtos }} ${{ matrix.platform }}
ros2 run micro_ros_setup configure_firmware.sh ${{ matrix.configuration }} ${{ matrix.transport_arguments }}
ros2 run micro_ros_setup build_firmware.sh ${{ matrix.build_arguments }}
- name: Check binaries
run: |
(test -f ${{ matrix.binary }}) && true || false