[ros2/nightly] narrowing down skipped rosdep keys#245
[ros2/nightly] narrowing down skipped rosdep keys#245mikaelarguedas wants to merge 4 commits intomasterfrom
Conversation
Signed-off-by: Mikael Arguedas <mikael.arguedas@gmail.com>
|
Tested locally: |
Signed-off-by: Mikael Arguedas <mikael.arguedas@gmail.com>
Signed-off-by: Mikael Arguedas <mikael.arguedas@gmail.com>
|
Looking a bit more into it, it still installs Drawback: the archives provide a compiled Edit: Reverting 17cc064 for now |
This reverts commit 17cc064.
|
Following-up of #245 (comment), we have a couple options:
I have a preference for the last option, but am looking for feedback. |
|
The last option may be tricky during migration, when folks still wish to test nightly, but no released package have been made for that distro yet to install. (aside: when do we bump the ROS_DISTRO env? After packages for the next destor are released?) I'm not sure I recall all the consequences of using If need be, we could push the sed logic down into a script to patch the archive is extracted. Another reason to keep the
Out of curiosity, could we could fix this upstream in how the nightly archive is distributed? |
As we cannot use the new rosdistro during rosdep invocation before the distro has been added to
In standard installations it doesnt make a difference (as all the ros packages are installed under
The current nightly is pretty far away from the
Yeah I agree that stay the goal
Editing entrypoint in place somehow feels wrong. Though alternativs are for consumers to either provide their own entrypoint, or provide their own scripts at docker run invocation.
Can you clarify what you're referring to here? The paths in the setup files? or the fact that it tries to source the melodic workspace? If the former, I agree that it would be good to have a more friendly hardcoded path, then it's hard to pick what it should point to. A way to work around it here would be to override the |
I'm not so much concerned with added downstream ros2 content, but more about matching at least ros2 ros-core tag environment setup and defaults.
Agreed, we should change source to use
Could you give an example of that in this case? At first, that doesn't sound to bad as a workaround. |
From your strikeout comments, I'm still not sure why you reverted it. |
Agreed that's where using the released setup files without modifying them would be preferred IMO
👍 change is now upstream https://github.com/osrf/docker_templates/blob/bf2fe4f280def333aa9a6e34b0c9bb954a27a597/docker_templates/templates/docker_images_ros2/source/ros_entrypoint.sh#L5
I reverted it so that we keep installing at least one package depending on
I believe this is how it's meant to be used to avoid users to have to modify the files. This makes me think there's nothing to change in the setup files from the archive, but just point The original file looks like: # since a plain shell script can't determine its own path when being sourced
# either use the provided COLCON_CURRENT_PREFIX
# or fall back to the build time prefix (if it exists)
_colcon_prefix_chain_sh_COLCON_CURRENT_PREFIX=/home/jenkins-agent/workspace/packaging_linux/ws/install
if [ ! -z "$COLCON_CURRENT_PREFIX" ]; then
_colcon_prefix_chain_sh_COLCON_CURRENT_PREFIX="$COLCON_CURRENT_PREFIX"
elif [ ! -d "$_colcon_prefix_chain_sh_COLCON_CURRENT_PREFIX" ]; then
echo "The build time path \"$_colcon_prefix_chain_sh_COLCON_CURRENT_PREFIX\" doesn't exist. Either source a script for a different shell or set the environment variable \"COLCON_CURRENT_PREFIX\" explicitly." 1>&2
unset _colcon_prefix_chain_sh_COLCON_CURRENT_PREFIX
return 1
fiIf we set the But it will not solve the fact that it'll try to source the underlay melodic workspace # source chained prefixes
# setting COLCON_CURRENT_PREFIX avoids relying on the build time prefix of the sourced script
COLCON_CURRENT_PREFIX="/opt/ros/melodic"
_colcon_prefix_chain_sh_source_script "$COLCON_CURRENT_PREFIX/local_setup.sh"For that reason I believe it is better to used the released setup scripts rather than the ones provided in the archive. |
|
Thanks for the informative breakdown!
Should we then explicitly install this
👍
👍 |
👍 that is the better way of handling it. As this requires to modify the template in general, I didnt make the change in this PR but in osrf/docker_templates#55 (comment) and related #247 |
|
Continuing with #247 |
These packages are provided in the nightly archives so they don't need to be skipped as they are in the src.