srs/gradle-node-plugin

CTRL+C does not kill underlying nodejs server

Globegitter opened this issue · 4 comments

I am having a simple app created with https://github.com/facebook/create-react-app that I am using with this plugin. To start it I am running gradle yarn_run_start which starts a nodejs dev server with hot module reload etc. That all works fine, but when I exit out of it via CTRL+C and then later start the server again it reproducibly complains that the port is still open, i.e. the server was not killed through CTRL+C - I suppose SIGINT is not propagated correctly? Is there a way to make sure this happens?

nahue commented

Any ideas? i can work on a solution but i dont know where to start looking.

May just be a generic gradle issue with no good solution (other than maybe using --no-daemon flag)
https://discuss.gradle.org/t/exec-task-and-killing-processes/6189
a docker plugin has same issue as well
gradle/gradle#8025

nahue commented

Indeed.. adding --no-daemon solves the issue. It seems that the node server thread is managed by the gradle daemon.. and stopping the task is not enough to kill it