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

Support for releasing ros_gzharmonic unofficial packages for Humble/Iron #994

Closed
17 tasks done
j-rivero opened this issue Aug 29, 2023 · 3 comments
Closed
17 tasks done
Assignees

Comments

@j-rivero
Copy link
Contributor

j-rivero commented Aug 29, 2023

Motivation

Same as #895 but changing Garden by Harmonic and supporting ROS 2 Iron/Humble.

Roadmap:

After stable release:

  • Create an official ros_ign-gzharmonic-release repository
  • Repeat the process
    • Clone branches and tags from a local ros2-gbp/ros_ign-release checkout
    • git remote add gzharmonic [email protected]:gazebo-release/ros_gz-gzharmonic-release.git && git push --all gzharmonic && git push --tags gzharmonic
    • Rename bloom metadata
      • GZ_RELEASE_TO_CONFLICT=garden ./release-tools/bloom/ros_gz/rename-ros_gz-pkgs.bash harmonic iron
    • Modify tracks gazebo-release/ros_gz-gzharmonic-release@6f7cd8d
  • Release into stable
    •   ./bloom_from_special_env.bash \
           iron \
           harmonic \
        https://raw.githubusercontent.com/osrf/osrf-rosdep/master/gz/replace_fortress_with_harmonic/00-replace-gz-fortress-with-harmonic.list```
      
    • ./ros_gz-release.py.bash 0.246.0 https://github.com/gazebo-release/ros_gz-gzharmonic-release iron <token> -r 1
  • DSL support for testing Iron GzHarmonic

Testing:

Install the Gazebo prerelease repository
apt-get remove ros-iron-ros-gzgarden* # conflicting
apt-get update && apt-get install ros-iron-ros-gzharmonic

Known problems:

There could be conflicts with ros-iron-ros-gzgarden packages.

@j-rivero j-rivero self-assigned this Aug 29, 2023
@azeey azeey self-assigned this Sep 11, 2023
@azeey
Copy link
Contributor

azeey commented Sep 12, 2023

I've tested both ros-iron-ros-gzharmonic and ros-iron-ros-gzgarden and they both seem to work well. As you mentioned, they do have a conflict:

dpkg error
dpkg: error processing archive /tmp/apt-dpkg-install-XbnKhE/0-ros-iron-ros-gzgarden-interfaces_0.245.0-1003jammy_amd64.deb (--unpack):
 trying to overwrite '/opt/ros/iron/include/ros_gz_interfaces/ros_gz_interfaces/msg/contact.h', which is also in package ros-iron-ros-gzharmonic-interfaces 0.246.0-2jammy
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
Selecting previously unselected package ros-iron-ros-gzgarden-bridge.
Preparing to unpack .../1-ros-iron-ros-gzgarden-bridge_0.245.0-1003jammy_amd64.deb ...
Unpacking ros-iron-ros-gzgarden-bridge (0.245.0-1003jammy) ...
dpkg: error processing archive /tmp/apt-dpkg-install-XbnKhE/1-ros-iron-ros-gzgarden-bridge_0.245.0-1003jammy_amd64.deb (--unpack):
 trying to overwrite '/opt/ros/iron/include/ros_gz_bridge/bridge_config.hpp', which is also in package ros-iron-ros-gzharmonic-bridge 0.246.0-2jammy
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
Selecting previously unselected package ros-iron-ros-gzgarden-image.
Preparing to unpack .../2-ros-iron-ros-gzgarden-image_0.245.0-1003jammy_amd64.deb ...
Unpacking ros-iron-ros-gzgarden-image (0.245.0-1003jammy) ...
dpkg: error processing archive /tmp/apt-dpkg-install-XbnKhE/2-ros-iron-ros-gzgarden-image_0.245.0-1003jammy_amd64.deb (--unpack):
 trying to overwrite '/opt/ros/iron/lib/ros_gz_image/image_bridge', which is also in package ros-iron-ros-gzharmonic-image 0.246.0-2jammy
