Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for installing ROS1/ROS2 releases #21

Closed
3 tasks done
thomas-moulard opened this issue Nov 19, 2019 · 7 comments
Closed
3 tasks done

Add support for installing ROS1/ROS2 releases #21

thomas-moulard opened this issue Nov 19, 2019 · 7 comments
Labels
enhancement New feature or request

Comments

@thomas-moulard
Copy link
Member

thomas-moulard commented Nov 19, 2019

Description

⚠️ Before starting, we need to understand if this is needed. If rosdep can properly pull dependencies, action-ros2-ci rosdep run may provide this to us "for free".

As a GH action user, I want to install a specific version of ROS1 using OSRF Debian packages.

This should be implemented by executing commands on the host machines, not through Docker (to keep the ROS1/ROS2 codepath similar for now, this can be re-evaluated down the road).

This requires splitting the current logic into multiple modules to prevent code duplication.

The API could look like this:

- uses: ros-tooling/setup-ros2@x.y.z
  with:
    - version: ros1-melodic
    - variant: desktop
    # etc.

Allowed values for version be: ros-melodic, ros-source, ros2-dashing, ros2-source, etc.
We would default to ros2-source to avoid breaking compatibility.

Test Plan

  • Unit test for new classes
  • End to end integration test

Documentation Plan

  • README.md update

Release Plan

  • setup-ros2 should be re-released

Acceptance Criteria

  • Code has been implemented, reviewed and merged.
  • Test plan has been completed
  • Release plan has been completed

Once all above items are checked, this story can be moved to done.

References

@zmichaels11
Copy link
Contributor

Duplicate? #20

@thomas-moulard
Copy link
Member Author

ROS1 != ros1_bridge

@zmichaels11
Copy link
Contributor

Oh, I was assuming that setup_ros2 would only use ROS1 through `ros1_bridge

@thomas-moulard
Copy link
Member Author

Unfortunately, ros1_bridge has a dependency on ROS1 and ROS2, and needs both installed.

@zmichaels11
Copy link
Contributor

zmichaels11 commented Nov 19, 2019

Instead, should there be an action called "setup_ros1"?
So the workflow would look like:

steps:
- uses: ros-tooling/setup-ros2
- uses: ros-tooling/setup-ros1
- uses: ros-tooling/action-ros2-ci

@thomas-moulard
Copy link
Member Author

Need to check, but I think that there is too much overlap between ROS1/ROS2 install to justify a different workflow, but I may be wrong (?).

@thomas-moulard thomas-moulard added the enhancement New feature or request label Nov 19, 2019
@thomas-moulard thomas-moulard changed the title Add ROS 1 support Add support for installing ROS1/ROS2 releases Nov 19, 2019
@thomas-moulard
Copy link
Member Author

This has been fixed by #30

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants