我在用Lerna https://github.com/lerna/lerna管理多包存储库,在我的部署工作中,我使用 Lernapublish
命令。对我来说,如果包中的代码发生更改,它应该始终向我们的 Artifactory 发布新版本,如果没有发布任何内容,则作业失败,但是publish
即使没有发布任何包,命令也会以成功代码退出(我猜是 0 代码):
$ npx lerna publish from-package --yes
lerna notice cli v3.13.1
lerna info ci enabled
lerna notice from-package No unpublished release found
lerna success No changed packages to publish
Job succeeded
我想我可以通过将输出传送到 GREP 并搜索文本来解决这个问题"No changed packages to publish"
但随后不知道如何告诉 Gitlab 在找到该文本时使作业失败。
有什么建议么?
如果您打电话npx
在 bash 脚本中,您可以捕获文本并以非 0 状态退出:
lerna_output=$(npx lerna publish from-package --yes) || exit $?
nothing_published=$(echo $lerna_output | grep 'No changed packages to publish')
if [ "$nothing_published" != "" ]; then
echo $lerna_output
exit 1
fi
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)