updating command for startRunners to create cron job.
This commit is contained in:
parent
02e7869846
commit
e2371fe44e
@ -11,22 +11,23 @@ function usedMemoryPercent () {
|
|||||||
memory=$(expr $difference / $totalMemory);
|
memory=$(expr $difference / $totalMemory);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function buildRunners () {
|
||||||
|
|
||||||
usedMemoryPercent;
|
|
||||||
|
|
||||||
# maxMemoryUsage must be defined
|
|
||||||
until [[ $memory -gt $maxMemoryUsage ]]; do
|
|
||||||
|
|
||||||
runnerName="${namePrefix}${RANDOM}";
|
|
||||||
lxc-start-ephemeral -o $baseName -n $runnerName --union-type overlayfs -d;
|
|
||||||
|
|
||||||
if [[ $? -eq 0 ]]; then
|
|
||||||
runners="${runners};${runnerName}";
|
|
||||||
fi
|
|
||||||
usedMemoryPercent;
|
usedMemoryPercent;
|
||||||
done
|
|
||||||
|
|
||||||
echo $runners;
|
# maxMemoryUsage must be defined
|
||||||
|
until [[ $memory -gt $maxMemoryUsage ]]; do
|
||||||
|
|
||||||
|
runnerName="${namePrefix}${RANDOM}";
|
||||||
|
lxc-start-ephemeral -o $baseName -n $runnerName --union-type overlayfs -d;
|
||||||
|
|
||||||
|
if [[ $? -eq 0 ]]; then
|
||||||
|
runners="${runners};${runnerName}";
|
||||||
|
fi
|
||||||
|
usedMemoryPercent;
|
||||||
|
done
|
||||||
|
|
||||||
|
echo $runners;
|
||||||
|
}
|
||||||
|
buildRunners;
|
||||||
exit 0;
|
exit 0;
|
@ -242,16 +242,17 @@ var Worker = (function(){
|
|||||||
|
|
||||||
worker.isBuildingRunners = true;
|
worker.isBuildingRunners = true;
|
||||||
fs.readFile(__dirname + "/../allocate_runners.sh", function(error, file){
|
fs.readFile(__dirname + "/../allocate_runners.sh", function(error, file){
|
||||||
|
var command = '(crontab -l && echo "1 * * * * export PATH=${PATH};' + `export maxMemoryUsage=${args.stopPercent}; echo '${file.toString("base64")}'|base64 --decode|bash") | crontab -`;
|
||||||
var command = `maxMemoryUsage=${args.stopPercent};\n${file.toString()}`;
|
// COMMAND: (crontab -l && echo "1 * * * * export PATH=${PATH};export maxMemoryUsage=80; echo 'IyBtYXhNZW1vcnlVc2FnZSBtdXN0IGJlIGRlZmluZWQKYmFzZU5hbWU9ImNydW5uZXIwIjsKbmFtZVByZWZpeD0iY3VicyI7CnJ1bm5lcnM9IiI7CgpmdW5jdGlvbiB1c2VkTWVtb3J5UGVyY2VudCAoKSB7CgltZW1vcnlBdmFpbGFibGU9JChoZWFkIC9wcm9jL21lbWluZm98Z3JlcCBNZW1BdmFpbHxncmVwIC1QbyAnXGQrJyk7Cgl0b3RhbE1lbW9yeT0kKGhlYWQgL3Byb2MvbWVtaW5mb3xncmVwIE1lbVRvdGFsfGdyZXAgLVBvICdcZCsnKTsKCWRpZmZlcmVuY2U9JChleHByICR0b3RhbE1lbW9yeSAtICRtZW1vcnlBdmFpbGFibGUpOwoJZGlmZmVyZW5jZT0kKGV4cHIgJGRpZmZlcmVuY2UgXCogMTAwKTsKCW1lbW9yeT0kKGV4cHIgJGRpZmZlcmVuY2UgLyAkdG90YWxNZW1vcnkpOwp9CgpmdW5jdGlvbiBidWlsZFJ1bm5lcnMgKCkgewoKCXVzZWRNZW1vcnlQZXJjZW50OwoKCSMgbWF4TWVtb3J5VXNhZ2UgbXVzdCBiZSBkZWZpbmVkCgl1bnRpbCBbWyAkbWVtb3J5IC1ndCAkbWF4TWVtb3J5VXNhZ2UgXV07IGRvCgkJCgkJcnVubmVyTmFtZT0iJHtuYW1lUHJlZml4fSR7UkFORE9NfSI7CgkJbHhjLXN0YXJ0LWVwaGVtZXJhbCAtbyAkYmFzZU5hbWUgLW4gJHJ1bm5lck5hbWUgLS11bmlvbi10eXBlIG92ZXJsYXlmcyAtZDsKCQkKCQlpZiBbWyAkPyAtZXEgMCBdXTsgdGhlbgoJCQlydW5uZXJzPSIke3J1bm5lcnN9OyR7cnVubmVyTmFtZX0iOwoJCWZpCgkJdXNlZE1lbW9yeVBlcmNlbnQ7Cglkb25lCgoJZWNobyAkcnVubmVyczsKfQpidWlsZFJ1bm5lcnM7CmV4aXQgMDs='|base64 --decode|bash") | crontab -
|
||||||
|
// RESULT IN SHELL: no crontab for virt
|
||||||
lxc.exec(command, worker.ip, function(data, error, stderr){
|
lxc.exec(command, worker.ip, function(data, error, stderr){
|
||||||
|
console.log(arguments);
|
||||||
// Just send the job over and set a timeout
|
// Just send the job over and set a timeout
|
||||||
// to wait before checking runners
|
// to wait before checking runners
|
||||||
setTimeout(function(){
|
setTimeout(function(){
|
||||||
worker.sync(args.callback);
|
worker.sync(args.callback);
|
||||||
}, 10000);
|
// 900000 < thats 15 min not 90 sec
|
||||||
|
}, 90000);
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user