-
Notifications
You must be signed in to change notification settings - Fork 145
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
ExecuteProcess cmd parameter treatment 'The passed value needs to be a dictionary in YAML format' #382
Comments
def generate_launch_description():
return launch.LaunchDescription([
launch.actions.ExecuteProcess(
name='fake_joint_calibration',
cmd = ['ros2', 'topic', 'pub', '/calibrated', 'std_msgs/Bool', '"{data: True}"'],
output = 'screen',
shell='True'
)
]) That should work. Closing, as it's unrelated to launch. |
Hi, I know this topic is closed but I was having the same problem and this is the only place I found anything about it whatsoever. I think it's worth noting for anyone else who might come along that I tried your suggestion:
...and still got the 'The passed value needs to be a dictionary in YAML format' error. But changing the 'cmd' line to the following (i.e. removing the double quotes) ended up working:
|
Thank you @jeremy-shannon -- I spent about an hour trying to work this out, trying various combinations of |
Nice! I’m glad to hear it helped. 😁 |
Bug report
Ubuntu 18.04
Eloquent
Fix parsing of cmd line arguments in XML and yaml file #379 , but should occur in the master branch Only allow ExecuteProcess actions to execute once #375
Steps to reproduce issue
ros2 launch mypkgname mylaunchfile.launch.py
Expected behavior
The same as running the following on the cmdline
Output:
Actual behavior
Output gives:
Additional information
I'd also like to know how the cmd parameters work; I've had other related weirdness with my parameters being treated like yaml. Why is that so and is there a workaround for this?
The text was updated successfully, but these errors were encountered: