UNPKG

snips-sam

Version:

The Snips Assistant Manager

49 lines 2.18 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const tslib_1 = require("tslib"); const cli_1 = require("../../cli"); const session_1 = require("../../session"); exports.command = 'persistence <toggle>'; exports.desc = 'Toggle mosquitto persistence, if turned off it will also delete /etc/mosquitto/mosquitto.db'; exports.builder = yargs => { return yargs .positional('toggle', { describe: 'Toggle mosquitto persistence', type: 'string', choices: ['on', 'off'], demandOption: true, }); }; exports.handler = (argv) => tslib_1.__awaiter(void 0, void 0, void 0, function* () { const ssh = new session_1.SSHService(); const toggle = JSON.parse(JSON.stringify(argv)).toggle; const mqttToggle = toggle === 'on' ? true : false; try { yield ssh.connect(); yield ssh.stopService('mosquitto') .then(_ => cli_1.cli.stream.success('Mosquitto.service has been stopped')) .catch(e => cli_1.cli.stream.println(`Failed to stop MQTT service, reason: ${e}`)); if (mqttToggle) { yield ssh.toggleMQTTLogPersistance(mqttToggle) .then(_ => cli_1.cli.stream.success('Enabled Mosquitto persistence in /etc/mosquitto/mosquitto.conf')) .catch(e => cli_1.cli.stream.println(`Failed to enable MQTT persistence, reason: ${e}`)); } else { yield ssh.deleteMosquittoDB() .then(_ => cli_1.cli.stream.success('Deleted /etc/mosquitto/mosquitto.db')) .catch(_ => { }); yield ssh.toggleMQTTLogPersistance(mqttToggle) .then(_ => cli_1.cli.stream.success('Disabled Mosquitto persistence in /etc/mosquitto/mosquitto.conf')) .catch(e => cli_1.cli.stream.println(`Failed to disable MQTT service persistence, reason: ${e}`)); } yield ssh.relaunchService('mosquitto'); yield ssh.relaunchServices(); cli_1.cli.stream.success('Relaunched all services'); } catch (e) { cli_1.cli.stream.error(e); process.exit(); } ssh.disconnect(); }); //# sourceMappingURL=persistence.js.map