#!/bin/bash

DEPLOY_SETTINGS=~/.kotlin-deploy-settings.xml

BUILD=$1
[ -z "$BUILD" ] && {
  echo "Usage: ./publish-maven-artifacts BUILD"
  echo "  where BUILD is like 0.1.XXXX"
  exit 1
}

[ ! -f "$DEPLOY_SETTINGS" ] && {
  echo "Maven deploy settings not found at $DEPLOY_SETTINGS"
  exit 1
}

LOG=/tmp/kotlin-build-`date +%Y%m%d-%H%M%S`.log
echo "*** Writing build log to $LOG"

(
set -x -e

rm -rfv ~/.m2/repository/org/jetbrains/kotlin

rm -rf /tmp/kotlin-dependencies
[ -d dependencies ] && mv dependencies /tmp/kotlin-dependencies
git clean -f -d -x
git reset --hard
mv /tmp/kotlin-dependencies dependencies

ant -f update_dependencies.xml
ant -f build.xml -Dbuild.number=$BUILD dist
cd libraries
mvn versions:set -DnewVersion=$BUILD
mvn package -PnoTest -DskipTests
find . -name target -type d -prune -print -exec rm -rf {} \;
mvn -s "$DEPLOY_SETTINGS" -PnoTest -DskipTests deploy
echo "*** Successfully uploaded version $BUILD to maven repository"
) 2>&1 | tee "$LOG"
