Estoy creando hacer que la CLI del nodo automatice la publicación de mi paquete npm, me sorprende este problema. Después de toda la confirmación, quiero ejecutar el comando semantic-release pero el problema tiene sus propios avisos Actualmente uso el comando exec pero no muestra ningún aviso creado por semantic-release
Código
const timer = showLoading(`running ${chalk.blue(command)} `); exec(command, (error, stdout, stderr) => { process.stdout.write(chalk.dim(`\r running ${chalk.blue(command)} `)); clearInterval(timer); defaults.onFinish(); if (error) { defaults.onError(error); console.log(error); } defaults.onSuccess(stdout); console.log(stdout); });Puede mostrar las indicaciones generando un proceso secundario síncrono que hereda sus conductos stdio del proceso principal.
import { spawnSync } from 'child_process'; let { status } = spawnSync('./test.sh', [], { stdio: 'inherit' }); if (status > 0) { throw new Error('spawned process exited abnormally'); } #!/bin/bash read -p 'enter something: ' value [ -z "$value" ] && exit 1 echo "$value"He usado esta forma para crear mi propia CLI , es una manera fácil de crear todos los comandos que quiero y hacer lo que quiero, revisa el enlace tal vez te ayude, en el sitio web también hay una buena explicación con imágenes