@oaklean/cli
Version:
A command-line interface that provides utilities for parsing, inspecting, and converting the .oak file format, as well as interfaces used in the @oaklean suite.
44 lines • 3.49 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());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
const profiler_core_1 = require("@oaklean/profiler-core");
const commander_1 = require("commander");
class BackendCommands {
constructor() {
const parseCommand = commander_1.program
.command('backend')
.description('commands to interact with the backend');
parseCommand
.command('send')
.description('Sends a given .oak report to a backend specified in the .oaklean config')
.argument('<input>', 'input file path')
.action(this.sendReportToBackend.bind(this));
}
static init() {
return new BackendCommands();
}
sendReportToBackend(input) {
return __awaiter(this, void 0, void 0, function* () {
let inputPath = new profiler_core_1.UnifiedPath(input);
if (inputPath.isRelative()) {
inputPath = new profiler_core_1.UnifiedPath(process.cwd()).join(inputPath);
}
const projectReport = profiler_core_1.ProjectReport.loadFromFile(inputPath, 'bin');
if (projectReport === undefined) {
profiler_core_1.LoggerHelper.error(`Could not find a profiler report at ${inputPath.toPlatformString()}`);
return;
}
yield projectReport.uploadToRegistry();
});
}
}
exports.default = BackendCommands;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFja2VuZENvbW1hbmRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NvbW1hbmRzL0JhY2tlbmRDb21tYW5kcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLDBEQUFpRjtBQUNqRix5Q0FBbUM7QUFFbkMsTUFBcUIsZUFBZTtJQUNuQztRQUNDLE1BQU0sWUFBWSxHQUFHLG1CQUFPO2FBQzFCLE9BQU8sQ0FBQyxTQUFTLENBQUM7YUFDbEIsV0FBVyxDQUFDLHVDQUF1QyxDQUFDLENBQUE7UUFFdEQsWUFBWTthQUNWLE9BQU8sQ0FBQyxNQUFNLENBQUM7YUFDZixXQUFXLENBQUMseUVBQXlFLENBQUM7YUFDdEYsUUFBUSxDQUFDLFNBQVMsRUFBRSxpQkFBaUIsQ0FBQzthQUN0QyxNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0lBQzlDLENBQUM7SUFFRCxNQUFNLENBQUMsSUFBSTtRQUNWLE9BQU8sSUFBSSxlQUFlLEVBQUUsQ0FBQTtJQUM3QixDQUFDO0lBRUssbUJBQW1CLENBQUMsS0FBYTs7WUFDdEMsSUFBSSxTQUFTLEdBQUcsSUFBSSwyQkFBVyxDQUFDLEtBQUssQ0FBQyxDQUFBO1lBQ3RDLElBQUksU0FBUyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUM7Z0JBQzVCLFNBQVMsR0FBRyxJQUFJLDJCQUFXLENBQUMsT0FBTyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFBO1lBQzNELENBQUM7WUFDRCxNQUFNLGFBQWEsR0FBRyw2QkFBYSxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLENBQUE7WUFDbEUsSUFBSSxhQUFhLEtBQUssU0FBUyxFQUFFLENBQUM7Z0JBQ2pDLDRCQUFZLENBQUMsS0FBSyxDQUFDLHVDQUF1QyxTQUFTLENBQUMsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLENBQUE7Z0JBQ3pGLE9BQU07WUFDUCxDQUFDO1lBQ0QsTUFBTSxhQUFhLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQTtRQUN2QyxDQUFDO0tBQUE7Q0FDRDtBQTdCRCxrQ0E2QkMifQ==