forked from nodester/nodester
/
install.js
executable file
·31 lines (27 loc) · 961 Bytes
/
install.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/usr/bin/env node
var nodeControl = require('../deps/node-control/index.js');
var util = require('util');
var ins = util.inspect;
var config = { user: process.env.USER };
var print_lines_prefix = function (prefix, lines) {
var i = 0, l = lines.length;
for(i = 0; i < l; i++) {
if (i < (l - 1) || lines[i].length > 0) console.log('%s: %s', prefix, lines[i]);
}
}
var hosts = nodeControl.hosts(config, ['node01', 'node02', 'node03', 'node04']);
var l = hosts.length,
i = 0;
for(i = 0; i < l; i++) {
(function () {
var my_i = i;
var my_host = hosts[my_i];
my_host.ssh('hostname -s', my_host.address, function (err, stdout, stderr) {
if (err) {
console.error('host %d error: %s', my_i, err.toString());
}
if (stdout.length > 0) print_lines_prefix(my_host.address, stdout.split('\n'));
if (stderr.length > 0) print_lines_prefix(my_host.address + ' ERROR: ', stderr.split('\n'));
});
})();
}