stuff
This commit is contained in:
parent
191851e2bb
commit
ccd128100a
@ -7,6 +7,10 @@ var request = require('request');
|
|||||||
var lxc = require('../lxc');
|
var lxc = require('../lxc');
|
||||||
var doapi = require('../doapi')();
|
var doapi = require('../doapi')();
|
||||||
|
|
||||||
|
var workerTag = clworker;
|
||||||
|
var workerShapID = '17575764'
|
||||||
|
|
||||||
|
|
||||||
var label2runner = {};
|
var label2runner = {};
|
||||||
var workers = [];
|
var workers = [];
|
||||||
var isCheckingWorkers = false;
|
var isCheckingWorkers = false;
|
||||||
@ -37,12 +41,12 @@ var checkDroplet = function(id, time){
|
|||||||
|
|
||||||
var workerCreate = function(){
|
var workerCreate = function(){
|
||||||
doapi.dropletCreate({
|
doapi.dropletCreate({
|
||||||
name: 'clworker'+(Math.random()*100).toString().replace('.',''),
|
name: 'clw'+workerShapID+'-'+(Math.random()*100).toString().replace('.',''),
|
||||||
image: '17575764'
|
image: '17575764'
|
||||||
}, function(data){
|
}, function(data){
|
||||||
data = JSON.parse(data);
|
data = JSON.parse(data);
|
||||||
dopletNewID = data.droplet.id;
|
dopletNewID = data.droplet.id;
|
||||||
doapi.dropletSetTag('clworker', data.droplet.id, function(data){
|
doapi.dropletSetTag('clw'+'17575764', data.droplet.id, function(data){
|
||||||
setTimeout(function(){checkDroplet(dopletNewID)}, 60000);
|
setTimeout(function(){checkDroplet(dopletNewID)}, 60000);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@ -56,8 +60,8 @@ var workerDestroy = function(worker){
|
|||||||
|
|
||||||
var checkWorkersBalance = function(){
|
var checkWorkersBalance = function(){
|
||||||
if(isCheckingWorkers) return false;
|
if(isCheckingWorkers) return false;
|
||||||
var changed = false;
|
|
||||||
isCheckingWorkers = true;
|
isCheckingWorkers = true;
|
||||||
|
var changed = false;
|
||||||
if(workers.length < 2){
|
if(workers.length < 2){
|
||||||
console.log('less then 2 workers, starting a droplet');
|
console.log('less then 2 workers, starting a droplet');
|
||||||
return workerCreate();
|
return workerCreate();
|
||||||
@ -133,7 +137,7 @@ var run = function(req, res, runner){
|
|||||||
|
|
||||||
return request.post(httpOptions, function(error, response, body){
|
return request.post(httpOptions, function(error, response, body){
|
||||||
// console.log('runner response:', arguments)
|
// console.log('runner response:', arguments)
|
||||||
console.log()
|
if(error) return false;
|
||||||
body = JSON.parse(body);
|
body = JSON.parse(body);
|
||||||
|
|
||||||
body['ip'] = getAvailrunner(runner).label;
|
body['ip'] = getAvailrunner(runner).label;
|
||||||
@ -164,11 +168,11 @@ var makeWorkerObj = function(worker){
|
|||||||
};
|
};
|
||||||
|
|
||||||
var initWorkers = function(){
|
var initWorkers = function(){
|
||||||
doapi.dropletsByTag('clworker', function(data){
|
doapi.dropletsByTag('clw'+workerShapID, function(data){
|
||||||
data = JSON.parse(data);
|
data = JSON.parse(data);
|
||||||
if(data.droplets.length === 0) return checkWorkersBalance();
|
if(data.droplets.length === 0) return checkWorkersBalance();
|
||||||
data['droplets'].forEach(function(value){
|
data['droplets'].forEach(function(worker){
|
||||||
startRunners(workers[workers.push(makeWorkerObj(value))-1]);
|
doapi.dropletDestroy(worker.id, function(){});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user