28 lines
853 B
Bash
Executable file
28 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
|
|
|
|
|