blob: afc51ec76405bdcd657879336a064f4c8df614e1 [file] [log] [blame] [edit]
#!/bin/sh
targetRepo="$2"
remoteRefs=""
javacPath="$JAVA_HOME/bin/javac"
javaPath="$JAVA_HOME/bin/java"
if [ -f "~/.kotlin-deactivate-prepush-hook" ]; then
echo "Pre-commit hook is deactivated"
exit 0
fi
if [ ! -f "./libraries/tools/kotlin-prepush-hook/src/KotlinPrePushHook.java" ]; then
echo "Pre-commit hook .java file was not found in current branch, pre-push hook is disabled"
exit 0
fi
if [ ! -f "$javaPath" ]; then
echo "'java' ($javaPath) was not found, pre-push hook is disabled"
exit 0
fi
if [ ! -f "$javacPath" ]; then
echo "'javac' ($javacPath) was not found, pre-push hook is disabled"
exit 0
fi
while read localRef localSha remoteRef remoteSha
do
# Looks like there're no [[ in Ubuntu by default
if [ "$remoteRef" = "refs/heads/rr/"* ]; then
continue
fi
if [ "$remoteRef" = "refs/heads/rrr/"* ]; then
continue
fi
if [ -z $remoteRefs ]; then
remoteRefs="$remoteRef"
else
remoteRefs="$remoteRefs,$remoteRef"
fi
done
if [ -z "$remoteRefs" ]; then
exit 0
fi
mkdir -p ./build/prePushHook
"$javacPath" -d ./build/prePushHook ./libraries/tools/kotlin-prepush-hook/src/KotlinPrePushHook.java
cd ./build/prePushHook
"$javaPath" KotlinPrePushHook "$remoteRefs" "$targetRepo"
returnCode=$?
cd ../..
exit $returnCode