If ruby myapp.rb starts sinatra previewing at localhost:4567, how can I programatically stop/halt/kill it? Terminal command (other than Ctrl-C), or Rake tasks would be fine.
I need to incorporate this into a Rake task or terminal.
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
In myapp.rb, add this before sinatra starts:
When you want to kill it, do this in a shell:
Where
<pid>is the number outputted by myapp.rb. If you want to do it in ruby:Both of these will let sinatra run it’s exit routine. If you don’t want to type in the pid every time, have myapp.rb open a file and put it’s pid in it. Then when you want to stop it, read the file and use that. Example: