UNPKG

bw-cli

Version:

The Brightwork (bw) command line deployment tool. Build & deploy serverless RESTful APIs in minutes.

57 lines (42 loc) 1.46 kB
'use strict'; const path = require('path'); const _ = require('lodash'); const fs = require('fs'); module.exports = function() { global.appPath = path.dirname(require.main.filename); global.workingPath = process.cwd(); global.settingsPath = global.workingPath + '/.bw.json' if(fs.existsSync(global.settingsPath)){ global.settings = JSON.parse(fs.readFileSync(global.settingsPath, 'utf8')); } else { global.settings = { api: 'http://api.brightwork.io' }; } global.authenticate = function(request){ if (settings.token) { var auth = "Bearer " + settings.token; request.headers = _.merge( _.defaults(request.headers, {}), { "Authorization" : auth }); } else { throw new Error('Authentication required, please login first.') } return request; } global.printError = function printError(err) { var msg = ''; if (err.message) { msg = err.message; } if (err.error && err.error.raw) { msg = err.statusCode + ' - '; msg += util.inspect(err.error.raw.error); } if (err.response.body && err.response.statusCode != 401) { msg = err.response.statusCode + ' - '; msg += err.response.body.message; } console.error('ERROR:', msg); }; }