Bloom - "Could not resolve rosdep key 'message_runtime'"
I am trying to build a package in a private Bloom repository with ROSDISTRO_INDEX_URL
pointing to a custom index.yaml
file. This works up until Bloom invokes rosdep
to resolve my package's dependencies.
I tried following the answer to a similar question from 2012:
sudo rm /etc/ros/rosdep/sources.list.d/20-default.list
sudo rosdep init
rosdep update
This did not change anything. I repeated the above with the latest versions of rosdep and Bloom in the Ubuntu APT repository (python-rosdep
and python-bloom
) and pip (rosdep
and bloom
) and got the same result.
Interestingly, it looks like the "hydro" line added in 09e4ae3ff3e8e81408127582c4b260718c679f6 was recently removed in 5e4a02a408361241a7158361ea2b228b08c0c671. This comment was added in its place:
# newer distributions (Groovy, Hydro, ...) must not be listed anymore, they are being fetched from the rosdistro index.yaml instead
Unfortunately, this does not seem to be the case. I can't rosdep resolve
any of the standard Hydro packages:
$ rosdep resolve message_generation
ERROR: no rosdep rule for 'message_generation'
This happens even if I am in a shell that freshly sourced /opt/ros/hydro/setup.bash
; i.e. ROSDISTRO_INDEX_URL
is not set.
Any suggestions?
Edit 1: Running rosdep update
fixes the issue when running with the default ROSDISTRO_INDEX_URL
.
Edit 2: To outline our use-case in a bit more detail:
We use ROS extensively across two robots---one robotic arm and one dual-arm mobile manipulator---and have accumulated a large collection of internal ROS packages. Most of our packages are open-source, but we have some hard constraints that prevent us from open-sourcing everything (e.g. includes on commercial/proprietary software, sponsor has IP restrictions, software associated with papers that are under peer review, etc).
We've been building Debians of our dry Fuerte packages with a custom Jenkins setup and are finally upgrading to Indigo. Our plan is to switch to Bloom to manage releases and a (potentially heavily modified) version of buildbot-ros as our internal build server.
Edit 3: See our discussion on @tfoote's comment below for the solution we arrived at.
What is the current status of this? Have buildfarm changes made this possible through other means (what are they?), or you still need your rosdep-generator script, or that needs to be updated for the latest system?
http://roscon.ros.org/2015/presentati... indicates rosdep-generator https://github.com/mikepurvis/rosdep-... is still part of the process.