zeus.ugent.be/comment.sh
2018-10-16 21:28:15 +02:00

29 lines
865 B
Bash
Executable file

#!/bin/bash
PR_NR=$TRAVIS_PULL_REQUEST
function performQuery() {
NEW_QUERY_STR="{\"query\":\"$1\"}"
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/')
# TODO: Have another user do the commenting
if [[ $RESULT == *"werthen"* ]]; 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