-
Notifications
You must be signed in to change notification settings - Fork 97
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
Add supervisor scripts #1323
base: master
Are you sure you want to change the base?
Add supervisor scripts #1323
Conversation
if you'd like to use supervisor for startup script, please add them in jsk_robot_common with documentation. |
I don't understand how we can add it to jsk robot common. |
For example,
https://github.com/jsk-ros-pkg/jsk_robot/pull/1323/files#diff-aa816063b13da35cb458ecd455771c16c1816eacd19a8ddcdbe0262c45c3d123
is robot agnostic
maybe
https://github.com/jsk-ros-pkg/jsk_robot/pull/1323/files#diff-515a56a8278549ec3aba4f0fd4c24b0c6bd4328202e30653fee52d4f34db34a3
is too, but why you need to run roscore from supervisor, did you stop using
fetch's init script?
you can also consider writing install script for common package and
generate supervisor config for each robot ->
https://github.com/clearpathrobotics/robot_upstart/blob/noetic-devel/doc/index.rst
--
◉ Kei Okada
2021年2月18日(木) 11:19 Shingo Kitagawa <notifications@github.com>:
… I don't understand how we can add it to jsk robot common.
startup scripts or launch can be robot specific and cannot be common thing.
can you tell me how to do that?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#1323 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AADYNXA2MREPC4CZ2MNULBLS7R2LFANCNFSM4XYLQ7UA>
.
|
232e973
to
a5857b9
Compare
I cherry-pick the following commits |
400448b
to
8ac8629
Compare
Update $ rosrun jsk_fetch_startup install_supervisor.sh
backup /etc/supervisor/conf.d/jsk-app-scheduler.conf /etc/supervisor/conf.d/jsk-app-scheduler.conf.20210921_195354
copied jsk_fetch_startup/supervisor_scripts/jsk-app-scheduler.conf to /etc/supervisor/conf.d/jsk-app-scheduler.conf
backup /etc/supervisor/conf.d/jsk-dialog.conf /etc/supervisor/conf.d/jsk-dialog.conf.20210921_195354
copied jsk_fetch_startup/supervisor_scripts/jsk-dialog.conf to /etc/supervisor/conf.d/jsk-dialog.conf
backup /etc/supervisor/conf.d/jsk-dstat.conf /etc/supervisor/conf.d/jsk-dstat.conf.20210921_195354
copied jsk_fetch_startup/supervisor_scripts/jsk-dstat.conf to /etc/supervisor/conf.d/jsk-dstat.conf
backup /etc/supervisor/conf.d/jsk-fetch-startup.conf /etc/supervisor/conf.d/jsk-fetch-startup.conf.20210921_195354
copied jsk_fetch_startup/supervisor_scripts/jsk-fetch-startup.conf to /etc/supervisor/conf.d/jsk-fetch-startup.conf
backup /etc/supervisor/conf.d/jsk-gdrive.conf /etc/supervisor/conf.d/jsk-gdrive.conf.20210921_195354
copied jsk_fetch_startup/supervisor_scripts/jsk-gdrive.conf to /etc/supervisor/conf.d/jsk-gdrive.conf
backup /etc/supervisor/conf.d/jsk-human-pose-estimator.conf /etc/supervisor/conf.d/jsk-human-pose-estimator.conf.20210921_195354
copied jsk_fetch_startup/supervisor_scripts/jsk-human-pose-estimator.conf to /etc/supervisor/conf.d/jsk-human-pose-estimator.conf
backup /etc/supervisor/conf.d/jsk-log-wifi.conf /etc/supervisor/conf.d/jsk-log-wifi.conf.20210921_195354
copied jsk_fetch_startup/supervisor_scripts/jsk-log-wifi.conf to /etc/supervisor/conf.d/jsk-log-wifi.conf
backup /etc/supervisor/conf.d/jsk-network-monitor.conf /etc/supervisor/conf.d/jsk-network-monitor.conf.20210921_195354
copied jsk_fetch_startup/supervisor_scripts/jsk-network-monitor.conf to /etc/supervisor/conf.d/jsk-network-monitor.conf
backup /etc/supervisor/conf.d/jsk-object-detector.conf /etc/supervisor/conf.d/jsk-object-detector.conf.20210921_195354
copied jsk_fetch_startup/supervisor_scripts/jsk-object-detector.conf to /etc/supervisor/conf.d/jsk-object-detector.conf
backup /etc/supervisor/conf.d/robot.conf /etc/supervisor/conf.d/robot.conf.20210921_195354
copied jsk_fetch_startup/supervisor_scripts/robot.conf to /etc/supervisor/conf.d/robot.conf
backup /etc/supervisor/conf.d/roscore.conf /etc/supervisor/conf.d/roscore.conf.20210921_195354
copied jsk_fetch_startup/supervisor_scripts/roscore.conf to /etc/supervisor/conf.d/roscore.conf |
@708yamaguchi can you resolve the conflict? |
@708yamaguchi before you resolve conflicts, please clarify when you use upstart and when you start supervisor. |
@k-okada So, the point is But @sktometometo found I don't know which is better one, but I don't trust |
I see. if you do not use upstart script, please add explicitly on PR comments (#1208), directories(https://github.com/jsk-ros-pkg/jsk_robot/tree/master/jsk_fetch_robot/jsk_fetch_startup/upstart_scripts),
Choosing reliable system is important, but when you switch one system to another, The killer application is more important. And in robotics, killer apps means the behaivor/function of robot. In other words, something the robot can not achieve without new system. So, when you working on fundamental features, like auto-start script, put your goal on killer application for all robots (at least robots you're using right now, hopefully all robots in your lab) is important. Web ui is nice, really helpful for debugging, but it is "nice to have" feature in my opinion. Because it will not change a behavior of robot. It may help to develop new behavior of robot because of efficient debugging, but when we say "killer app", we need explicit benefit. Learning syntax of different system is hard, specially cronso if supervisor/systemd support cron-type timer job. It will make our life much simpler, But still, it seems "nice to have" feature and it seems hard to do that... I believe auto start script is very important, Every robot should provide it's service, just after rebooting, without help from developer to start script. for example
|
robot_upstartですが,systemdも対応しているということだったので,supervisorにも対応させました(https://github.com/clearpathrobotics/robot_upstart/pull/113). jsk_fetch_robot/jsk_fetch_startup/supervisor_scripts/jsk-human-pose-estimator.conf |
ちなみに,supervisorは立ち上げの順番の制御が出来ない,という理解は正しい?つまり,roscoreを立ち上げて,残りは |
coral系はcv-bridge-python3のおかげでfetch_bringup.launchにマージされたので、もう使っていないはずです |
自分の知る範囲ではsupervisorは起動の順番を決めることはできないと思います |
汚いですが、supervisorからはシェルスクリプトを立ち上げるようにして、その中で何らかの順番待ちをしてからroslaunchを立ち上げる、というのが自動化としてはいいのかなと思っています |
一時期はそれをしていたのですが,基本的に起動順番というのはroscore以外はあまりないですね. |
Co-authored-by: Koki Shinjo <sktometometo@gmail.com>
…d of setting ROS_HOSTNAME directory
このPRを更新しようと, @sktometometo できるだけはやく,Realsense L515 Head関連のPRを |
8173f07
to
519bc0a
Compare
とりあえず,現状で抽出できる範囲で抽出してPRにしました. あとaudible_warningについてはjsk_commonでmergeされていないので,一旦抜いています. |
I add supervisor config files for jsk_fetch_startup.
Also, I add script to copy the supervisor config files under /etc/supervisor/conf.d