lambdaorm-cli
Version:
The lambdaorm command line interface
78 lines • 3.03 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.ExecuteCommand = void 0;
const path_1 = __importDefault(require("path"));
const usesCases_1 = require("../builders/usesCases");
const dotenv_1 = __importDefault(require("dotenv"));
class ExecuteCommand {
constructor() {
this.command = 'execute';
this.describe = 'Execute an query';
}
builder(args) {
return args
.option('w', {
alias: 'workspace',
describe: 'project path'
})
.option('s', {
alias: 'stage',
describe: 'Name of stage'
})
.option('q', {
alias: 'query',
describe: 'Query expression'
})
.option('d', {
alias: 'data',
describe: 'Data used to execute query'
})
.option('e', {
alias: 'envfile',
describe: 'Read in a file of environment variables'
})
.option('o', {
alias: 'output',
describe: 'Generates an output according to the following possible values [json|beautiful|light|yaml]'
})
.option('u', {
alias: 'url',
describe: 'Url of service.'
});
}
handler(args) {
return __awaiter(this, void 0, void 0, function* () {
const workspace = path_1.default.resolve(process.cwd(), args.workspace || '.');
const query = args.query;
const data = args.data || {};
const stage = args.stage;
const output = args.output;
const envfile = args.envfile;
const url = args.url;
if (envfile) {
const fullPath = path_1.default.resolve(process.cwd(), envfile);
dotenv_1.default.config({ path: fullPath, override: true });
}
try {
yield usesCases_1.execute.execute(workspace, query, data, stage, output, url);
}
catch (error) {
console.error(`error: ${error}`);
}
});
}
}
exports.ExecuteCommand = ExecuteCommand;
//# sourceMappingURL=execute.js.map