Fix Aphlict exit status
Summary: Fixes T6998. Based on https://groups.google.com/d/msg/nodejs/zF7GEoPccqw/n26c6gPaluwJ. Test Plan: Ran Aphlict and forced an error. Saw error messages in the logs and also saw a non-zero exit status. Reviewers: #blessed_reviewers, epriestley Reviewed By: #blessed_reviewers, epriestley Subscribers: Korvin, epriestley Maniphest Tasks: T6998 Differential Revision: https://secure.phabricator.com/D11456
This commit is contained in:
@@ -43,6 +43,12 @@ var debug = new JX.AphlictLog()
|
|||||||
|
|
||||||
var config = parse_command_line_arguments(process.argv);
|
var config = parse_command_line_arguments(process.argv);
|
||||||
|
|
||||||
|
function set_exit_code(code) {
|
||||||
|
process.on('exit', function() {
|
||||||
|
process.exit(code);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
process.on('uncaughtException', function(err) {
|
process.on('uncaughtException', function(err) {
|
||||||
var context = null;
|
var context = null;
|
||||||
if (err.code == 'EACCES' && err.path == config.log) {
|
if (err.code == 'EACCES' && err.path == config.log) {
|
||||||
@@ -61,6 +67,7 @@ process.on('uncaughtException', function(err) {
|
|||||||
message.push(err.stack);
|
message.push(err.stack);
|
||||||
|
|
||||||
debug.log(message.join('\n\n'));
|
debug.log(message.join('\n\n'));
|
||||||
|
set_exit_code(1);
|
||||||
});
|
});
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@@ -98,7 +105,8 @@ if (config.log) {
|
|||||||
// servers.
|
// servers.
|
||||||
if (config.test) {
|
if (config.test) {
|
||||||
debug.log('Configuration test OK.');
|
debug.log('Configuration test OK.');
|
||||||
process.exit(0);
|
set_exit_code(0);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var server;
|
var server;
|
||||||
|
|||||||
Reference in New Issue
Block a user