Bamboo Pipeline Slack 根据状态发送消息

问题描述 投票:0回答:1

我正在尝试在每日 Bamboo Pipeline 运行结束时自动处理一些松弛消息。

我想弄清楚的是,是否有办法检查管道状态并向 Slack 发布一条消息来反映这一点?

即如果管道失败,我想要一条失败消息,反之亦然。

我还没有找到一种方法来检索脚本内管道的状态

欢迎任何想法。

问候

bash continuous-integration devops pipeline bamboo
1个回答
0
投票

发现一个隐藏的未记录变量,可用于检查当前作业是否失败。

#!/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 ===================
© www.soinside.com 2019 - 2024. All rights reserved.