@boostercloud/cli
Version:
CLI of the Booster Framework, the next level of abstraction for cloud-native applications
35 lines (34 loc) • 1.4 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const core_1 = require("@oclif/core");
const base_command_1 = require("../common/base-command");
const config_service_1 = require("../services/config-service");
const project_checker_1 = require("../services/project-checker");
const script_1 = require("../common/script");
const brand_1 = require("../common/brand");
const runTasks = async (compileAndLoad) => script_1.Script.init(`boost ${brand_1.default.dangerize('build')} 🚀`, Promise.resolve(process.cwd()))
.step('Checking project structure', project_checker_1.checkCurrentDirIsABoosterProject)
.step('Building project', compileAndLoad)
.info('Build complete!')
.done();
class Build extends base_command_1.default {
async run() {
await runTasks((ctx) => (0, config_service_1.compileProject)(process.cwd()));
}
async catch(fullError) {
const { flags: { verbose }, } = await this.parse(Build);
if (verbose) {
console.error(fullError.message);
}
return super.catch(fullError);
}
}
Build.description = 'Build the current application as configured in your `index.ts` file.';
Build.flags = {
help: core_1.Flags.help({ char: 'h' }),
verbose: core_1.Flags.boolean({
description: 'display full error messages',
default: false,
}),
};
exports.default = Build;