diff options
Diffstat (limited to 'scripts/merge-check.sh')
-rwxr-xr-x | scripts/merge-check.sh | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/scripts/merge-check.sh b/scripts/merge-check.sh new file mode 100755 index 0000000000..ef52cd44f4 --- /dev/null +++ b/scripts/merge-check.sh @@ -0,0 +1,31 @@ +#!/bin/bash +SINCE=$1 +UNTIL=$2 + +if [ "$SINCE" = "" ] || [ "$UNTIL" = "" ] +then + echo "Usage: $0 <since> <until>" + exit 3 +fi + +testname="merge check for `pwd|sed "s/.*\///"`" +echo "##teamcity[testStarted name='$testname' captureStandardOutput='true']" + +command="git --no-pager log --no-color $SINCE..$UNTIL" +# TODO Why do I get whitespace in the beginning of the wc output? +change_count=`$command --oneline|wc -l|tr -d ' '` + +if [ "$change_count" = "0" ] +then + echo "No unmerged commits" +else + command="$command --format=short" + message="There are $change_count commits that have not been merged from $UNTIL to $SINCE" + echo $message + echo "" + $command + details=`$command|perl -p -e 's/\n/|n/' | sed "s/['\|\[\]]/|\&/g"` + echo "##teamcity[testFailed name='$testname' message='$message' details='|n$details']" +fi + +echo "##teamcity[testFinished name='$testname']" |