我正在尝试在每日 Bamboo Pipeline 运行结束时自动处理一些松弛消息。
我想弄清楚的是,是否有办法检查管道状态并向 Slack 发布一条消息来反映这一点?
即如果管道失败,我想要一条失败消息,反之亦然。
我还没有找到一种方法来检索脚本内管道的状态
欢迎任何想法。
问候
发现一个隐藏的未记录变量,可用于检查当前作业是否失败。
#!/usr/bin/env bash
## bamboo does not catch some script failures unless this flag is set
set -e
TASK="CHECK BUILD STATUS"
echo ================== START $TASK ==================
## bamboo_jobFailed is a boolean
BUILD_STATUS=${bamboo_jobFailed}
echo "BUILD_STATUS_failed?: $BUILD_STATUS"
text=$"@here Hi all! There will be a delay in the Superset data refresh today, we are looking into it :slightly_smiling_face: Thank you!"
if [[ "$BUILD_STATUS" == "false" ]]
then
echo "the build is passing"
else
echo "the build has failed"
curl -X POST -H 'Content-type: application/json' --data "{\"text\" : \"$text\"}" https://hooks.slack.com/services/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
fi
echo =================== END $TASK ===================