Closed jackkinsella closed 5 years ago
Hi,
When you sent SIGINT
to Overmind, it sends it to all running processes. The second SIGINT
will make Overmind to send SIGKILL
to all misbehaving processes. Also, if some processes misbehave after the first SIGINT
, Overmind will kill 'em all after a short timeout.
I had many headaches with webpack-dev-server
too, so I developed Overmind to make sure it will kill that bad boy properly :)
I noticed on macos that when I press Control-C (i.e. send SIGINT), overmind doesn't terminate every process (in particular, webpack-dev-server, which may well be misbehaving 😈 ). Instead overmind says "Interrupting..." but hangs forever. Running
overmind kill .overmind.sock
from another terminal session finishes the job perfectly though, even when it's already hanging.So I'm wondering if overmind is intended to respond to SIGINT or if
overmind kill
is always needed?Here was my Procfile (FYI Rails 5.2)
PS very cool piece of software. It addresses all the gripes I had with using Foreman in a modern Rails stack (logs messed up, challenging to inject a debugger)
Update: Pressing Control-C in
foreman
running the same Procfile terminates the processes as expected, though the output suggests that after failing with SIGINT, it escalated to SIGKILL five seconds later.