roku-pkg-cli
Version:
A comprehensive CLI tool for managing multiple Roku projects with automated device discovery, build integration, and package generation. Perfect for CI/CD pipelines with full automation support.
45 lines (44 loc) • 2 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const commander_1 = require("commander");
const chalk_1 = __importDefault(require("chalk"));
const fs_1 = require("fs");
const path_1 = require("path");
const list_1 = require("./commands/list");
const add_1 = require("./commands/add");
const device_1 = require("./commands/device");
const discover_1 = require("./commands/discover");
const generate_1 = require("./commands/generate");
const edit_1 = require("./commands/edit");
const remove_1 = require("./commands/remove");
const program = new commander_1.Command();
// Read version from package.json
const packageJson = JSON.parse((0, fs_1.readFileSync)((0, path_1.join)(__dirname, '..', 'package.json'), 'utf8'));
program
.name('roku-pkg')
.description('Roku Package Management CLI')
.version(packageJson.version);
// Add all commands
(0, list_1.listCommand)(program);
(0, add_1.addCommand)(program);
(0, device_1.deviceCommand)(program);
(0, discover_1.discoverCommand)(program);
(0, generate_1.generateCommand)(program);
(0, edit_1.editCommand)(program);
(0, remove_1.removeCommand)(program);
program.parse(process.argv);
// Show help if no command provided
if (!process.argv.slice(2).length) {
console.log(chalk_1.default.bold('\n🎮 Roku Package CLI\n'));
program.outputHelp();
console.log(chalk_1.default.gray('\nExample usage:'));
console.log(chalk_1.default.gray(' roku-pkg discover # Discover Roku devices'));
console.log(chalk_1.default.gray(' roku-pkg device # Configure Roku device'));
console.log(chalk_1.default.gray(' roku-pkg add # Add a new project'));
console.log(chalk_1.default.gray(' roku-pkg list # List all projects'));
console.log(chalk_1.default.gray(' roku-pkg generate # Generate a package\n'));
}