0

我正在使用以下自定义命令对我的 Azure Pipeline 构建使用 NPM 审计

npm audit --registry=https://registry.npmjs.org/  | Select-String -Pattern  ( "Critical") -Context 0,10

这里的想法是,如果审计发现任何关键问题,我只想让这一步失败。

在命令行中本地使用此命令可以正常工作。但是在管道中将其作为自定义 npm 命令运行仍然会导致完整的 npm 审计运行并返回一些导致步骤失败的中等错误。

我觉得我在命令上遗漏了一些格式,但我不确定它是什么。

是否有其他人有在管道中使用 NPM 审计同时成功抑制某些错误严重性的经验?

4

1 回答 1

1

任务失败的原因不是因为任务正在记录什么,而是因为 npm audit 以非零代码退出,这意味着失败。

我建议您将--audit-level 参数添加到 npm audit 命令中,以更改它是否会以失败代码结束:

默认情况下,如果发现任何漏洞,审计命令将以非零代码退出。--audit-level在 CI 环境中包含用于指定将导致命令失败的最低漏洞级别的参数可能很有用。此选项不过滤报告输出,它只是更改命令的失败阈值。

于 2021-12-23T23:34:50.207 回答