Я ищу кроссплатформенный способ условного выполнения шага в моем скрипте сборки.
У меня есть шаг сборки, который стоит дорого, однако проверить, нужно ли это, относительно быстро. Я создал скрипт, который возвращает ненулевой код ошибки, если нет необходимости делать шаг сборки. Как я могу написать свой скрипт npm для запуска сборки только в том случае, если проверка пройдена, но с ошибками при сбое этапа сборки?
Пример package.json:
"scripts": {
"schema:build": "npm run schema:rebuild-check && npm run schema:force-build",
"schema:rebuild-check": "node tools/schema is-rebuild-necessary",
"schema:force-build": "npm run schema:validate && npm run schema:generate-index && npm run schema:bundle"
}
Проблема с вышесказанным заключается в том, что если перестроение не требуется, вся моя сборка завершается неудачно. Я не могу просто проглотить код выхода чем-то вроде exitzero, потому что я хочу знать, если какая-либо из команд не сработает в схеме: сценарий принудительной сборки.