2015-07-29 17:34:44 -07:00
|
|
|
'use strict';
|
|
|
|
|
2015-08-20 14:32:25 -07:00
|
|
|
var start = require('../lib/scaffold/start');
|
2015-08-20 15:41:41 -07:00
|
|
|
var path = require('path');
|
2015-08-20 14:32:25 -07:00
|
|
|
|
|
|
|
start({
|
|
|
|
path: process.cwd(),
|
|
|
|
config: {
|
2015-08-20 15:41:41 -07:00
|
|
|
datadir: process.env.BITCORENODE_DIR || path.resolve(process.env.HOME, '.bitcoin'),
|
2015-08-20 14:32:25 -07:00
|
|
|
network: process.env.BITCORENODE_NETWORK || 'livenet',
|
2015-08-20 15:41:41 -07:00
|
|
|
port: process.env.BITCORENODE_PORT || 3001
|
2015-08-11 14:16:04 -07:00
|
|
|
}
|
2015-07-29 17:34:44 -07:00
|
|
|
});
|
2015-08-20 14:50:14 -07:00
|
|
|
|
2015-08-21 08:53:20 -07:00
|
|
|
node.on('stopping', function() {
|
|
|
|
clearInterval(interval);
|
|
|
|
});
|
|
|
|
|
2015-08-20 14:50:14 -07:00
|
|
|
function exitHandler(options, err) {
|
|
|
|
if (err) {
|
|
|
|
log.error('uncaught exception:', err);
|
|
|
|
if(err.stack) {
|
|
|
|
console.log(err.stack);
|
|
|
|
}
|
|
|
|
process.exit(-1);
|
|
|
|
}
|
|
|
|
if (options.sigint) {
|
|
|
|
node.stop(function(err) {
|
|
|
|
if(err) {
|
|
|
|
log.error('Failed to stop services: ' + err);
|
|
|
|
return process.exit(1);
|
|
|
|
}
|
|
|
|
|
|
|
|
log.info('Halted');
|
|
|
|
process.exit(0);
|
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2015-08-21 12:39:46 -07:00
|
|
|
//catches uncaught exceptions
|
2015-08-21 08:53:20 -07:00
|
|
|
|
|
|
|
|
2015-08-20 14:50:14 -07:00
|
|
|
process.on('uncaughtException', exitHandler.bind(null, {exit:true}));
|
2015-08-21 12:39:46 -07:00
|
|
|
//catches ctrl+c event
|
|
|
|
process.on('SIGINT', exitHandler.bind(null, {sigint:true}));
|