diff options
Diffstat (limited to 'project/ScriptCommands.scala')
-rw-r--r-- | project/ScriptCommands.scala | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/project/ScriptCommands.scala b/project/ScriptCommands.scala new file mode 100644 index 0000000000..537990d985 --- /dev/null +++ b/project/ScriptCommands.scala @@ -0,0 +1,19 @@ +import sbt._ +import Keys._ +import complete.DefaultParsers._ + +/** Custom commands for use by the Jenkins scripts. This keeps the surface area and call syntax small. */ +object ScriptCommands { + def all = Seq(setupPublishCore) + + /** Set up the environment for `validate/publish-core`. The argument is the Artifactory snapshot repository URL. */ + def setupPublishCore = Command.single("setupPublishCore") { case (state, url) => + Project.extract(state).append(Seq( + VersionUtil.baseVersionSuffix in Global := "SHA-SNAPSHOT", + // Append build.timestamp to Artifactory URL to get consistent build numbers (see https://github.com/sbt/sbt/issues/2088): + publishTo in Global := Some("scala-pr" at url.replaceAll("/$", "") + ";build.timestamp=" + System.currentTimeMillis), + publishArtifact in (Compile, packageDoc) in ThisBuild := false, + scalacOptions in Compile in ThisBuild += "-optimise" + ), state) + } +} |