UNPKG

snips-sam

Version:

The Snips Assistant Manager

50 lines 1.7 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const cli_1 = require("../../cli"); const session_1 = require("../../session"); const chalk_1 = require("../../../node_modules/chalk"); exports.command = 'install <[services...]>'; exports.desc = 'Install Snips services from apt'; exports.builder = yargs => { return yargs .positional('services', { describe: 'Service(s) to install.', type: 'array', choices: session_1.availableSnipsServices, requiresArg: true, }) .option('verbose', { demandOption: false, describe: 'Include remote logs', type: 'boolean', alias: 'v', }); }; exports.handler = (argv) => tslib_1.__awaiter(void 0, void 0, void 0, function* () { const services = JSON.parse(JSON.stringify(argv)).services; const verbose = JSON.parse(JSON.stringify(argv)).verbose; const ssh = new session_1.SSHService(); try { yield ssh.connect(); if (verbose) cli_1.cli.stream.println(chalk_1.default.green(`Installing ${services.join(' ')}`)); else cli_1.cli.stream.loading(`Installing ${services.join(' ')}`); yield ssh.aptGetY(services, log => { if (verbose) cli_1.cli.stream.print(log); }); if (!verbose) cli_1.cli.stream.success(); cli_1.cli.stream.loading('Relaunching Snips services'); yield ssh.relaunchServices(); cli_1.cli.stream.success(); } catch (e) { cli_1.cli.stream.error(e); process.exit(); } ssh.disconnect(); }); //# sourceMappingURL=install.js.map