如果存在严重性较高的漏洞,则在npm安装时失败shell脚本

时间:2019-06-15 09:29:26

标签: bash shell npm

如果npm安装显示严重性很高的漏洞,我想为我的应用程序打包脚本失败。

示例:

added 137 packages from 151 contributors and audited 4041 packages in 8.689s
found 1 high severity vulnerability
  run `npm audit fix` to fix them, or `npm audit` for details

我现在拥有的东西 我正在使用grep进行此操作,但这听起来不是一个好的解决方案,因为对审核进行小的输出调整可能会破坏它,而不会立即发现它。

function npm-prod-install-audit() {
    if npm install --no-optional --only=prod | grep "high severity";then
        echo "Audit failed! ? Please update your packages."
        exit 1
    else
        echo "Audit passed ✅";
    fi
}

对此有任何适当的解决方案吗?

1 个答案:

答案 0 :(得分:1)

您可以使用npm audit https://docs.npmjs.com/cli/audit。如果发现漏洞,它将以非零返回码退出。您可以使用--audit-level=(low|moderate|high|critical)来控制要失败的级别。