Skip to content

Commit

Permalink
Modify CI to track ros testing repo (#256)
Browse files Browse the repository at this point in the history
* Modified CI in a way that rmw_zenoh can also be tested with ROS testing repos

* Fixed indentation error in workflow yaml

* Build rolling from source, Iron and Jazzy from binaries and cron job too

Signed-off-by: Alejandro Hernández Cordero <[email protected]>

* Fixed syntaz

Signed-off-by: Alejandro Hernández Cordero <[email protected]>

* Use Ubuntu jammy with Iron

Signed-off-by: Alejandro Hernández Cordero <[email protected]>

* Applied the suggestions in ( #256 (comment) )

Signed-off-by: CihatAltiparmak <[email protected]>

* Fixed vcs-url

* Added matrix, changed setup-ros and reverted deleted fail-fast-param

Signed-off-by: CihatAltiparmak <[email protected]>

* Removed DOCKER_IMAGE argument

Signed-off-by: CihatAltiparmak <[email protected]>

* Added lcov package

Signed-off-by: CihatAltiparmak <[email protected]>

---------

Signed-off-by: Alejandro Hernández Cordero <[email protected]>
Signed-off-by: CihatAltiparmak <[email protected]>
Co-authored-by: Alejandro Hernández Cordero <[email protected]>
  • Loading branch information
CihatAltiparmak and ahcorde authored Aug 26, 2024
1 parent ea41516 commit a9b95a9
Showing 1 changed file with 33 additions and 15 deletions.
48 changes: 33 additions & 15 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,27 +4,45 @@ on:
push:
branches: [ rolling ]
workflow_dispatch:
schedule:
# Run every morning to detect flakiness and broken dependencies
- cron: '03 5 * * *'
defaults:
run:
shell: bash
jobs:
test:
runs-on: ubuntu-latest
build_and_test:
name: build_and_test_${{ matrix.BUILD_TYPE }}_${{ matrix.ROS_DISTRO }}
strategy:
fail-fast: false
matrix:
distro: ['iron', 'jazzy', 'rolling']
include:
# Rolling (source)
- ROS_DISTRO: rolling
BUILD_TYPE: source
# Jazzy (binary)
- ROS_DISTRO: jazzy
BUILD_TYPE: binary
# Iron (binary)
- ROS_DISTRO: iron
BUILD_TYPE: binary
env:
ROS2_REPOS_FILE_URL: 'https://raw.githubusercontent.com/ros2/ros2/${{ matrix.ROS_DISTRO }}/ros2.repos'
runs-on: ubuntu-latest
container:
image: ros:${{ matrix.distro }}-ros-base
timeout-minutes: 30
image: ${{ matrix.BUILD_TYPE == 'binary' && format('ros:{0}-ros-base', matrix.ROS_DISTRO) || 'ubuntu:noble' }}
steps:
- name: Deps
run: |
apt update && apt install -y curl
- uses: actions/checkout@v4
- name: rosdep
run: |
rosdep update
rosdep install --from-paths . -yir
- name: build
run: /ros_entrypoint.sh colcon build
- uses: ros-tooling/[email protected]
if: ${{ matrix.BUILD_TYPE == 'source' }}
- name: Install Coverage Tools
if: ${{ matrix.BUILD_TYPE == 'binary' }}
run: sudo apt update && sudo apt install -y python3-colcon-coveragepy-result python3-colcon-lcov-result lcov
- name: Build and run tests
id: action-ros-ci
uses: ros-tooling/[email protected]
with:
package-name: |
rmw_zenoh_cpp
zenoh_c_vendor
target-ros2-distro: ${{ matrix.ROS_DISTRO }}
vcs-repo-file-url: ${{ matrix.BUILD_TYPE == 'source' && env.ROS2_REPOS_FILE_URL || '' }}

0 comments on commit a9b95a9

Please sign in to comment.