diff --git a/create_deployment.js b/create_deployment.js new file mode 100755 index 0000000..387c819 --- /dev/null +++ b/create_deployment.js @@ -0,0 +1,58 @@ +#!/usr/bin/env node + +'use strict'; + +var program = require('commander'), + request = require('request'), + util = require('util'), + i, + url, + aDeployment; + +program + .version('0.0.1') + .option('-H, --host [hostname]', 'host, \'localhost\' by default', 'localhost') + .option('-P, --port [number]', 'port, 3001 by default', 3001, parseInt) + .option('-N, --name [name]', 'deployment service, \'testing\' by default', 'testing') + .option('-S, --size [name]', 'deployment size, \'HA\' by default', 'HA') + .option('-T, --tag [name]', 'version, \'v1.6\' by default', 'v1.6') + .option('-D, --description [string]', 'deployment description, \'new deployment\' by default', 'new deployment') + .option('-O, --owner [name]', 'owner, \'testuser\' by default', 'testuser') + .option('-X, --secure', 'use HTTPS', false) + .parse(process.argv); +url = util.format('%s://%s:%d/deployment', program.secure ? 'https' : 'http', program.host, program.port); +aDeployment = { + service: program.name, + version: program.tag, + size: program.size, + description: program.description, + owner: program.owner +}; +program.password("LDAP password: ", "*", function (passwd) { + makeRequest(passwd); +}) +function makeRequest(passwd) { + console.log('url\n', url); + console.log('deployment\n', aDeployment); + request.post({url: url, json: aDeployment, 'auth': { + 'user': aDeployment.owner, + 'pass': passwd, + 'sendImmediately': true + }}, function (err, res, body) { + if (err) { + console.log('error\n', err); + } + else { + console.log('statusCode\n', res.statusCode); + console.log('headers\n', res.headers); + console.log('body\n', body); + } + }); +} +function range(val) { + return val.split('..').map(Number); +} +function list(val) { + return val.split(','); +} + diff --git a/create_service.js b/create_service.js new file mode 100755 index 0000000..0cf032d --- /dev/null +++ b/create_service.js @@ -0,0 +1,70 @@ +#!/usr/bin/env node + +'use strict'; + +var program = require('commander'), + request = require('request'), + util = require('util'), + i, + url, + aService; + +program + .version('0.0.1') + .option('-H, --host [hostname]', 'host, \'localhost\' by default', 'localhost') + .option('-P, --port [number]', 'port, 3001 by default', 3001, parseInt) + .option('-N, --name [name]', 'service name, \'testing\' by default', 'testing') + .option('-S, --size [name]', 'service size, \'HA\' by default', 'HA') + .option('-T, --tag [name]', 'version, \'v1.6\' by default', 'v1.6') + .option('-D, --description [string]', 'service description, \'new service\' by default', 'new service') + .option('-O, --owner [name]', 'owner, \'testuser\' by default', 'testuser') + .option('-C, --deploycfg [string]', 'deployment configuration repository , ' + + '\'git@pdihub.hi.inet:TDAF/tdaf-rush.git\' by default', 'git@pdihub.hi.inet:TDAF/tdaf-rush.git') + .option('-R, --repository [name]', 'repository, \'https://github.com/telefonicaid/Rush.git\' by default', + 'https://github.com/telefonicaid/Rush.git') + .option('-X, --secure', 'use HTTPS', false) + .parse(process.argv); +url = util.format('%s://%s:%d/service', program.secure ? 'https' : 'http', program.host, program.port); +aService = { + name: program.name, + versions: program.tag.split(",").map(function(x) {return x.trim()}), + sizes: program.size.split(",").map(function(x) {return x.trim()}), + description: program.description, + owner: program.owner, + repository: program.repository +}; +if (program.deploycfg) { + aService.deployRepo = program.deploycfg +} + +program.password("LDAP password: ","*", function (passwd) { + makeRequest(passwd); +}) +function makeRequest(passwd) { + console.log('url\n', url); + console.log('service\n', aService); + request.post({ + url: url, + json: aService, + 'auth': { + 'user': aService.owner, + 'pass': passwd, + 'sendImmediately': true + }}, function (err, res, body) { + if (err) { + console.log('error\n', err); + } + else { + console.log('statusCode\n', res.statusCode); + console.log('headers\n', res.headers); + console.log('body\n', body); + } + }); +} +function range(val) { + return val.split('..').map(Number); +} +function list(val) { + return val.split(','); +} + diff --git a/delete_deployment.js b/delete_deployment.js new file mode 100755 index 0000000..01c55cf --- /dev/null +++ b/delete_deployment.js @@ -0,0 +1,50 @@ +#!/usr/bin/env node + +'use strict'; + +var program = require('commander'), + request = require('request'), + util = require('util'), + i, + url, + aService; + +program + .version('0.0.1') + .option('-H, --host [hostname]', 'host, \'localhost\' by default', 'localhost') + .option('-P, --port [number]', 'port, 3001 by default', 3001, parseInt) + .option('-U, --user [name]', 'user, \'testuser\' by default', 'testuser') + .option('-X, --secure', 'use HTTPS', false) + .parse(process.argv); +url = util.format('%s://%s:%d/deployment/%s', program.secure ? 'https' : 'http', program.host, program.port, program.args[0]); + console.log(url) + +program.password("LDAP password: ","*", function (passwd) { + makeRequest(passwd); +}) +function makeRequest(passwd) { + console.log('url\n', url); + request.del({ + url: url, + 'auth': { + 'user': program.user, + 'pass': passwd, + 'sendImmediately': true + }}, function (err, res, body) { + if (err) { + console.log('error\n', err); + } + else { + console.log('statusCode\n', res.statusCode); + console.log('headers\n', res.headers); + console.log('body\n', body); + } + }); +} +function range(val) { + return val.split('..').map(Number); +} +function list(val) { + return val.split(','); +} + diff --git a/delete_service.js b/delete_service.js new file mode 100755 index 0000000..a5d0c28 --- /dev/null +++ b/delete_service.js @@ -0,0 +1,50 @@ +#!/usr/bin/env node + +'use strict'; + +var program = require('commander'), + request = require('request'), + util = require('util'), + i, + url, + aService; + +program + .version('0.0.1') + .option('-H, --host [hostname]', 'host, \'localhost\' by default', 'localhost') + .option('-P, --port [number]', 'port, 3001 by default', 3001, parseInt) + .option('-U, --user [name]', 'user, \'testuser\' by default', 'testuser') + .option('-X, --secure', 'use HTTPS', false) + .parse(process.argv); +url = util.format('%s://%s:%d/service/%s', program.secure ? 'https' : 'http', program.host, program.port, program.args[0]); + console.log(url) + +program.password("LDAP password: ","*", function (passwd) { + makeRequest(passwd); +}) +function makeRequest(passwd) { + console.log('url\n', url); + request.del({ + url: url, + 'auth': { + 'user': program.user, + 'pass': passwd, + 'sendImmediately': true + }}, function (err, res, body) { + if (err) { + console.log('error\n', err); + } + else { + console.log('statusCode\n', res.statusCode); + console.log('headers\n', res.headers); + console.log('body\n', body); + } + }); +} +function range(val) { + return val.split('..').map(Number); +} +function list(val) { + return val.split(','); +} + diff --git a/get_deployment.js b/get_deployment.js new file mode 100755 index 0000000..26ff68b --- /dev/null +++ b/get_deployment.js @@ -0,0 +1,50 @@ +#!/usr/bin/env node + +'use strict'; + +var program = require('commander'), + request = require('request'), + util = require('util'), + i, + url, + aService; + +program + .version('0.0.1') + .option('-H, --host [hostname]', 'host, \'localhost\' by default', 'localhost') + .option('-P, --port [number]', 'port, 3001 by default', 3001, parseInt) + .option('-U, --user [name]', 'user, \'testuser\' by default', 'testuser') + .option('-X, --secure', 'use HTTPS', false) + .parse(process.argv); +url = util.format('%s://%s:%d/deployment/%s', program.secure ? 'https' : 'http', program.host, program.port, program.args[0]); + console.log(url) + +program.password("LDAP password: ","*", function (passwd) { + makeRequest(passwd); +}) +function makeRequest(passwd) { + console.log('url\n', url); + request.get({ + url: url, + 'auth': { + 'user': program.user, + 'pass': passwd, + 'sendImmediately': true + }}, function (err, res, body) { + if (err) { + console.log('error\n', err); + } + else { + console.log('statusCode\n', res.statusCode); + console.log('headers\n', res.headers); + console.log('body\n', body); + } + }); +} +function range(val) { + return val.split('..').map(Number); +} +function list(val) { + return val.split(','); +} + diff --git a/get_service.js b/get_service.js new file mode 100755 index 0000000..13010fd --- /dev/null +++ b/get_service.js @@ -0,0 +1,50 @@ +#!/usr/bin/env node + +'use strict'; + +var program = require('commander'), + request = require('request'), + util = require('util'), + i, + url, + aService; + +program + .version('0.0.1') + .option('-H, --host [hostname]', 'host, \'localhost\' by default', 'localhost') + .option('-P, --port [number]', 'port, 3001 by default', 3001, parseInt) + .option('-U, --user [name]', 'user, \'testuser\' by default', 'testuser') + .option('-X, --secure', 'use HTTPS', false) + .parse(process.argv); +url = util.format('%s://%s:%d/service/%s', program.secure ? 'https' : 'http', program.host, program.port, program.args[0]); + console.log(url) + +program.password("LDAP password: ","*", function (passwd) { + makeRequest(passwd); +}) +function makeRequest(passwd) { + console.log('url\n', url); + request.get({ + url: url, + 'auth': { + 'user': program.user, + 'pass': passwd, + 'sendImmediately': true + }}, function (err, res, body) { + if (err) { + console.log('error\n', err); + } + else { + console.log('statusCode\n', res.statusCode); + console.log('headers\n', res.headers); + console.log('body\n', body); + } + }); +} +function range(val) { + return val.split('..').map(Number); +} +function list(val) { + return val.split(','); +} + diff --git a/list_deployments.js b/list_deployments.js new file mode 100755 index 0000000..1438327 --- /dev/null +++ b/list_deployments.js @@ -0,0 +1,49 @@ +#!/usr/bin/env node + +'use strict'; + +var program = require('commander'), + request = require('request'), + util = require('util'), + i, + url, + aService; + +program + .version('0.0.1') + .option('-H, --host [hostname]', 'host, \'localhost\' by default', 'localhost') + .option('-P, --port [number]', 'port, 3001 by default', 3001, parseInt) + .option('-U, --user [name]', 'user, \'testuser\' by default', 'testuser') + .option('-X, --secure', 'use HTTPS', false) + .parse(process.argv); +url = util.format('%s://%s:%d/deployment', program.secure ? 'https' : 'http', program.host, program.port); + +program.password("LDAP password: ","*", function (passwd) { + makeRequest(passwd); +}) +function makeRequest(passwd) { + console.log('url\n', url); + request.get({ + url: url, + 'auth': { + 'user': program.user, + 'pass': passwd, + 'sendImmediately': true + }}, function (err, res, body) { + if (err) { + console.log('error\n', err); + } + else { + console.log('statusCode\n', res.statusCode); + console.log('headers\n', res.headers); + console.log('body\n', body); + } + }); +} +function range(val) { + return val.split('..').map(Number); +} +function list(val) { + return val.split(','); +} + diff --git a/list_services.js b/list_services.js new file mode 100755 index 0000000..7cf22a6 --- /dev/null +++ b/list_services.js @@ -0,0 +1,49 @@ +#!/usr/bin/env node + +'use strict'; + +var program = require('commander'), + request = require('request'), + util = require('util'), + i, + url, + aService; + +program + .version('0.0.1') + .option('-H, --host [hostname]', 'host, \'localhost\' by default', 'localhost') + .option('-P, --port [number]', 'port, 3001 by default', 3001, parseInt) + .option('-U, --user [name]', 'user, \'testuser\' by default', 'testuser') + .option('-X, --secure', 'use HTTPS', false) + .parse(process.argv); +url = util.format('%s://%s:%d/service', program.secure ? 'https' : 'http', program.host, program.port); + +program.password("LDAP password: ","*", function (passwd) { + makeRequest(passwd); +}) +function makeRequest(passwd) { + console.log('url\n', url); + request.get({ + url: url, + 'auth': { + 'user': program.user, + 'pass': passwd, + 'sendImmediately': true + }}, function (err, res, body) { + if (err) { + console.log('error\n', err); + } + else { + console.log('statusCode\n', res.statusCode); + console.log('headers\n', res.headers); + console.log('body\n', body); + } + }); +} +function range(val) { + return val.split('..').map(Number); +} +function list(val) { + return val.split(','); +} + diff --git a/package.json b/package.json new file mode 100644 index 0000000..4a78465 --- /dev/null +++ b/package.json @@ -0,0 +1,16 @@ +{ + "name": "utils", + "version": "0.0.0", + "description": "", + "main": "echo \"Error: no main specified\" && exit 1", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": "", + "author": "", + "license": "BSD", + "dependencies": { + "commander": "~1.3.0", + "request": "~2.22.0" + } +}