quicksilver-cli
Version:
Cli tool for Quicksilver
54 lines (53 loc) • 2.48 kB
JavaScript
;
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
result["default"] = mod;
return result;
};
Object.defineProperty(exports, "__esModule", { value: true });
const command_1 = require("./command");
const field_1 = require("./field/field");
const GradleUtil = __importStar(require("../util/gradle"));
const ProjectUtil = __importStar(require("../util/project"));
const system_1 = require("../util/system");
const os = __importStar(require("os"));
class BuildCommand extends command_1.Command {
async run() {
let buildLinux = this.args.linux;
let buildMac = this.args.mac;
let buildWindows = this.args.windows;
const defaultType = !buildLinux && !buildMac && !buildWindows;
if (defaultType) {
buildLinux = system_1.isLinux;
buildMac = system_1.isMac;
buildWindows = system_1.isWindows;
}
if (buildLinux) {
await GradleUtil.qsArchive(this.workspace, "linux");
}
else if (buildMac) {
await GradleUtil.qsArchive(this.workspace, "macos");
}
else if (buildWindows) {
await GradleUtil.qsArchive(this.workspace, "windows");
}
else {
this.logger.error(`The system is not supported to build a compressed package. system: ${os.type()}.`);
}
}
async validate() {
await super.validate();
await ProjectUtil.validateGradleProject(this.workspace, this.cacheKeyWorkspace);
}
}
BuildCommand.NAME = "build";
BuildCommand.ALIAS = ["b"];
BuildCommand.FIELDS = [
{ name: "linux", description: "Build a compressed package to install or upgrade a project in linux system.", aliases: ["l", "linux"], type: field_1.FieldType.Boolean },
{ name: "mac", description: "Build a compressed package to install or upgrade a project in mac system.", aliases: ["m", "mac"], type: field_1.FieldType.Boolean },
{ name: "windows", description: "Build a compressed package to install or upgrade a project in windows system.", aliases: ["w", "windows"], type: field_1.FieldType.Boolean }
];
BuildCommand.DESCRIPTION = "Build a compressed package used to install or upgrade a project.";
exports.BuildCommand = BuildCommand;