adding check before instantiating the runner
This commit is contained in:
parent
1231dbcebc
commit
cac789fed3
@ -166,9 +166,7 @@ var Worker = (function(){
|
|||||||
proto.startRunners = function(args){
|
proto.startRunners = function(args){
|
||||||
var worker = this;
|
var worker = this;
|
||||||
|
|
||||||
args.count = args.count || 0;
|
console.log('Starting runners on', worker.name, worker.ip);
|
||||||
|
|
||||||
console.log('Starting runners on', worker.name, worker.ip, args.count);
|
|
||||||
// dont make runners on out dated workers
|
// dont make runners on out dated workers
|
||||||
if(!worker || worker.settings.image > worker.image.id || worker.isBuildingRunners){
|
if(!worker || worker.settings.image > worker.image.id || worker.isBuildingRunners){
|
||||||
if(worker) console.log(`Blocked worker(${worker.image.id}), current image ${worker.settings.image}. Building: ${worker.isBuildingRunners}`)
|
if(worker) console.log(`Blocked worker(${worker.image.id}), current image ${worker.settings.image}. Building: ${worker.isBuildingRunners}`)
|
||||||
@ -182,44 +180,51 @@ var Worker = (function(){
|
|||||||
|
|
||||||
worker.isBuildingRunners = true;
|
worker.isBuildingRunners = true;
|
||||||
worker.ramPercentUsed(function(usedMemPercent){
|
worker.ramPercentUsed(function(usedMemPercent){
|
||||||
|
console.log(arguments);
|
||||||
if(usedMemPercent > args.stopPercent ){
|
if(usedMemPercent > args.stopPercent ){
|
||||||
worker.isBuildingRunners = false;
|
worker.isBuildingRunners = false;
|
||||||
console.log('---using', String(usedMemPercent).trim(),
|
console.log('---using', String(usedMemPercent).trim(),
|
||||||
'percent memory, stopping runner creation!', worker.availrunners.length,
|
'percent memory, stopping runner creation!', worker.availrunners.length,
|
||||||
'created on ', worker.name
|
'created on ', worker.name
|
||||||
);
|
);
|
||||||
args.onDone(args);
|
args.onDone(worker, args);
|
||||||
return ;
|
return ;
|
||||||
}
|
} else if (usedMemPercent !== ""){
|
||||||
console.log('+++using', String(usedMemPercent).trim(),
|
console.log('+++using', String(usedMemPercent).trim(),
|
||||||
'percent memory on ', worker.name,
|
'percent memory on ', worker.name,
|
||||||
'Runners:', worker.availrunners.length,
|
'Runners:', worker.availrunners.length,
|
||||||
`Used? ${usedMemPercent}`
|
`Used? ${usedMemPercent}`
|
||||||
|
|
||||||
);
|
);
|
||||||
var name = 'crunner-' + utils.uuid();
|
var name = 'crunner-' + utils.uuid();
|
||||||
// console.log('Free ram check passed!')
|
// console.log('Free ram check passed!')
|
||||||
lxc.startEphemeral(name, 'crunner0', worker.ip, function(data){
|
lxc.startEphemeral(name, 'crunner0', worker.ip, function(data){
|
||||||
if(data.ip){
|
if(data.ip){
|
||||||
console.log('started runner on', worker.name)
|
console.log('started runner on', worker.name);
|
||||||
|
|
||||||
var runner = Runner.create({
|
var runner = Runner.create({
|
||||||
"ip": data.ip,
|
"ip": data.ip,
|
||||||
"name": name,
|
"name": name,
|
||||||
"worker": worker,
|
"worker": worker,
|
||||||
"label": worker.name + ':' + name
|
"label": worker.name + ':' + name
|
||||||
});
|
});
|
||||||
|
|
||||||
args.onStart(worker, args);
|
args.onStart(worker, args);
|
||||||
|
|
||||||
worker.availrunners.push(runner);
|
worker.availrunners.push(runner);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return setTimeout(function(){
|
||||||
|
worker.isBuildingRunners = false;
|
||||||
|
worker.startRunners(args);
|
||||||
|
}, 0);
|
||||||
|
});
|
||||||
|
} else {
|
||||||
return setTimeout(function(){
|
return setTimeout(function(){
|
||||||
worker.isBuildingRunners = false;
|
worker.isBuildingRunners = false;
|
||||||
worker.startRunners(args);
|
worker.startRunners(args);
|
||||||
}, 0);
|
}, 0);
|
||||||
});
|
}
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -291,7 +296,7 @@ var WorkerCollection = (function(){
|
|||||||
worker.register();
|
worker.register();
|
||||||
args.onStart = function(){};
|
args.onStart = function(){};
|
||||||
},
|
},
|
||||||
onDone: function(args){
|
onDone: function(worker, args){
|
||||||
console.log("Seeded runners on", worker.name);
|
console.log("Seeded runners on", worker.name);
|
||||||
workers.currentCreating--;
|
workers.currentCreating--;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user