Running SROS
I have installed SROS in a fresh Ubuntu 16.04 machine, following the instructions at http://wiki.ros.org/SROS/Installation/Ubuntu
..and I've added the following line to my .bashrc file:
source ~/sros/install/setup.bash
I was able to successfully run the key server from SROS by issuing a "sroskeyserver" command.
However, when running "sroscore" in a separate terminal I get the following error:
initializing node's keystore: /home/david/.ros/sros/keystore/nodes/roslaunch
all startup certificates are present
... logging to /home/david/.ros/log/3ccb8758-6ba5-11e7-97cb-080027727615/roslaunch-david-VirtualBox-8839.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://david-VirtualBox:35274/
ros_comm version 1.12.0
SUMMARY
========
PARAMETERS
* /rosdistro: kinetic
* /rosversion: 1.12.0
NODES
auto-starting new master
process[master]: started with pid [8851]
initializing node's keystore: /home/david/.ros/sros/keystore/nodes/master
all startup certificates are present
ROS_MASTER_URI=https://david-VirtualBox:11311/
ERROR: unable to retrieve /run_id from parameter server
The traceback for the exception was written to the log file
[master] killing on exit
You can find the master log HERE and the roslaunch log HERE.
@ruffsl, can you perhaps let me know what I am doing wrong?
Thank you in advance!
Asked by DavidPortugal on 2017-07-17 07:04:05 UTC
Answers
I think what you're missing here is first starting sroscore in training mode so that all the various topics/services and parameters can be learned during a bootstrap session i.e:
sroscore --policy_mode train
You can then sroslaunch the other nodes, then eventually take it all down and clean out the keystore and start again with out train mode when you want to enforce the new access control structure, and take the keyserver offline after that when you don't what to give out more keys.
From the SROS demo I did at ROSCon16, you can find the walkthrough I did to bootstrap my keystore.
You can rewatch/copy just the walk through commands in detail here:
https://asciinema.org/a/88519
Sorry for not yet writing out a tutorial for it, much of it is still changing, but the sros CLI and necessary environment is mostly documented at:
http://wiki.ros.org/SROS/CommandLineTools
http://wiki.ros.org/SROS/EnvironmentVariables
for sroscore in particular: http://wiki.ros.org/SROS/sroscore
I'm currently working on porting many of the ideas and lessons learned from SRSO1 to SROS2, but feel free to any followup questions.
Asked by ruffsl on 2017-07-20 13:57:10 UTC
Comments
Thank you @ruffsl. After testing in train mode, I strictly followed your walkthrough, and in the beginning I ran into some issues: apparently the "sed" command you use does not work in my system. I got this exception in sroscore.
Asked by DavidPortugal on 2017-07-21 07:01:50 UTC
So here are my steps (w/out "sed"):
rm -rf ~/.ros
sroskeyserver
sroscore --policy_mode train
sroslaunch rospy_tutorials talker_listener.launch (Ctrl+C / listener not working)
cd ~/.ros
rm -rf sros/keystore/nodes/
sroscore
sroslaunch rospy_tutorials talker_listener.launch (working!)
Asked by DavidPortugal on 2017-07-21 07:10:39 UTC
Good to hear!
Asked by ruffsl on 2017-07-21 19:03:34 UTC
Comments