Merge pull request #2447 from node-red/catch-more-signals

catch more signals to allow clean context flush on shutdown
This commit is contained in:
Nick O'Leary 2020-06-03 19:28:16 +01:00 committed by GitHub
commit e930098b51
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 10 additions and 1 deletions

View File

@ -429,11 +429,20 @@ httpsPromise.then(function(startupHttps) {
process.exit(1);
});
process.on('SIGINT', function () {
function exitWhenStopped() {
RED.stop().then(function() {
process.exit();
});
}
process.on('SIGINT', exitWhenStopped);
process.on('SIGTERM', exitWhenStopped);
process.on('SIGHUP', exitWhenStopped);
process.on('SIGUSR2', exitWhenStopped); // for nodemon restart
process.on('SIGBREAK', exitWhenStopped); // for windows ctrl-break
process.on('message', function(m) { // for PM2 under window with --shutdown-with-message
if (m === 'shutdown') { exitWhenStopped() }
});
}).catch(function(err) {
console.log("Failed to get https settings: " + err);
});