diff --git a/comment.sh b/comment.sh new file mode 100755 index 0000000..b127c00 --- /dev/null +++ b/comment.sh @@ -0,0 +1,28 @@ +#!/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 + + diff --git a/deploy.sh b/deploy.sh index 398c902..bca91df 100755 --- a/deploy.sh +++ b/deploy.sh @@ -8,4 +8,5 @@ if [[ $TRAVIS_PULL_REQUEST == "false" ]]; then fi else rsync -e 'ssh -p 2222' -aglpPrtvz --delete output/ "zeuspr@herbert.ugent.be:/home/zeuspr/public/$TRAVIS_PULL_REQUEST/" + ./comment.sh fi