All files / api-build/commands local.js

42.11% Statements 8/19
0% Branches 0/4
0% Functions 0/2
42.11% Lines 8/19
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 32 33 34 35 36 37 38 39 401x           1x 1x   1x 1x 1x   1x   1x                                                
module.exports.usage = `Run a service locally
 
Usage: api local <endpoint> [arg1=val1, arg2=val2...argn=valn]
 
Runs your api locally. Useful for testing changes before deploying`;
 
module.exports.category = 'using';
module.exports.weight = 2;
 
const utils = require('../utils/utils');
const { convertToFileType } = require('../utils/file-utils');
const handler = require('../utils/handler');
 
module.exports.aliases = ['invoke-local', 'dev'];
 
module.exports.run = async (args) => {
  let data = utils.parseArgs(args.splice(2));
 
  data = await convertToFileType(data);
 
  const errors = utils.buildErrors();
 
  const event = {
    name: args[1],
    data,
    errors,
  };
 
  handler.go(event, undefined, (err, response) => {
    if (err) {
      const parsedError = JSON.parse(err);
      console.log(parsedError);
    } else if (Buffer.isBuffer(response)) {
      process.stdout.write(response);
    } else {
      console.log(response);
    }
  });
};