角度 CLI 将构建警告更改为错误

问题描述 投票:0回答:2

是否有机会以警告变为错误的方式配置

ng build

这对于 CI 构建来说会很方便。我从其他构建工具中知道这一点,但还没有找到任何配置参数。

angular angular-cli
2个回答
0
投票

我还认为 Angular 应该提供一个选项来将警告作为构建错误进行处理。如果您不阻止警告到达主分支,一段时间后它们会变得越来越多,新开发人员就会忽略它们。

最初我认为只需检查命令的输出是否包含“警告”就可以很容易地找到解决方法,但事实证明这比预期要困难得多。问题是,通过这样做,您可以更改状态代码,然后管道不会再因错误而失败,例如

npm run build |& tee -a =~ "Warning" && exit 64
解决了问题,但也增加了一个新问题——当
npm run build
出现错误时它不会失败。而且您当然不想在发生错误时抑制错误消息。

所以我的最终解决方案如下所示:

npm run build |& tee build.log;
result_code=${PIPESTATUS[0]}
if cat build.log | grep -q "Warning"; then 
   echo "Warning in build"
   exit 64
fi
exit $result_code 

0
投票

不知道这是否仍然相关,但对于任何遇到这个问题的人来说,有可能将角度编译器警告作为错误发出。 此处的文档中进行了描述: https://angular.io/extended-diagnostics#configuration

© www.soinside.com 2019 - 2024. All rights reserved.