Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error with nodelet name on husky #498

Open
schmerl opened this issue Oct 20, 2021 · 0 comments
Open

Error with nodelet name on husky #498

schmerl opened this issue Oct 20, 2021 · 0 comments
Assignees

Comments

@schmerl
Copy link
Collaborator

schmerl commented Oct 20, 2021

Seem to be assuming nodelet names follow xx/yy when they don't always.

ERROR: failure occurred when recovering node sources
Traceback (most recent call last):

  File "/code/scripts/recover-node-models.py", line 377, in <module>
    main()
    └ <function main at 0x7f57d88c1700>

  File "/code/scripts/recover-node-models.py", line 371, in main
    recover_all(config)
    │           └ {'type': 'recovery', 'subject': 'husky', 'image': 'rosdiscover-experiments/husky:0.4.10', 'distro': 'melodic', 'build_command...
    └ <function recover_all at 0x7f57d88c14c0>

  File "/code/scripts/recover-node-models.py", line 222, in recover_all
    package_node_to_sources = obtain_node_sources(experiment_config)
                              │                   └ {'type': 'recovery', 'subject': 'husky', 'image': 'rosdiscover-experiments/husky:0.4.10', 'distro': 'melodic', 'build_command...
                              └ <function obtain_node_sources at 0x7f57d88c1430>

  File "/code/scripts/recover-node-models.py", line 203, in obtain_node_sources
    generate_node_sources(experiment_config)
    │                     └ {'type': 'recovery', 'subject': 'husky', 'image': 'rosdiscover-experiments/husky:0.4.10', 'distro': 'melodic', 'build_command...
    └ <function generate_node_sources at 0x7f57d88c13a0>

> File "/code/scripts/recover-node-models.py", line 186, in generate_node_sources
    rosdiscover.cli.main(args)
    │           │   │    └ ['sources', '--save-to', '/code/experiments/recovery/subjects/husky/rosdiscover-config-with-sources.yml', '/tmp/tmptogwiyg2.r...
    │           │   └ <function main at 0x7f57d88af550>
    │           └ <module 'rosdiscover.cli' from '/code/deps/rosdiscover/src/rosdiscover/cli.py'>
    └ <module 'rosdiscover' from '/code/deps/rosdiscover/src/rosdiscover/__init__.py'>

  File "/code/deps/rosdiscover/src/rosdiscover/cli.py", line 356, in main
    parsed_args.func(parsed_args)
    │           │    └ Namespace(config=<_io.TextIOWrapper name='/tmp/tmptogwiyg2.rosdiscover.yml' mode='r' encoding='UTF-8'>, save_to='/code/experi...
    │           └ <function sources at 0x7f57d88af3a0>
    └ Namespace(config=<_io.TextIOWrapper name='/tmp/tmptogwiyg2.rosdiscover.yml' mode='r' encoding='UTF-8'>, save_to='/code/experi...

  File "/code/deps/rosdiscover/src/rosdiscover/cli.py", line 212, in sources
    config_with_sources = config.with_recovered_node_sources()
                          │      └ <function Config.with_recovered_node_sources at 0x7f57d82eb160>
                          └ Config(image='rosdiscover-experiments/husky:0.4.10', sources=('/opt/ros/melodic/setup.bash', '/ros_ws/devel_isolated/setup.ba...

  File "/code/deps/rosdiscover/src/rosdiscover/config.py", line 235, in with_recovered_node_sources
    recovered_node_sources = self.find_node_sources()
                             │    └ <function Config.find_node_sources at 0x7f57d82eb1f0>
                             └ Config(image='rosdiscover-experiments/husky:0.4.10', sources=('/opt/ros/melodic/setup.bash', '/ros_ws/devel_isolated/setup.ba...

  File "/code/deps/rosdiscover/src/rosdiscover/config.py", line 261, in find_node_sources
    for package_cmake_targets in ros.cmake_targets_for_all_packages():
                                 │   └ <function ROS1.cmake_targets_for_all_packages at 0x7f57d8e02310>
                                 └ <roswire.ros1.ros1.ROS1 object at 0x7f57d89d3bb0>

  File "/code/deps/roswire/src/roswire/ros1/ros1.py", line 475, in cmake_targets_for_all_packages
    target_to_info = self.package_node_sources(package)
                     │    │                    └ ROS1Package(name='gmapping', path='/ros_ws/src/slam_gmapping/gmapping', messages=(), services=(), actions=())
                     │    └ <function ROS1.package_node_sources at 0x7f57d8e02280>
                     └ <roswire.ros1.ros1.ROS1 object at 0x7f57d89d3bb0>

  File "/code/deps/roswire/src/roswire/ros1/ros1.py", line 456, in package_node_sources
    return self.__package_source_extractor.get_cmake_info(
           └ <roswire.ros1.ros1.ROS1 object at 0x7f57d89d3bb0>

  File "/code/deps/roswire/src/roswire/ros1/source.py", line 37, in get_cmake_info
    return self._info_from_cmakelists(cmakelists_path, package)
           │    │                     │                └ ROS1Package(name='gmapping', path='/ros_ws/src/slam_gmapping/gmapping', messages=(), services=(), actions=())
           │    │                     └ '/ros_ws/src/slam_gmapping/gmapping/CMakeLists.txt'
           │    └ <function CMakeExtractor._info_from_cmakelists at 0x7f57d8e9cee0>
           └ ROS1PackageSourceExtractor(_app_instance=AppInstance(_dockerblade=Container(daemon=DockerDaemon(url='unix://var/run/docker.so...

  File "/code/deps/roswire/src/roswire/common/source.py", line 196, in _info_from_cmakelists
    nodelet_libraries = self.get_nodelet_entrypoints(package)
                        │    │                       └ ROS1Package(name='gmapping', path='/ros_ws/src/slam_gmapping/gmapping', messages=(), services=(), actions=())
                        │    └ <function CMakeExtractor.get_nodelet_entrypoints at 0x7f57d8e9ce50>
                        └ ROS1PackageSourceExtractor(_app_instance=AppInstance(_dockerblade=Container(daemon=DockerDaemon(url='unix://var/run/docker.so...

  File "/code/deps/roswire/src/roswire/common/source.py", line 188, in get_nodelet_entrypoints
    return {info.name.split('/')[1] : info for info in nodelet_info.libraries}
                                                       │            └ {NodeletLibrary(path='lib/libslam_gmapping_nodelet', name='SlamGMappingNodelet', type_='SlamGMappingNodelet')}
                                                       └ NodeletsInfo(libraries={NodeletLibrary(path='lib/libslam_gmapping_nodelet', name='SlamGMappingNodelet', type_='SlamGMappingNo...

  File "/code/deps/roswire/src/roswire/common/source.py", line 188, in <dictcomp>
    return {info.name.split('/')[1] : info for info in nodelet_info.libraries}
            │    │    │               │        └ NodeletLibrary(path='lib/libslam_gmapping_nodelet', name='SlamGMappingNodelet', type_='SlamGMappingNodelet')
            │    │    │               └ NodeletLibrary(path='lib/libslam_gmapping_nodelet', name='SlamGMappingNodelet', type_='SlamGMappingNodelet')
            │    │    └ <method 'split' of 'str' objects>
            │    └ 'SlamGMappingNodelet'
            └ NodeletLibrary(path='lib/libslam_gmapping_nodelet', name='SlamGMappingNodelet', type_='SlamGMappingNodelet')

IndexError: list index out of range```
@schmerl schmerl self-assigned this Oct 20, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant