UNPKG

kubricate

Version:

A TypeScript framework for building reusable, type-safe Kubernetes infrastructure — without the YAML mess.

46 lines (45 loc) 1.58 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.generateCommand = void 0; var _ConfigLoader = /*#__PURE__*/require("../commands/ConfigLoader.js"); var _index = /*#__PURE__*/require("../commands/generate/index.js"); var _error = /*#__PURE__*/require("../internal/error.js"); var _logger = /*#__PURE__*/require("../internal/logger.js"); const generateCommand = exports.generateCommand = { command: 'generate', describe: 'Generate a stack into yaml files', builder: yargs => yargs.option('outDir', { type: 'string', describe: 'Output directory', default: 'output' }).option('stdout', { type: 'boolean', describe: 'Output to stdout', default: false }).option('filter', { type: 'string', describe: 'Filter stacks or resources by ID (e.g., myStack or myStack.resource)', array: true }), handler: async argv => { const logger = argv.stdout ? new _logger.ConsoleLogger('silent') : argv.logger ?? new _logger.ConsoleLogger('info'); try { if (argv.stdout === false && argv.filter) { throw new Error('"--filter" option is allowed only when using with "--stdout" option'); } const configLoader = new _ConfigLoader.ConfigLoader(argv, logger); const { config } = await configLoader.initialize({ commandOptions: argv, subject: 'generate' }); await new _index.GenerateCommand(argv, logger).execute(config); } catch (error) { (0, _error.handlerError)(error, logger); } } }; //# sourceMappingURL=generate.js.map