zeus.ugent.be/comment.sh

29 lines
853 B
Bash
Executable File

#!/bin/bash
PR_NR=$TRAVIS_PULL_REQUEST
function performQuery() {
NEW_QUERY_STR="{\"query\":\"$1\"}"
echo $NEW_QUERY_STR
curl -s -H "Authorization: bearer $COMMENT_TOKEN" -X POST -d "$NEW_QUERY_STR" https://api.github.com/graphql
}
RESULT=$(performQuery "{repository(owner:\\\"ZeusWPI\\\",name:\\\"zeus.ugent.be\\\"){pullRequest(number:$PR_NR){id,comments(first:10){nodes{author{login}}}}}}")
if [ $? -ne 0 ]; then
echo "QUERY FAILED, RESULT: $RESULT"
exit 1
fi
# Get the GraphQL ID
PR_ID=$(echo $RESULT | sed 's/.*"id":"\([^"]*\)".*/\1/')
if [[ $RESULT == *"zeuswpi-bot"* ]]; then
echo "User has already commented"
else
ADD_COMMENT_STR="mutation{addComment(input:{subjectId:\\\"$PR_ID\\\",body:\\\"Check out the preview on https://$PR_NR.pr.zeus.gent/\\\"}){clientMutationId}}"
performQuery "$ADD_COMMENT_STR"
fi