#! /bin/bash -e # # Build, test, and release Scala Async. # # Requires credentials: # # % cat ~/.sbt/0.13/publish.sbt # credentials += Credentials("Sonatype Nexus Repository Manager", "oss.sonatype.org", "", "") function sbt211() { sbt 'set scalaVersion := "2.11.0-M6"' 'set scalaBinaryVersion := scalaVersion.value' $@ return $? } die () { echo "$@" exit 1 } CHECK=";clean;test;publishLocal" RELEASE=";clean;test;publish" VERSION=`gsed -rn 's/version :=.*"(.+).*"/\1/p' build.sbt` [[ -n "$(git status --porcelain)" ]] && die "working directory is not clean!" sbt211 $CHECK sbt $CHECK sbt $RELEASE sbt211 $RELEASE cat <