forked from plokhotnyuk/jsoniter-scala
-
Notifications
You must be signed in to change notification settings - Fork 0
/
release.sbt
34 lines (31 loc) · 1.03 KB
/
release.sbt
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
import scala.sys.process._
import sbtrelease.ReleaseStateTransformations._
lazy val updateVersionInReadme: ReleaseStep = { st: State =>
val extracted = Project.extract(st)
val newVersion = extracted.get(version)
val oldVersion = "git describe --abbrev=0".!!.trim.replaceAll("^v", "")
val readme = "README.md"
val oldContent = IO.read(file(readme))
val newContent = oldContent.replaceAll('"' + oldVersion + '"', '"' + newVersion + '"')
.replaceAll('-' + oldVersion + '-', '-' + newVersion + '-')
IO.write(file(readme), newContent)
s"git add $readme" !! st.log
st
}
releaseCrossBuild := false
releaseProcess := Seq[ReleaseStep](
checkSnapshotDependencies,
inquireVersions,
runClean,
releaseStepCommandAndRemaining("+test"),
setReleaseVersion,
releaseStepCommandAndRemaining("+mimaReportBinaryIssues"),
updateVersionInReadme,
commitReleaseVersion,
tagRelease,
releaseStepCommandAndRemaining("+publishSigned"),
setNextVersion,
commitNextVersion,
releaseStepCommand("sonatypeReleaseAll"),
pushChanges
)