mvukov / rules_ros2

Build ROS 2 with Bazel
Apache License 2.0
85 stars 47 forks source link

ros2_ament_setup breaks when adding data dep to ros2_launch #71

Closed lalten closed 1 year ago

lalten commented 1 year ago

Just tried to update rules_ros2 from 013c02f56a7bfc4b50ccf048d5a58c42cf78a258 to 345ec1f602768429b80529e38440ad3ef2bbb3a1, but it looks like there is a regression where data deps must be valid deps as well:

load("@com_github_mvukov_rules_ros2//ros2:launch.bzl", "ros2_launch")
ros2_launch(
    name = "mynode_launch",
    data = ["config/the_config.yaml"],
    launch_file = "launch/my_launch.py",
    nodes = [":my_node"],
)

ERROR: /home/user/repo/package/BUILD:32:12: in deps attribute of ros2_ament_setup rule //package:mynode_launch_launch_ament_setup: source file '//package:config/the_config.yaml' is misplaced here (expected no files). Since this rule was created by the macro 'ros2_launch', the error might have been caused by the macro implementation

The config yaml file path is used in the launch_ros.actions.node.Node parameters argument.