Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
/**
* Bootstrapper for remote-daemon.js
*
* Triggered by first run of sicksync client, through ssh connection
* This file should only run on your devbox, (IE, in the data center).
*
*/
console.log('starting daemon');
var forever = require('forever'),
daemonFilePath = './sicksync-dev/lib/remote-daemon.js';
// TODO: change these files paths, right now they output to user's home location on remote server
// due to the fact that the process.cwd() is /home/cdopuch
var daemon = forever.startDaemon(
daemonFilePath,
{
// NOTE: these log files are truncated on each new run
// TODO: rotate the logs so we can save old logs
'logFile': 'new-remote-daemon.log',
'outFile': 'new-remote-daemon-stdout.log',
'errFile': 'new-remote-daemon-stderr.log',
'max': 1,
'uid': 'remote-daemon'
}
);
var server = forever.startServer(daemon);
// process.stdout.write('[remote.js] up and waiting');
console.log('[remote.js] up and waiting');
// TODO: change these files paths, right now they output to user's home location on remote server
// due to the fact that the process.cwd() is /home/cdopuch
var daemon = forever.startDaemon(
daemonFilePath,
{
// NOTE: these log files are truncated on each new run
// TODO: rotate the logs so we can save old logs
'logFile': 'new-remote-daemon.log',
'outFile': 'new-remote-daemon-stdout.log',
'errFile': 'new-remote-daemon-stderr.log',
'max': 1,
'uid': 'remote-daemon'
}
);
var server = forever.startServer(daemon);
// process.stdout.write('[remote.js] up and waiting');
console.log('[remote.js] up and waiting');
else{
res.writeHead(200);
}
res.end(data);
});
}),
project,
io = require('socket.io').listen(http);
clientsrcfolder = "/../client";
io.set('log level', 1); // reduce logging
http.listen(parameters.ServerPort);
console.log('[OS]:'+os.platform());
if(os.platform().indexOf('win') === -1 || os.platform() === 'darwin'){
project = new (require('forever').Monitor) (require('path').join(__dirname,'GmeProject.js'),{'options':[parameters.ProjectPort,parameters.ProjectName,parameters.BranchName]});
project.start();
}
else{
project = require('child_process').spawn('cmd');
project.stdout.on('data', function (data) {
console.log('[P-stdout] ' + data);
if(data.toString().indexOf("no more clients, quit") !== -1){
console.log('[P-stdout] restarting project');
project.stdin.write('node --debug GmeProject.js '+parameters.ProjectPort+" "+parameters.ProjectName+" "+parameters.BranchName+'\n');
}
});
project.stderr.on('data', function (data) {
console.log('[P-stderr] ' + data);
});
project.stdin.write('node --debug GmeProject.js '+parameters.ProjectPort+" "+parameters.ProjectName+" "+parameters.BranchName+'\n');
}
}
else{
res.writeHead(200);
}
res.end(data);
});
}),
project,
io = require('socket.io').listen(http);
clientsrcfolder = "/../client";
io.set('log level', 1); // reduce logging
http.listen(parameters.ServerPort);
if(os.platform().indexOf('win') === -1){
project = new (require('forever').Monitor) (require('path').join(__dirname,'proj3ct.js'),{'options':[parameters.ProjectPort,parameters.ProjectName,parameters.BranchName]});
project.start();
}
else{
project = require('child_process').spawn('cmd');
project.stdout.on('data', function (data) {
console.log('[P-stdout] ' + data);
if(data.toString().indexOf("no more clients, quit") !== -1){
console.log('[P-stdout] restarting project');
project.stdin.write('node --debug proj3ct.js '+parameters.ProjectPort+" "+parameters.ProjectName+" "+parameters.BranchName+'\n');
}
});
project.stderr.on('data', function (data) {
console.log('[P-stderr] ' + data);
});
project.stdin.write('node --debug proj3ct.js '+parameters.ProjectPort+" "+parameters.ProjectName+" "+parameters.BranchName+'\n');
}
getBalancerIndices(function (err, balancers) {
if (err) {
callback && callback('Failed to stop loadbalancer daemons - ' + err);
} else {
for (var i = 0; i < balancers.length; i++) {
forever.stop(balancers[i]);
}
var maxShutDownFailures = 20;
var shutDownFailures = 0;
var shutDownInterval = 500;
var exitWhenComplete = function () {
// Only terminate current daemon when all balancers
// have been killed.
getBalancerIndices(function (err, activeBalancers) {
if (err) {
callback && callback('Failed to stop loadbalancer daemon - ' + err);
} else if (++shutDownFailures > maxShutDownFailures) {
callback && callback('Failed to stop loadbalancer daemon');
} else {
if (activeBalancers.length) {
setTimeout(exitWhenComplete, shutDownInterval);
#!/usr/bin/env node
// if appstate has not already been saved,
// prompts user for credentials and saves appstate
// runs fbash as a daemon using forever
var forever = require('forever');
var readlineSync = require('readline-sync');
var fs = require('fs');
var login = require('facebook-chat-api');
var path = require('path');
var homedir = require('homedir')();
// if fbash processes are already running, stop them
forever.list(false, function(err, data) {
if (err) throw err;
if (data == null) return;
for (var i = 0; i < data.length; i++) {
if (data[i].uid === 'fbash'){
forever.stop(i);
}
}
});
var fbashDir = path.join(homedir, '.fbash');
// ensures that the .fbash/ directory exists in the correct location
if (!fs.existsSync(fbashDir)) {
fs.mkdirSync(fbashDir);
}
report.reset(function(error){
if(error){
logging.error('Failed to reset report document.');
logging.error(error);
return;
}
serverProcess = forever.start(['./bin/lowkick', 'publish', 'test/tmp-config.json'], {
silent: true
});
serverProcess.on('start', function(process, data){
var url = 'http://' + configdoc.server.host + ':' + configdoc.server.port,
startTS = +(new Date);
(function waitServerToStart(){
request.get(url, function(error){
if(error && +(new Date)-startTS
forever.stopAll();
process.exit(1);
});
if (process.argv[3] === "--use-container-ip") {
require('dns').lookup(require('os').hostname(), function (err, addr, fam) {
forever.start('examples/chatWorker/index.js', {
silent: false,
max: 1,
env: {
CHATUP_HOSTNAME: addr
}
});
})
} else {
var workerDaemon = forever.start('examples/chatWorker/index.js', {
silent: false,
max: 1
});
}
process.on('exit', function() {
forever.stopAll();
});
} else {
console.error('First arg should be "dispatcher" or "worker"');
console.error("Got:", process.argv);
process.exit(1);
}
function stop() {
var forever = require('forever'),
fsx = require('fs-extra');
console.log('Stopping Lazo!...');
if (fsx.existsSync(lazoPath + '/lazo.pid')) {
try {
forever.stop('lib/server/app.js', true);
forever.cleanUp();
fsx.remove(lazoPath + '/lazo.pid');
console.log('Lazo! stopped');
} catch (err) {
console.log('Error stopping Lazo!');
process.exit(1);
}
}
}
function stop() {
var forever = require('forever'),
fsx = require('fs-extra');
console.log('Stopping Lazo!...');
if (fsx.existsSync(lazoPath + '/lazo.pid')) {
try {
forever.stop('lib/server/app.js', true);
forever.cleanUp();
fsx.remove(lazoPath + '/lazo.pid');
console.log('Lazo! stopped');
} catch (err) {
console.log('Error stopping Lazo!');
process.exit(1);
}
}
}