This commit is contained in:
William Mantly 2016-05-31 00:06:18 -04:00
parent 0c46420715
commit d204f29526

View File

@ -42,7 +42,7 @@ var workers = (function(){
workers.create = function(){ workers.create = function(){
return doapi.dropletCreate({ return doapi.dropletCreate({
name: 'clw'+workerSnapID+'-'+(Math.random()*100).toString().slice(0,4), name: 'clw'+workerSnapID+'-'+(Math.random()*100).toString().slice(-3,-0),
image: '17575764' image: '17575764'
}, function(data){ }, function(data){
data = JSON.parse(data); data = JSON.parse(data);
@ -96,7 +96,7 @@ var workers = (function(){
stopPercent = stopPercent || 80; stopPercent = stopPercent || 80;
ramPercentUsed(worker.ip, function(usedMemPercent){ ramPercentUsed(worker.ip, function(usedMemPercent){
if(usedMemPercent < stopPercent ){ if(usedMemPercent < stopPercent ){
var name = 'crunner-'+(Math.random()*100).toString().slice(0,4); var name = 'crunner-'+(Math.random()*100).toString().slice(-3,-0);
return lxc.startEphemeral(name, 'crunner0', worker.ip, function(data){ return lxc.startEphemeral(name, 'crunner0', worker.ip, function(data){
if(!data.ip) return setTimeout(workers.startRunners(worker, newWorker),0); if(!data.ip) return setTimeout(workers.startRunners(worker, newWorker),0);
console.log('started runner on', worker.name) console.log('started runner on', worker.name)
@ -182,6 +182,17 @@ var lxcTimeout = function(runner, time){
}, time); }, time);
}; };
var getAvailrunner = function(runner){
for(let worker of workers){
if(worker.availrunners.length === 0) continue;
if(runner && runner.worker.index <= worker.index) break;
if(runner) runnerFree(runner);
return worker.getRunner();
}
if(runner) return runner;
return null;
};
var run = function(req, res, runner, count){ var run = function(req, res, runner, count){
count = count || 0; count = count || 0;
console.log('run start', count, runner); console.log('run start', count, runner);
@ -217,17 +228,6 @@ var run = function(req, res, runner, count){
}); });
}; };
var getAvailrunner = function(runner){
for(let worker of workers){
if(worker.availrunners.length === 0) continue;
if(runner && runner.worker.index <= worker.index) break;
if(runner) runnerFree(runner);
return worker.getRunner();
}
if(runner) return runner;
return null;
};
setTimeout(function(){ setTimeout(function(){
console.log('Starting balance checking in 30 seconds') console.log('Starting balance checking in 30 seconds')
setInterval(workers.checkBalance, 15000); setInterval(workers.checkBalance, 15000);