UNPKG

@code-pushup/cli

Version:

A CLI to run all kinds of code quality measurements to align your team with company goals

27 lines 1.24 kB
import ansis from 'ansis'; import { mkdir, writeFile } from 'node:fs/promises'; import path from 'node:path'; import { logger } from '@code-pushup/utils'; import { filterKebabCaseKeys } from '../implementation/global.utils.js'; import { printCliCommand } from '../implementation/logging.js'; import { yargsPrintConfigOptionsDefinition } from '../implementation/print-config.options.js'; export function yargsPrintConfigCommandObject() { const command = 'print-config'; return { command, describe: 'Print config', builder: yargsPrintConfigOptionsDefinition(), handler: async (yargsArgs) => { printCliCommand(command); // it is important to filter out kebab case keys // because yargs duplicates options in camel case and kebab case const { _, $0, ...args } = filterKebabCaseKeys(yargsArgs); const { output, ...config } = args; const content = JSON.stringify(config, null, 2); await mkdir(path.dirname(output), { recursive: true }); await writeFile(output, content); logger.info(`Config printed to file ${ansis.bold(output)}`); }, }; } //# sourceMappingURL=print-config-command.js.map