Как предотвратить запуск следующей команды npm? - PullRequest
0 голосов
/ 31 января 2019

Я пытаюсь выполнить предварительные проверки через npm, прежде чем разрешить обработку другим сценариям.

Следующее работает, но мне интересно, есть ли лучший способ

.json

"deploy": "npm run _deploy:preflight && npm run _deploy:real",

"_deploy:preflight": "node ./build-utils/deploy-preflight.js",

build-utils / deploy-preflight.js

if (checksFail()) {
    console.log("--------------");
    console.log("preflight checks failed!");
    console.log("--------------");
    process.exit(1);
}

Проблема не столько в том, что она не работает, то, что консоль тогда завалена огромной ошибкой npm ERR / stacktrace, и я бы предпочел просто увидеть чистое сообщение «проверки перед проверкой завершились неудачно» и все еще иметь его, чтобы npm run _deploy:real не запускал

1 Ответ

0 голосов
/ 31 января 2019

Да, я согласен - время от времени npm может быть довольно шумным / многословным.

В следующем предложении предполагается, что вы оставляете deploy-preflight.js таким, какой он есть в настоящее время, в результате чего вы продолжаете выходить с кодом выхода 1при ошибке, т. е. process.exit(1).

  • Параметр командной строки npm --silent или сокращенный эквивалент -s, вероятно, является наиболее предпочтительным!,Однако он требует, чтобы вы включили его в команду CLI, которую вы выполняете.

    Например:

    $ npm run deploy -s
                     ^
    

    или

    $ npm run -s deploy
              ^
    
...