Closed wep21 closed 2 years ago
I am thinking we should just move Rolling to Jammy (and not maintain a Focal version). It's a hard switch for Rolling right, it's not trying to maintain both Focal and Jammy compatibility?
It's a hard switch for Rolling right, it's not trying to maintain both Focal and Jammy compatibility?
I think we should might want to have both: Rolling will target the same platform(s) as Humble, and Humble will include Focal as Tier 3: https://github.com/ros-infrastructure/rep/pull/342.
Thanks for the clarification - this looks fine to me then
However, I don't think I can merge this yet, as the build doesn't succeed. I know there's a lot of red there, but I'm looking at Jammy specifically, and it is unable to install ros-rolling-ros-base
. I checked http://packages.ros.org/ros2/ubuntu/dists/jammy/main/binary-amd64/Packages - and I don't think that the ROS packages are yet built/uploaded for Jammy. I checked in ros-testing as well and the packages are not there yet either.
Please note https://github.com/ros-tooling/setup-ros-docker/pull/44 for at least a bit of the failures. All builds will fail because they try to push to dockerhub afterwards, and the change from your fork of course doesn't have the secrets to do so. I don't have time to update it so that PRs don't try to do the push step, so when OSRF starts to provide Rolling Jammy binaries, I'll do a quick visual verification that the build works up to the point of trying to push.
I think we ~should~ might want to have both: Rolling will target the same platform(s) as Humble, and Humble will include Focal as Tier 3: ros-infrastructure/rep#342.
This is correct, but to add further detail, once Humble is released and we update the REP to include I-turtle's platform list, Rolling will start targeting I-turtle's platforms so Rolling will not have Focal as a tier 3 platform indefinitely.
Note: Rolling will be synced on Monday, February 21, 2022 (Los Angeles). https://discourse.ros.org/t/preparing-for-rolling-sync-2022-02-22/24399
I think we should add jammy
here to build the base ubuntu-jammy
image: https://github.com/wep21/setup-ros-docker/blob/016f1c247fa3a52aa23a51b7f689cf56229d2af7/.github/workflows/build.yml#L17.
and we'll need to make sure it doesn't try installing rti-connext-dds-6.0.1
on Bionic, since it's not available: https://github.com/ros-tooling/setup-ros-docker/runs/5296600180?check_suite_focus=true#step:3:637.
It's also trying to use http://packages.ros.org/ros/ubuntu jammy Release
as a repository, but there are no ROS 1 packages for Jammy.
E: The repository 'http://packages.ros.org/ros/ubuntu jammy Release' does not have a Release file.
See: https://github.com/ros-tooling/setup-ros-docker/runs/5305368034?check_suite_focus=true#step:3:606
This should probably be split into ROS 1 and ROS 2 (ROS1_APT_HTTP_REPO_URLS
, ROS2_APT_HTTP_REPO_URLS
): https://github.com/ros-tooling/setup-ros-docker/blob/b7dd0260620ee3efac6c22070299f4caf4d152db/setup-ros.sh#L37-L39 Or have other logic to avoid trying to use ROS_APT_REPO_URLS=http://packages.ros.org/ros
on Jammy.
Dropping the ROS 1 repositories from the buildfarm configuration was one of the changes made when bringing up Jammy on the official buildfarm https://github.com/ros2/ros_buildfarm_config/pull/212/files#r809507949
The absence isn't an oversight, there is no plan to create jammy
or bullseye
distributions in the ROS 1 repositories.
@emersonknapp @christophebedard Now, we can go ahead to merge?
The ubuntu-bionic
job is failing :/ but I think we can merge this and fix it in another PR (I can do it if you prefer).
It's trying to install rti-connext-dds-6.0.1
: https://github.com/ros-tooling/setup-ros-docker/runs/5308138260?check_suite_focus=true#step:3:626. This is because ROS_DISTRO
is set to none
so it always installs rti-connext-dds-6.0.1
and always only adds the http://packages.ros.org/ros2/ubuntu
repo, and this condition in the setup-ros.sh
script thinks it's a ROS 2 distro.
Since we provide base ubuntu-*
images (which are not used as a base for the ubuntu-*-ros-*
images), I think the APT repo step should depend on the Ubuntu distro (i.e., only add http://packages.ros.org/ros on Bionic, add both /ros and /ros2 on Focal, and only add /ros2 on Jammy). Then RTI_CONNEXT_DDS
can be set depending on ROS_DISTRO
, but it needs to not install it if the value is set to none
.
Thanks @wep21!
Closes https://github.com/ros-tooling/action-ros-ci/issues/722