Jenkins 中 写 shell 命令执行失败,检测失败问题
由于项目的 依赖复杂,随着版本的增多,人工操作,手误几率太大,我们选取kenins 来自动化发布、更新。
这里主要解决,发布 的 每个阶段,确保每个阶段执行成功。
比如:
js 运行,确保运行 无错误
dotnet 编译,确保 编译 无误
# 这里以 dotnet 为 例:
# 编译log
buildLog=$(dotnet build)
# 这里获取 编译log中 Build FAIL 出现的次数(换成对应错误标记字符串即可)
buildResult=$(echo $buildLog | grep "Build FAIL" | wc -l)
# 出现次数 大于 0 表明 编译失败
if [[ $buildResult > 0 ]]
then
echo "----------------------------------- 编译失败 !!! --------------------------------"
echo "详细信息"
echo $buildLog
# 执行退出,jenkins, 会自动终止本次发布,之后的流程将不会继续
exit 1
else
echo "编译成功"
fi