Selecting previously unselected package ros-iron-ros-gzgarden-sim.
Preparing to unpack .../3-ros-iron-ros-gzgarden-sim_0.245.0-1003jammy_amd64.deb ...
Unpacking ros-iron-ros-gzgarden-sim (0.245.0-1003jammy) ...
dpkg: error processing archive /tmp/apt-dpkg-install-XbnKhE/3-ros-iron-ros-gzgarden-sim_0.245.0-1003jammy_amd64.deb (--unpack):
 trying to overwrite '/opt/ros/iron/include/ros_gz_sim/Stopwatch.hpp', which is also in package ros-iron-ros-gzharmonic-sim 0.246.0-2jammy
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
Selecting previously unselected package ros-iron-ros-gzgarden-sim-demos.
Preparing to unpack .../4-ros-iron-ros-gzgarden-sim-demos_0.245.0-1003jammy_amd64.deb ...
Unpacking ros-iron-ros-gzgarden-sim-demos (0.245.0-1003jammy) ...
dpkg: error processing archive /tmp/apt-dpkg-install-XbnKhE/4-ros-iron-ros-gzgarden-sim-demos_0.245.0-1003jammy_amd64.deb (--unpack):
 trying to overwrite '/opt/ros/iron/share/ament_index/resource_index/package_run_dependencies/ros_gz_sim_demos', which is also in package ros-iron-ros-gzharmonic-sim-demos 0.246.0-2jammy
Selecting previously unselected package ros-iron-ros-gzgarden.
Preparing to unpack .../5-ros-iron-ros-gzgarden_0.245.0-1003jammy_amd64.deb ...
Unpacking ros-iron-ros-gzgarden (0.245.0-1003jammy) ...
dpkg: error processing archive /tmp/apt-dpkg-install-XbnKhE/5-ros-iron-ros-gzgarden_0.245.0-1003jammy_amd64.deb (--unpack):
 trying to overwrite '/opt/ros/iron/share/ament_index/resource_index/package_run_dependencies/ros_gz', which is also in package ros-iron-ros-gzharmonic 0.246.0-2jammy
Errors were encountered while processing:
 /tmp/apt-dpkg-install-XbnKhE/0-ros-iron-ros-gzgarden-interfaces_0.245.0-1003jammy_amd64.deb
 /tmp/apt-dpkg-install-XbnKhE/1-ros-iron-ros-gzgarden-bridge_0.245.0-1003jammy_amd64.deb
 /tmp/apt-dpkg-install-XbnKhE/2-ros-iron-ros-gzgarden-image_0.245.0-1003jammy_amd64.deb
 /tmp/apt-dpkg-install-XbnKhE/3-ros-iron-ros-gzgarden-sim_0.245.0-1003jammy_amd64.deb
 /tmp/apt-dpkg-install-XbnKhE/4-ros-iron-ros-gzgarden-sim-demos_0.245.0-1003jammy_amd64.deb
 /tmp/apt-dpkg-install-XbnKhE/5-ros-iron-ros-gzgarden_0.245.0-1003jammy_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

I think it would be best if we declare the conflict in the package so users aren't faced with the scary error message from dpkg.

@j-rivero
Copy link
Contributor Author

I've tested both ros-iron-ros-gzharmonic and ros-iron-ros-gzgarden and they both seem to work well. As you mentioned, they do have a conflict:
dpkg error

I think it would be best if we declare the conflict in the package so users aren't faced with the scary error message from dpkg.

In #1003 I've included the patch def8aa1 that should appear when we generate the stable version. Doing it for the existing repository was a bit more complicated.

@j-rivero
Copy link
Contributor Author

j-rivero commented Oct 6, 2023

Stable release out. All the documentation and CI in place.

@j-rivero j-rivero closed this as completed Oct 6, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants