Files
vnctalk-avatar/tools/nagnotify.sh
T

78 lines
3.4 KiB
Bash
Executable File

#!/bin/bash
#######
# Use Jenkins env vars if set otherwise use the gitlab-ci ones
BUILD_URL=${BUILD_URL:-$CI_PIPELINE_URL}
BRANCH_NAME=${BRANCH_NAME:-$CI_COMMIT_REF_NAME}
#######
echo "BRANCH: $BRANCH_NAME"
if [ -f result.txt ]; then
RESULT=$(cat result.txt)
#debug
echo "result:"
cat result.txt
fi
if [ -f code-analysis.txt ]; then
CODEERR=$(cat code-analysis.txt)
#debug
echo "code-analysis"
cat code-analysis.txt
fi
AUTHOR=$(git log -1 | grep "^Author: " | awk -F "Author:" '{print $2}' | awk -F "<" '{print $1}')
echo "All local branches:"; git branch
echo "BRANCH_NAME: $BRANCH_NAME"
JCHANGELOG=$(git log --pretty=format:%s origin/master..origin/$BRANCH_NAME | nl)
echo "changes:"
echo "$JCHANGELOG"
if [ "$RESULT" ]; then
echo "$BUILD_URL - $RESULT"
case $RESULT in
SUCCESS|success)
if [ "$BRANCH_NAME" = "master" ]; then
echo -e "job succesfully finished: $BUILD_URL \n Changes: \n $JCHANGELOG" | ./tools/sendbroadcast.sh
# nagzillac "room^vncmail__project@conference.vnc.biz^job succesfully finished: $BUILD_URL - new APK is available at https://basepackages.vnc.biz/apk/VNCmail-2.0.0-$BUILD_ID.apk"
else
echo -e "job succesfully finished: $BUILD_URL \n Changes: \n $JCHANGELOG \n Author: $AUTHOR" | ./tools/sendbroadcast.sh
# nagzillac "room^vncmail__project@conference.vnc.biz^job succesfully finished: $BUILD_URL"
fi
;;
UNSTABLE|WARNING|unstable)
if [ "$CODEERR" ]; then
if [ "$BRANCH_NAME" = "master" ]; then
echo -e "job finished with warnings: $BUILD_URL \n $CODEERR \n Changes: \n $JCHANGELOG " | ./tools/sendbroadcast.sh
# nagzillac "room^vncmail__project@conference.vnc.biz^job finished with warnings: $BUILD_URL \n $CODEERR \n new APK is available at https://basepackages.vnc.biz/apk/VNCmail-2.0.0-$BUILD_ID.apk"
else
echo -e "job finished with warnings: $BUILD_URL \n $CODEERR \n Changes: \n $JCHANGELOG \n Author: $AUTHOR" | ./tools/sendbroadcast.sh
# nagzillac "room^vncmail__project@conference.vnc.biz^job finished with warnings: $BUILD_URL \n $CODEERR"
fi
else
echo -e "job finished with warnings: $BUILD_URL \n Changes: \n $JCHANGELOG \n Author: $AUTHOR" | ./tools/sendbroadcast.sh
#nagzillac "room^vncmail__project@conference.vnc.biz^job finished with warnings: $BUILD_URL"
fi
;;
FAILURE)
if [ "$CODEERR" ]; then
CODENUM=$(wc -l code-analysis.txt | awk '{print $1}')
echo -e "job FAILED - please check: $BUILD_URL \n code analysis found $CODENUM errors \n $CODEERR \n\n Changes: \n $JCHANGELOG \n Author: $AUTHOR" | ./tools/sendbroadcast.sh
# nagzillac "room^vncmail__project@conference.vnc.biz^job FAILED - please check: $BUILD_URL \n code analysis found $CODENUM errors"
else
echo -e "job FAILED - please check: $BUILD_URL immediately \n Changes: \n $JCHANGELOG \n Author: $AUTHOR" | ./tools/sendbroadcast.sh
# nagzillac "room^vncmail__project@conference.vnc.biz^job FAILED - please check: $BUILD_URL immediately"
fi
;;
*)
echo -e "job finished with ambigous result - please check: $BUILD_URL immediately \n Changes: \n $JCHANGELOG \n Author: $AUTHOR" | ./tools/sendbroadcast.sh
# nagzillac "chat^stefan.saenger@vnc.biz^job finished with ambigous result - please check: $BUILD_URL immediately"
;;
esac
fi