Add ROS 2 integration tests
We'd like to release roslibjs v2 with a lot of improvements (asynchronous Services, ROS 2 Actions, ROS 2 TFClient), but we don't yet have any integration tests in CI for the ROS 2 support. Once this is done, we can release v2!
What do you think about using setup-ros instead of the current approach followed for ROS 1?
That makes sense to me. I figure we'll eventually remove the ROS 1 jobs once ROS 1 is deprecated, so we don't need to create a CI matrix that covers both ROS 1 and ROS 2 - they can be separate jobs with separate implementations.
Hey @EzraBrooks I'd like to work on this issue can you share more details on what things need to be added for tests or CI for ROS?
The bulk of the work is to add ROS 2 versions of test/build.bash and .github/workflows/main.yml.
It's been going on for a while, and now it's stuck? When will this milestone be released
As you can see from the milestone, this is the last remaining issue. Feel free to submit a PR!
I've been trying to implement the test for ROS2, I am still having issue with all TFClient related test. How should we proceed ?
I have a branch running ros2 and the last version of rosbridge_suite on jazzy, I only need the test to be fully translated
I think we need to upstream @pac48's tf2_web_republisher version that works on ROS 2 to get that working. Perhaps he could open a PR and @sea-bass or @bjsowa could review that, since they're more C++-focused than I am?
PR here: https://github.com/RobotWebTools/tf2_web_republisher/pull/35
(thanks Paul)
I think we need to upstream @pac48's tf2_web_republisher version that works on ROS 2 to get that working. Perhaps he could open a PR and @sea-bass or @bjsowa could review that, since they're more C++-focused than I am?
Sure, I'll try to review it this week if that can help with the release of new roslibjs version.
I've implemented most of the ROS2 CI. But whatever I try, I can't make most of the test works. Can someone take a look and maybe we can find what I am missing ?
https://github.com/FlorianLebecque/roslibjs/tree/develop-ros2
Test that are expected to fail :
- Fibonaci
- TFClient