Closed cottsay closed 2 years ago
I'm not sure if the following code under release script is related (injecting ros_workspace somehow?) but we anyway probably want to explore the failings jobs before removing that from releasing (if related).
That takes care of ensuring that the Jenkins release jobs are aware of the implicit dependency - this change deals specifically with the Devel and CI jobs. I don't see a path where we would remove the referenced code.
I think that only scenario where this would break behavior is for devel jobs for a
cmake
(as opposed toament_cmake
) build type package which has implicit dependencies on packages inside the ROS FHS and thus would be unable to find them. But any package with its dependencies properly expressed should get ros_workspace pulled in transitively so let 'em rip I say!
Any repository which contains packages which depend on ament_package
and/or ament_cmake_core
and no other ROS packages could be broken by this change, but I'm not aware of any repositories which meet that criteria.
This will only affect ROS 2 builds.
At some point, it was necessary for CI and/or Devel jobs to unconditionally install the ros_workspace package. There are some recent developments and goals which would benefit from discontinuing this practice and letting the debians install the workspace as a dependency only when called for.
This is an exploratory PR to see what classes of jobs will fall over outright without this behavior. If things look okay, I'll try to come up with some more contrived cases to break things.