From 7b20b4f5e4316b1042f13e902df445955e136247 Mon Sep 17 00:00:00 2001 From: Yadunund Date: Mon, 6 May 2024 13:33:27 +0800 Subject: [PATCH 01/13] Solve conflict for Cherry-pick from Yadunund's f23b7a99ff2ae797a1132a335c31e36045b7e212 commit Signed-off-by: Yadunund --- rmw_zenoh_cpp/test/test_rclcpp_launch.py | 87 ++++++++++++++++++++++++ 1 file changed, 87 insertions(+) create mode 100644 rmw_zenoh_cpp/test/test_rclcpp_launch.py diff --git a/rmw_zenoh_cpp/test/test_rclcpp_launch.py b/rmw_zenoh_cpp/test/test_rclcpp_launch.py new file mode 100644 index 00000000..6fa89645 --- /dev/null +++ b/rmw_zenoh_cpp/test/test_rclcpp_launch.py @@ -0,0 +1,87 @@ +# Copyright 2024 Open Source Robotics Foundation, Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +import sys +import signal +import subprocess +import time +import unittest + +import launch +import launch.actions +import launch_ros.actions +import launch_testing.actions +import launch_testing.markers +import pytest + + +proc_env = os.environ.copy() +proc_env['PYTHONUNBUFFERED'] = '1' +proc_env['RMW_IMPLEMENTATION'] = 'rmw_zenoh_cpp' + +@pytest.mark.launch_test +@launch_testing.markers.keep_alive +def generate_test_description(): + + + dut_process = launch.actions.ExecuteProcess( + cmd=[ + 'colcon', + 'test', + '--packages-select', + 'test_rclcpp', + '--retest-until-pass', + '2', + ], + shell=True, + env=proc_env, + ) + + return launch.LaunchDescription([ + # rmw_zenohd, + dut_process, + # In tests where all of the procs under tests terminate themselves, it's necessary + # to add a dummy process not under test to keep the launch alive. launch_test + # provides a simple launch action that does this: + launch_testing.util.KeepAliveProc(), + launch_testing.actions.ReadyToTest() + ]) , {'dut_process': dut_process} + +class TestTerminatingProcessStops(unittest.TestCase): + + def test_proc_terminates(self, proc_info, dut_process): + cmd=[ + 'ros2', + 'run ', + 'rmw_zenoh_cpp', + 'rmw_zenohd', + ] + process_group = subprocess.Popen( + cmd, stdout=subprocess.PIPE, + shell=True, env=proc_env, preexec_fn=os.setsid) + print(f'Started rmw_zenohd with pid [{process_group.pid}]') + + proc_info.assertWaitForShutdown(process=dut_process, timeout=400) + + os.killpg(os.getpgid(process_group.pid), signal.SIGTERM) + + +# These tests are run after the processes in generate_test_description() have shutdown. +@launch_testing.post_shutdown_test() +class TestShutdown(unittest.TestCase): + + def test_exit_codes(self, proc_info): + """Check if the processes exited normally.""" + launch_testing.asserts.assertExitCodes(proc_info) From d2b0bdf4931b96996f34ca641fb916eadde32030 Mon Sep 17 00:00:00 2001 From: CihatAltiparmak Date: Tue, 27 Aug 2024 06:49:51 +0300 Subject: [PATCH 02/13] Some modifications from zenoh_router usage (not completed) --- rmw_zenoh_cpp/test/test_rclcpp_launch.py | 28 ++++++------------------ 1 file changed, 7 insertions(+), 21 deletions(-) diff --git a/rmw_zenoh_cpp/test/test_rclcpp_launch.py b/rmw_zenoh_cpp/test/test_rclcpp_launch.py index 6fa89645..b4986414 100644 --- a/rmw_zenoh_cpp/test/test_rclcpp_launch.py +++ b/rmw_zenoh_cpp/test/test_rclcpp_launch.py @@ -28,13 +28,18 @@ proc_env = os.environ.copy() -proc_env['PYTHONUNBUFFERED'] = '1' proc_env['RMW_IMPLEMENTATION'] = 'rmw_zenoh_cpp' @pytest.mark.launch_test @launch_testing.markers.keep_alive def generate_test_description(): + zenoh_router = launch_ros.actions.Node( + name="zenoh_router", + package="rmw_zenoh_cpp", + executable="rmw_zenohd", + output="both", + ) dut_process = launch.actions.ExecuteProcess( cmd=[ @@ -50,7 +55,7 @@ def generate_test_description(): ) return launch.LaunchDescription([ - # rmw_zenohd, + zenoh_router, dut_process, # In tests where all of the procs under tests terminate themselves, it's necessary # to add a dummy process not under test to keep the launch alive. launch_test @@ -59,25 +64,6 @@ def generate_test_description(): launch_testing.actions.ReadyToTest() ]) , {'dut_process': dut_process} -class TestTerminatingProcessStops(unittest.TestCase): - - def test_proc_terminates(self, proc_info, dut_process): - cmd=[ - 'ros2', - 'run ', - 'rmw_zenoh_cpp', - 'rmw_zenohd', - ] - process_group = subprocess.Popen( - cmd, stdout=subprocess.PIPE, - shell=True, env=proc_env, preexec_fn=os.setsid) - print(f'Started rmw_zenohd with pid [{process_group.pid}]') - - proc_info.assertWaitForShutdown(process=dut_process, timeout=400) - - os.killpg(os.getpgid(process_group.pid), signal.SIGTERM) - - # These tests are run after the processes in generate_test_description() have shutdown. @launch_testing.post_shutdown_test() class TestShutdown(unittest.TestCase): From 9377fa47343f1c84735e91dbeb9267d4f77f80d5 Mon Sep 17 00:00:00 2001 From: CihatAltiparmak Date: Tue, 27 Aug 2024 14:26:34 +0300 Subject: [PATCH 03/13] test example --- rmw_zenoh_cpp/test/test_rclcpp_launch.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/rmw_zenoh_cpp/test/test_rclcpp_launch.py b/rmw_zenoh_cpp/test/test_rclcpp_launch.py index b4986414..63a17826 100644 --- a/rmw_zenoh_cpp/test/test_rclcpp_launch.py +++ b/rmw_zenoh_cpp/test/test_rclcpp_launch.py @@ -35,10 +35,10 @@ def generate_test_description(): zenoh_router = launch_ros.actions.Node( - name="zenoh_router", package="rmw_zenoh_cpp", executable="rmw_zenohd", output="both", + env=proc_env ) dut_process = launch.actions.ExecuteProcess( @@ -46,7 +46,7 @@ def generate_test_description(): 'colcon', 'test', '--packages-select', - 'test_rclcpp', + 'rcl', '--retest-until-pass', '2', ], @@ -64,6 +64,10 @@ def generate_test_description(): launch_testing.actions.ReadyToTest() ]) , {'dut_process': dut_process} +class TestTerminatingProcessStops(unittest.TestCase): + def test_proc_terminates(self, proc_info, dut_process): + proc_info.assertWaitForShutdown(process=dut_process, timeout=400) + # These tests are run after the processes in generate_test_description() have shutdown. @launch_testing.post_shutdown_test() class TestShutdown(unittest.TestCase): From dbccd7c074c916df872bf9500cd1a27cb74204fb Mon Sep 17 00:00:00 2001 From: CihatAltiparmak Date: Wed, 28 Aug 2024 23:16:14 +0300 Subject: [PATCH 04/13] Integrated system test into CI --- .github/workflows/build.yaml | 12 ++++++++++++ rmw_zenoh_cpp/CMakeLists.txt | 3 +++ rmw_zenoh_cpp/package.xml | 1 + ...t_rclcpp_launch.py => rclcpp_integration.test.py} | 10 ++++++++-- 4 files changed, 24 insertions(+), 2 deletions(-) rename rmw_zenoh_cpp/test/{test_rclcpp_launch.py => rclcpp_integration.test.py} (88%) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 8829ee50..50e0daaf 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -28,12 +28,16 @@ jobs: BUILD_TYPE: binary env: ROS2_REPOS_FILE_URL: 'https://raw.githubusercontent.com/ros2/ros2/${{ matrix.ROS_DISTRO }}/ros2.repos' + RMW_MIDDLEWARE_TEST_PACKAGES: 'test_rclcpp rcl' runs-on: ubuntu-latest container: image: ${{ matrix.BUILD_TYPE == 'binary' && format('ros:{0}-ros-base', matrix.ROS_DISTRO) || 'ubuntu:noble' }} steps: - uses: ros-tooling/setup-ros@v0.7 if: ${{ matrix.BUILD_TYPE == 'source' }} + with: + use-ros2-testing: true + required-ros-distributions: ${{ matrix.ROS_DISTRO }} - 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 @@ -42,7 +46,15 @@ jobs: uses: ros-tooling/action-ros-ci@v0.3 with: package-name: | + ${{ matrix.BUILD_TYPE == 'source' && env.RMW_MIDDLEWARE_TEST_PACKAGES || '' }} 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 || '' }} + skip-tests: true + - name: Run system_tests + if: ${{ matrix.BUILD_TYPE == 'source' }} + run: | + cd ${{ steps.action-ros-ci.outputs.ros-workspace-directory-name }} + . install/setup.sh + launch_test install/rmw_zenoh_cpp/test/rclcpp_integration.test.py workspace_directory:=`pwd .` diff --git a/rmw_zenoh_cpp/CMakeLists.txt b/rmw_zenoh_cpp/CMakeLists.txt index d2145006..2ee7e148 100644 --- a/rmw_zenoh_cpp/CMakeLists.txt +++ b/rmw_zenoh_cpp/CMakeLists.txt @@ -97,6 +97,9 @@ if(BUILD_TESTING) ament_lint_cmake() ament_uncrustify(EXCLUDE ${_linter_excludes}) ament_xmllint() + + install(FILES test/rclcpp_integration.test.py + DESTINATION test) endif() install( diff --git a/rmw_zenoh_cpp/package.xml b/rmw_zenoh_cpp/package.xml index 3da4920d..3c8e1404 100644 --- a/rmw_zenoh_cpp/package.xml +++ b/rmw_zenoh_cpp/package.xml @@ -25,6 +25,7 @@ rosidl_typesupport_fastrtps_cpp rmw + ament_index_python ament_lint_auto ament_lint_common diff --git a/rmw_zenoh_cpp/test/test_rclcpp_launch.py b/rmw_zenoh_cpp/test/rclcpp_integration.test.py similarity index 88% rename from rmw_zenoh_cpp/test/test_rclcpp_launch.py rename to rmw_zenoh_cpp/test/rclcpp_integration.test.py index 63a17826..5c4f96ad 100644 --- a/rmw_zenoh_cpp/test/test_rclcpp_launch.py +++ b/rmw_zenoh_cpp/test/rclcpp_integration.test.py @@ -21,6 +21,7 @@ import launch import launch.actions +import launch.substitutions import launch_ros.actions import launch_testing.actions import launch_testing.markers @@ -34,6 +35,9 @@ @launch_testing.markers.keep_alive def generate_test_description(): + workspace_directory = launch.substitutions.LaunchConfiguration('workspace_directory') + workspace_directory_arg = launch.actions.DeclareLaunchArgument('workspace_directory') + zenoh_router = launch_ros.actions.Node( package="rmw_zenoh_cpp", executable="rmw_zenohd", @@ -46,15 +50,17 @@ def generate_test_description(): 'colcon', 'test', '--packages-select', - 'rcl', + 'test_rclcpp', '--retest-until-pass', '2', ], shell=True, env=proc_env, + cwd=workspace_directory ) return launch.LaunchDescription([ + workspace_directory_arg, zenoh_router, dut_process, # In tests where all of the procs under tests terminate themselves, it's necessary @@ -66,7 +72,7 @@ def generate_test_description(): class TestTerminatingProcessStops(unittest.TestCase): def test_proc_terminates(self, proc_info, dut_process): - proc_info.assertWaitForShutdown(process=dut_process, timeout=400) + proc_info.assertWaitForShutdown(process=dut_process, timeout=400000) # These tests are run after the processes in generate_test_description() have shutdown. @launch_testing.post_shutdown_test() From 163dd5af3549a81b5e4dc2772b3c457f988fb83a Mon Sep 17 00:00:00 2001 From: CihatAltiparmak Date: Thu, 5 Sep 2024 09:16:17 +0300 Subject: [PATCH 05/13] Removed workspace argument and added upload artifact --- .github/workflows/build.yaml | 7 ++++++- rmw_zenoh_cpp/test/rclcpp_integration.test.py | 8 +------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 50e0daaf..92a47fde 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -57,4 +57,9 @@ jobs: run: | cd ${{ steps.action-ros-ci.outputs.ros-workspace-directory-name }} . install/setup.sh - launch_test install/rmw_zenoh_cpp/test/rclcpp_integration.test.py workspace_directory:=`pwd .` + launch_test install/rmw_zenoh_cpp/test/rclcpp_integration.test.py + - uses: actions/upload-artifact@v1 + if: ${{ matrix.BUILD_TYPE == 'source' }} + with: + name: colcon-logs + path: ${{ steps.action-ros-ci.outputs.ros-workspace-directory-name }}/log diff --git a/rmw_zenoh_cpp/test/rclcpp_integration.test.py b/rmw_zenoh_cpp/test/rclcpp_integration.test.py index 5c4f96ad..55c27a76 100644 --- a/rmw_zenoh_cpp/test/rclcpp_integration.test.py +++ b/rmw_zenoh_cpp/test/rclcpp_integration.test.py @@ -21,7 +21,6 @@ import launch import launch.actions -import launch.substitutions import launch_ros.actions import launch_testing.actions import launch_testing.markers @@ -34,10 +33,7 @@ @pytest.mark.launch_test @launch_testing.markers.keep_alive def generate_test_description(): - - workspace_directory = launch.substitutions.LaunchConfiguration('workspace_directory') - workspace_directory_arg = launch.actions.DeclareLaunchArgument('workspace_directory') - + zenoh_router = launch_ros.actions.Node( package="rmw_zenoh_cpp", executable="rmw_zenohd", @@ -56,11 +52,9 @@ def generate_test_description(): ], shell=True, env=proc_env, - cwd=workspace_directory ) return launch.LaunchDescription([ - workspace_directory_arg, zenoh_router, dut_process, # In tests where all of the procs under tests terminate themselves, it's necessary From f09bc1be6dbb2e3df80b1c953604412cf1c20453 Mon Sep 17 00:00:00 2001 From: CihatAltiparmak Date: Tue, 10 Sep 2024 03:04:17 +0300 Subject: [PATCH 06/13] Made source build ignored when github event is not scheduled --- .github/workflows/build.yaml | 21 +++++++------------ rmw_zenoh_cpp/CMakeLists.txt | 2 +- ....test.py => rmw_zenoh_integration.test.py} | 0 3 files changed, 8 insertions(+), 15 deletions(-) rename rmw_zenoh_cpp/test/{rclcpp_integration.test.py => rmw_zenoh_integration.test.py} (100%) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 92a47fde..00c4aa57 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -16,16 +16,10 @@ jobs: strategy: fail-fast: false matrix: - 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 + ROS_DISTRO: [rolling, jazzy, iron] + BUILD_TYPE: [source, binary] + exclude: + - BUILD_TYPE: ${{ github.event_name != 'schedule' && 'source' || '' }} env: ROS2_REPOS_FILE_URL: 'https://raw.githubusercontent.com/ros2/ros2/${{ matrix.ROS_DISTRO }}/ros2.repos' RMW_MIDDLEWARE_TEST_PACKAGES: 'test_rclcpp rcl' @@ -37,7 +31,6 @@ jobs: if: ${{ matrix.BUILD_TYPE == 'source' }} with: use-ros2-testing: true - required-ros-distributions: ${{ matrix.ROS_DISTRO }} - 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 @@ -57,9 +50,9 @@ jobs: run: | cd ${{ steps.action-ros-ci.outputs.ros-workspace-directory-name }} . install/setup.sh - launch_test install/rmw_zenoh_cpp/test/rclcpp_integration.test.py - - uses: actions/upload-artifact@v1 + launch_test install/rmw_zenoh_cpp/test/rmw_zenoh_integration.test.py + - uses: actions/upload-artifact@v4 if: ${{ matrix.BUILD_TYPE == 'source' }} with: name: colcon-logs - path: ${{ steps.action-ros-ci.outputs.ros-workspace-directory-name }}/log + path: ${{ steps.action-ros-ci.outputs.ros-workspace-directory-name }}/log \ No newline at end of file diff --git a/rmw_zenoh_cpp/CMakeLists.txt b/rmw_zenoh_cpp/CMakeLists.txt index 6eccf1c2..73731e98 100644 --- a/rmw_zenoh_cpp/CMakeLists.txt +++ b/rmw_zenoh_cpp/CMakeLists.txt @@ -98,7 +98,7 @@ if(BUILD_TESTING) ament_uncrustify(EXCLUDE ${_linter_excludes}) ament_xmllint() - install(FILES test/rclcpp_integration.test.py + install(FILES test/rmw_zenoh_integration.test.py DESTINATION test) endif() diff --git a/rmw_zenoh_cpp/test/rclcpp_integration.test.py b/rmw_zenoh_cpp/test/rmw_zenoh_integration.test.py similarity index 100% rename from rmw_zenoh_cpp/test/rclcpp_integration.test.py rename to rmw_zenoh_cpp/test/rmw_zenoh_integration.test.py From 0e0aaeeb99e747bb44ce3808ba4b6a824ef2c4c0 Mon Sep 17 00:00:00 2001 From: CihatAltiparmak Date: Tue, 10 Sep 2024 03:38:21 +0300 Subject: [PATCH 07/13] Added selected_system_tests argument to integration test --- rmw_zenoh_cpp/test/rmw_zenoh_integration.test.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/rmw_zenoh_cpp/test/rmw_zenoh_integration.test.py b/rmw_zenoh_cpp/test/rmw_zenoh_integration.test.py index 55c27a76..e7577160 100644 --- a/rmw_zenoh_cpp/test/rmw_zenoh_integration.test.py +++ b/rmw_zenoh_cpp/test/rmw_zenoh_integration.test.py @@ -21,6 +21,7 @@ import launch import launch.actions +import launch.substitutions import launch_ros.actions import launch_testing.actions import launch_testing.markers @@ -34,6 +35,11 @@ @launch_testing.markers.keep_alive def generate_test_description(): + selected_system_tests = launch.substitutions.LaunchConfiguration('selected_system_tests') + selected_system_tests_arg = launch.actions.DeclareLaunchArgument( + 'selected_system_tests', + default_value="test_rclcpp test_communication") + zenoh_router = launch_ros.actions.Node( package="rmw_zenoh_cpp", executable="rmw_zenohd", @@ -46,7 +52,7 @@ def generate_test_description(): 'colcon', 'test', '--packages-select', - 'test_rclcpp', + selected_system_tests, '--retest-until-pass', '2', ], @@ -55,6 +61,7 @@ def generate_test_description(): ) return launch.LaunchDescription([ + selected_system_tests_arg, zenoh_router, dut_process, # In tests where all of the procs under tests terminate themselves, it's necessary From 9aa262d72a6f0be049bce6df0bd8956fde73f1a8 Mon Sep 17 00:00:00 2001 From: CihatAltiparmak Date: Tue, 10 Sep 2024 03:40:34 +0300 Subject: [PATCH 08/13] Fixed test package --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 00c4aa57..f75a0621 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -22,7 +22,7 @@ jobs: - BUILD_TYPE: ${{ github.event_name != 'schedule' && 'source' || '' }} env: ROS2_REPOS_FILE_URL: 'https://raw.githubusercontent.com/ros2/ros2/${{ matrix.ROS_DISTRO }}/ros2.repos' - RMW_MIDDLEWARE_TEST_PACKAGES: 'test_rclcpp rcl' + RMW_MIDDLEWARE_TEST_PACKAGES: 'test_rclcpp test_communication' runs-on: ubuntu-latest container: image: ${{ matrix.BUILD_TYPE == 'binary' && format('ros:{0}-ros-base', matrix.ROS_DISTRO) || 'ubuntu:noble' }} From 8b8a9b5df269286c6b32aad9834ee9e067392bb9 Mon Sep 17 00:00:00 2001 From: CihatAltiparmak Date: Tue, 10 Sep 2024 03:55:26 +0300 Subject: [PATCH 09/13] Added -DSKIP_MULTI_RMW_TESTS=ON to colcon defaults --- .github/workflows/build.yaml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index f75a0621..3bddce66 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -42,6 +42,14 @@ jobs: ${{ matrix.BUILD_TYPE == 'source' && env.RMW_MIDDLEWARE_TEST_PACKAGES || '' }} rmw_zenoh_cpp zenoh_c_vendor + colcon-defaults: | + { + "build": { + "cmake-args": [ + "-DSKIP_MULTI_RMW_TESTS=ON" + ] + } + } target-ros2-distro: ${{ matrix.ROS_DISTRO }} vcs-repo-file-url: ${{ matrix.BUILD_TYPE == 'source' && env.ROS2_REPOS_FILE_URL || '' }} skip-tests: true From ffd1f28107e5f6662809df769888b340bf61deb0 Mon Sep 17 00:00:00 2001 From: CihatAltiparmak Date: Wed, 18 Sep 2024 16:22:53 +0300 Subject: [PATCH 10/13] Parametrized system_test_packages for launch and decreased upload-artifact github-action's version --- .github/workflows/build.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 3bddce66..c5523910 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -58,8 +58,8 @@ jobs: run: | cd ${{ steps.action-ros-ci.outputs.ros-workspace-directory-name }} . install/setup.sh - launch_test install/rmw_zenoh_cpp/test/rmw_zenoh_integration.test.py - - uses: actions/upload-artifact@v4 + launch_test install/rmw_zenoh_cpp/test/rmw_zenoh_integration.test.py 'selected_system_tests:=${{ env.RMW_MIDDLEWARE_TEST_PACKAGES }}' + - uses: actions/upload-artifact@v3 if: ${{ matrix.BUILD_TYPE == 'source' }} with: name: colcon-logs From 42d20829bf88ad92935b52911b0d7c536c47c3cc Mon Sep 17 00:00:00 2001 From: CihatAltiparmak Date: Wed, 18 Sep 2024 16:26:14 +0300 Subject: [PATCH 11/13] [Don't merge] Committed to test build-from-source --- .github/workflows/build.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index c5523910..0cc92b66 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -19,10 +19,10 @@ jobs: ROS_DISTRO: [rolling, jazzy, iron] BUILD_TYPE: [source, binary] exclude: - - BUILD_TYPE: ${{ github.event_name != 'schedule' && 'source' || '' }} + - BUILD_TYPE: ${{ github.event_name == 'schedule' && 'source' || '' }} env: ROS2_REPOS_FILE_URL: 'https://raw.githubusercontent.com/ros2/ros2/${{ matrix.ROS_DISTRO }}/ros2.repos' - RMW_MIDDLEWARE_TEST_PACKAGES: 'test_rclcpp test_communication' + RMW_MIDDLEWARE_TEST_PACKAGES: 'test_rclcpp test_communication rcl' runs-on: ubuntu-latest container: image: ${{ matrix.BUILD_TYPE == 'binary' && format('ros:{0}-ros-base', matrix.ROS_DISTRO) || 'ubuntu:noble' }} From c326da645f83f859e0b723a26bcca41ccbcf29b8 Mon Sep 17 00:00:00 2001 From: CihatAltiparmak Date: Wed, 18 Sep 2024 19:59:37 +0300 Subject: [PATCH 12/13] Uploaded logs for each ros distro version Signed-off-by: CihatAltiparmak --- .github/workflows/build.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 0cc92b66..f70ebbf6 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -62,5 +62,5 @@ jobs: - uses: actions/upload-artifact@v3 if: ${{ matrix.BUILD_TYPE == 'source' }} with: - name: colcon-logs - path: ${{ steps.action-ros-ci.outputs.ros-workspace-directory-name }}/log \ No newline at end of file + name: colcon-logs-${{ matrix.ROS_DISTRO }}-latest + path: ${{ steps.action-ros-ci.outputs.ros-workspace-directory-name }}/log From 5f12c6bd1f5cf11b6b5782f67f2e0d0b51a22d6d Mon Sep 17 00:00:00 2001 From: CihatAltiparmak Date: Thu, 19 Sep 2024 11:34:14 +0300 Subject: [PATCH 13/13] Reverted condition Signed-off-by: CihatAltiparmak --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index f70ebbf6..e6242318 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -19,7 +19,7 @@ jobs: ROS_DISTRO: [rolling, jazzy, iron] BUILD_TYPE: [source, binary] exclude: - - BUILD_TYPE: ${{ github.event_name == 'schedule' && 'source' || '' }} + - BUILD_TYPE: ${{ github.event_name != 'schedule' && 'source' || '' }} env: ROS2_REPOS_FILE_URL: 'https://raw.githubusercontent.com/ros2/ros2/${{ matrix.ROS_DISTRO }}/ros2.repos' RMW_MIDDLEWARE_TEST_PACKAGES: 'test_rclcpp test_communication rcl'