ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Build failed in Jenkins with KeyError

asked 2015-10-22 02:11:19 -0600

Sabrina gravatar image


my package 'innok_heros_gazebo' fails to build in Jenkins with KeyError.

Here some snippets of the traceback:

See <,UBUNTU_PARAM=trusty,label=devel/2/changes>

/* ... snip ... */

Get build dependencies of repo list
Get the dependencies of source folder /tmp/test_repositories/src_repository
In folder /tmp/test_repositories/src_repository, found packages: innok_heros_gazebo
Install build dependencies of repo list: catkin, gazebo_plugins, gazebo_ros, gazebo_ros_control, innok_heros_description, robot_state_publisher, xacro, rviz
Could not find innok_heros_description in keys. Have keys DB [key, abb, 

*/...snip... a long list of keys where innok_heros_description is not mentioned/* 

Traceback (most recent call last):
    File "< innok_heros_gazebo/ARCH_PARAM=amd64,UBUNTU_PARAM=trusty,label=devel/ws/jenkins_scripts/devel",> line 43, in  <module>
    File "<,UBUNTU_PARAM=trusty,label=devel/ws/jenkins_scripts/devel",> line 37, in main
    File "<,UBUNTU_PARAM=trusty,label=devel/ws/jenkins_scripts/",> line 69, in test_repositories
        sudo, no_chroot)
    File "<,UBUNTU_PARAM=trusty,label=devel/ws/jenkins_scripts/",> line 134, in _test_repositories
        apt_get_install(repo_build_dependencies, rosdep_resolver, sudo)
    File "<,UBUNTU_PARAM=trusty,label=devel/ws/jenkins_scripts/",> line 28, in apt_get_install
        pkgs = rosdep.to_aptlist(pkgs)
    File "<,UBUNTU_PARAM=trusty,label=devel/ws/jenkins_scripts/",> line 44, in to_aptlist
        for a in self.to_apt(r):
    File "<,UBUNTU_PARAM=trusty,label=devel/ws/jenkins_scripts/",> line 57, in to_apt
        return self.r2a[ros_entry]
KeyError: 'innok_heros_description'

'innok_heros_description' is a run dependency of 'innok_heros_gazebo' and I added both packages to indigo/distribution.yaml without the release tag because I still have to perform the prerelease tests. Will the missing key 'innok_heros_descripion' appear in the key DB when the package is released?



edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2015-10-22 08:56:54 -0600

Dirk Thomas gravatar image

The devel job of innok_heros_gazebo tries to install all it's dependencies from Debian packages. Since innok_heros_description has not yet been released it fails with the above error. Once innok_heros_description has been released the devel job of innok_heros_gazebo will pass.

Just go ahead with the local prereleases to ensure that both packages can be built successfully and then release them in dependency order.

edit flag offensive delete link more


Thank you for your answer. This clarifies everything. Now I have one more question: After releasing the first package, how can I see that the next package can be released? After the first build in Jenkins was successful? When the package is in the ros-shadow-fixed repository?

Sabrina gravatar image Sabrina  ( 2015-10-22 09:59:41 -0600 )edit

You can release a package once all dependencies are "released" in the distribution file which means as soon as the rosdistro PR generated by bloom has been merged. The packages do not have to be built yet in order to release downstream packages.

Dirk Thomas gravatar image Dirk Thomas  ( 2015-10-22 10:18:04 -0600 )edit

I see. Thank you!

Sabrina gravatar image Sabrina  ( 2015-10-22 11:13:56 -0600 )edit

Question Tools



Asked: 2015-10-22 02:11:19 -0600

Seen: 509 times

Last updated: Oct 22 '15