balena-cli
Version:
The official balena Command Line Interface
69 lines (68 loc) • 2.63 kB
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
const core_1 = require("@oclif/core");
const lazy_1 = require("../../utils/lazy");
class DeviceLocalModeCmd extends core_1.Command {
async run() {
const { args: params, flags: options } = await this.parse(DeviceLocalModeCmd);
const balena = (0, lazy_1.getBalenaSdk)();
if (options.enable) {
await balena.models.device.enableLocalMode(params.uuid);
console.log(`Local mode on device ${params.uuid} is now ENABLED.`);
}
else if (options.disable) {
await balena.models.device.disableLocalMode(params.uuid);
console.log(`Local mode on device ${params.uuid} is now DISABLED.`);
}
else if (options.status) {
const isEnabled = await balena.models.device.isInLocalMode(params.uuid);
console.log(isEnabled);
}
else {
const isEnabled = await balena.models.device.isInLocalMode(params.uuid);
console.log(`Local mode on device ${params.uuid} is ${isEnabled ? 'ENABLED' : 'DISABLED'}.`);
if (isEnabled) {
console.log('To disable, use:');
console.log(` balena device local-mode ${params.uuid} --disable`);
}
else {
console.log('To enable, use:');
console.log(` balena device local-mode ${params.uuid} --enable`);
}
}
}
}
DeviceLocalModeCmd.description = (0, lazy_1.stripIndent) `
Get or manage the local mode status for a device.
Output current local mode status, or enable/disable local mode
for specified device.
`;
DeviceLocalModeCmd.examples = [
'$ balena device local-mode 23c73a1',
'$ balena device local-mode 23c73a1 --enable',
'$ balena device local-mode 23c73a1 --disable',
'$ balena device local-mode 23c73a1 --status',
];
DeviceLocalModeCmd.args = {
uuid: core_1.Args.string({
description: 'the uuid of the device to manage',
required: true,
}),
};
DeviceLocalModeCmd.flags = {
enable: core_1.Flags.boolean({
description: 'enable local mode',
exclusive: ['disable', 'status'],
}),
disable: core_1.Flags.boolean({
description: 'disable local mode',
exclusive: ['enable', 'status'],
}),
status: core_1.Flags.boolean({
description: 'output boolean indicating local mode status',
exclusive: ['enable', 'disable'],
}),
};
DeviceLocalModeCmd.authenticated = true;
exports.default = DeviceLocalModeCmd;
//# sourceMappingURL=local-mode.js.map
;