diff options
author | Chris Purta <cpurta@kochava.com> | 2018-11-15 07:05:20 +0800 |
---|---|---|
committer | chriseth <chris@ethereum.org> | 2018-11-26 22:43:17 +0800 |
commit | 5c67821af48c307d4b3da9b0cc50b4d447e8eae2 (patch) | |
tree | 16e039fc2b572eb84de69178b8238584fcda26bd /scripts/report_errors.sh | |
parent | f1cebed998cd805cec3f37d42a18f3632399b866 (diff) | |
download | dexon-solidity-5c67821af48c307d4b3da9b0cc50b4d447e8eae2.tar.gz dexon-solidity-5c67821af48c307d4b3da9b0cc50b4d447e8eae2.tar.zst dexon-solidity-5c67821af48c307d4b3da9b0cc50b4d447e8eae2.zip |
Script that directly comments errors to the github pull request.
Diffstat (limited to 'scripts/report_errors.sh')
-rwxr-xr-x | scripts/report_errors.sh | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/scripts/report_errors.sh b/scripts/report_errors.sh new file mode 100755 index 00000000..55fc2e8c --- /dev/null +++ b/scripts/report_errors.sh @@ -0,0 +1,49 @@ +#!/usr/bin/env bash + +export ERROR_LOG="/tmp/error.log" + +function report_error_to_github +{ + if [ $? -eq 0 ] + then + exit 0 + fi + + if [ -z $CIRCLE_PR_NUMBER ] + then + CIRCLE_PR_NUMBER="${CIRCLE_PULL_REQUEST//[^0-9]/}" + fi + + ERROR_MSG=$(cat $ERROR_LOG) + + echo $ERROR_MSG + + if [ ! -z $CI ] + then + echo "posting error message to github" + post_error_to_github + fi +} + +function post_error_to_github +{ + if [ -z $CIRCLE_PR_NUMBER ] + then + CIRCLE_PR_NUMBER="${CIRCLE_PULL_REQUEST//[^0-9]/}" + fi + + GITHUB_API_URL="https://api.github.com/repos/$CIRCLE_PROJECT_USERNAME/$CIRCLE_PROJECT_REPONAME/issues/$CIRCLE_PR_NUMBER/comments" + + ESCAPED_ERROR_MSG=$(cat -e $ERROR_LOG | sed 's/\\/\\\\/g' | sed 's/"/\\\"/g') + + FORMATTED_ERROR_MSG=$(echo $ESCAPED_ERROR_MSG | sed 's/\$/\\n/g' | tr -d '\n') + + curl --request POST \ + --url $GITHUB_API_URL \ + --header 'accept: application/vnd.github.v3+json' \ + --header 'content-type: application/json' \ + -u stackenbotten:$GITHUB_ACCESS_TOKEN \ + --data "{\"body\": \"There was an error when running \`$CIRCLE_JOB\` for commit \`$CIRCLE_SHA1\`:\n\`\`\`\n$FORMATTED_ERROR_MSG\n\`\`\`\nPlease check that your changes are working as intended.\"}" +} + +trap report_error_to_github EXIT |