blob: 826b62d961fa076c2ce24ba674642f378ff8a9f7 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
#! /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", "<user>", "<pass>")
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 <<EOM
Released! For non-snapshot releases:
- tag: git tag -s -a v$VERSION -m "scala-async $VERSION"
- push tag: git push origin v$VERSION
- close the staging repository: https://oss.sonatype.org
- change the version number in build.sbt to a suitable -SNAPSHOT version
EOM
|