From 2c82d339d7b0d6150885b34a614f1033fb388f06 Mon Sep 17 00:00:00 2001 From: Eugene Yokota Date: Sat, 14 Feb 2015 22:29:24 -0500 Subject: [PATCH] Fix nightly publishing location by demoting publish-status to ThisBuild --- build.sbt | 2 +- project/Docs.scala | 2 +- project/Release.scala | 2 +- project/{Status.scala => StatusPlugin.scala} | 15 +++++++++++---- 4 files changed, 14 insertions(+), 7 deletions(-) rename project/{Status.scala => StatusPlugin.scala} (81%) diff --git a/build.sbt b/build.sbt index f4c67caf7..447c3de82 100644 --- a/build.sbt +++ b/build.sbt @@ -30,7 +30,7 @@ def commonSettings: Seq[Setting[_]] = Seq( ) def minimalSettings: Seq[Setting[_]] = - commonSettings ++ customCommands ++ Status.settings ++ + commonSettings ++ customCommands ++ publishPomSettings ++ Release.javaVersionCheckSettings def baseSettings: Seq[Setting[_]] = diff --git a/project/Docs.scala b/project/Docs.scala index 8345263bd..707a11a85 100644 --- a/project/Docs.scala +++ b/project/Docs.scala @@ -1,6 +1,6 @@ import sbt._ import Keys._ -import Status.publishStatus +import StatusPlugin.autoImport._ import com.typesafe.sbt.{ SbtGhPages, SbtGit, SbtSite, site => sbtsite } import SbtSite.{ site, SiteKeys } import SbtGhPages.{ ghpages, GhPagesKeys => ghkeys } diff --git a/project/Release.scala b/project/Release.scala index 5fe2dd5bd..e3fdb7729 100644 --- a/project/Release.scala +++ b/project/Release.scala @@ -1,6 +1,6 @@ import sbt._ import Keys._ -import Status.publishStatus +import StatusPlugin.autoImport._ import org.apache.ivy.util.url.CredentialsStore import com.typesafe.sbt.JavaVersionCheckPlugin.autoImport._ diff --git a/project/Status.scala b/project/StatusPlugin.scala similarity index 81% rename from project/Status.scala rename to project/StatusPlugin.scala index 1a5ebb7d4..b9ea37f29 100644 --- a/project/Status.scala +++ b/project/StatusPlugin.scala @@ -2,10 +2,17 @@ import sbt._ import Keys._ import java.util.regex.Pattern -object Status { - lazy val publishStatus = SettingKey[String]("publish-status") +object StatusPlugin extends AutoPlugin { + override def requires = plugins.JvmPlugin + override def trigger = allRequirements - def settings: Seq[Setting[_]] = Seq( + object autoImport { + lazy val publishStatus = SettingKey[String]("publish-status") + } + + import autoImport._ + + override def buildSettings: Seq[Setting[_]] = Seq( isSnapshot <<= version(v => v.contains("-") && snapshotQualifier(v)), publishStatus <<= isSnapshot { snap => if (snap) "snapshots" else "releases" }, commands += stampVersion @@ -35,4 +42,4 @@ object Status { // NOte: This moved into sbt itself... But we need to add semantic knowledge of how // we stamp our nightlies. def snapshotQualifier(v: String) = Pattern.matches(""".+-.*SNAPSHOT.*""", v) -} \ No newline at end of file +}