diff options
author | Jakob Odersky <jakob@driver.xyz> | 2018-08-02 13:47:47 -0700 |
---|---|---|
committer | Jakob Odersky <jakob@driver.xyz> | 2018-08-02 13:47:47 -0700 |
commit | bf3343187b5e799787f2ae2fa2a729a12167239e (patch) | |
tree | e4ac904d7a8f8268d78ea4a5244663b39e763858 | |
parent | 516b022640338a2dea21d58103e52d68634a7a29 (diff) | |
download | sbt-settings-bf3343187b5e799787f2ae2fa2a729a12167239e.tar.gz sbt-settings-bf3343187b5e799787f2ae2fa2a729a12167239e.tar.bz2 sbt-settings-bf3343187b5e799787f2ae2fa2a729a12167239e.zip |
Rename plugins to include a -Plugin suffix
-rw-r--r-- | README.md | 29 | ||||
-rw-r--r-- | src/main/scala/xyz.driver.sbt/IntegrationTestPackaging.scala | 4 | ||||
-rw-r--r-- | src/main/scala/xyz.driver.sbt/LibraryPlugin.scala (renamed from src/main/scala/xyz.driver.sbt/Library.scala) | 4 | ||||
-rw-r--r-- | src/main/scala/xyz.driver.sbt/LintPlugin.scala (renamed from src/main/scala/xyz.driver.sbt/Linting.scala) | 14 | ||||
-rw-r--r-- | src/main/scala/xyz.driver.sbt/ServicePlugin.scala (renamed from src/main/scala/xyz.driver.sbt/Service.scala) | 4 | ||||
-rw-r--r-- | src/sbt-test/sbt-settings/service/build.sbt | 2 |
6 files changed, 26 insertions, 31 deletions
@@ -29,15 +29,14 @@ activated out-of-the-box. | Name | Enabled | |--------------------------|----------------------------------------| -| Linting | automatic | -| Versioning | automatic | +| LintPlugin | automatic | +| LibraryPlugin | manual | +| ServicePlugin | manual | | IntegrationTestPackaging | automatic, if ServicePlugin is enabled | -| Library | manual | -| Service | manual | -### Linting +### Lint Plugin -*[source](src/main/scala/xyz.driver.sbt/Linting.scala)* +*[source](src/main/scala/xyz.driver.sbt/LintPlugin.scala)* - Includes configuration for scalafmt and scalastyle, modifies the `test` task to check for formatting and styling. @@ -47,14 +46,6 @@ activated out-of-the-box. This plugin can get in the way of developer productivity. If that is the case, it can simply be disabled. -### Versioning - -*[source](src/main/scala/xyz.driver.sbt/Versioning.scala)* - -Sets the project organization and reads version information from -git. It also enables overriding the version by setting a `VERSION` -environment variable (which may be useful to do from CI). - ### Integration Test Packaging *[source](src/main/scala/xyz.driver.sbt/IntegrationTestPackaging.scala)* @@ -64,14 +55,16 @@ integration tests in deployed applications images. ### Library Plugin -*[source](src/main/scala/xyz.driver.sbt/Library.scala)* +*[source](src/main/scala/xyz.driver.sbt/LibraryPlugin.scala)* -Common settings for libraries. It only sets the default publish -target to Driver's artifactory. +Common settings for libraries. Sets the project organization and reads +version information from git. It also enables overriding the version +by setting a `VERSION` environment variable (which may be useful to do +from CI). ### Service Plugin -*[source](src/main/scala/xyz.driver.sbt/Service.scala)* +*[source](src/main/scala/xyz.driver.sbt/ServicePlugin.scala)* Packages an application as a docker image and provides a way to include internal TLS certificates. diff --git a/src/main/scala/xyz.driver.sbt/IntegrationTestPackaging.scala b/src/main/scala/xyz.driver.sbt/IntegrationTestPackaging.scala index c89dcec..d81edd6 100644 --- a/src/main/scala/xyz.driver.sbt/IntegrationTestPackaging.scala +++ b/src/main/scala/xyz.driver.sbt/IntegrationTestPackaging.scala @@ -12,7 +12,7 @@ import scala.collection.JavaConverters._ object IntegrationTestPackaging extends AutoPlugin { - override def requires = Service + override def requires = ServicePlugin override def trigger = allRequirements object autoImport { @@ -76,7 +76,7 @@ object IntegrationTestPackaging extends AutoPlugin { cp ++ tests ++ Seq(scriptFile -> s"bin/${normalizedName.value}-it") }, - Service.autoImport.customCommands := List( + ServicePlugin.autoImport.customCommands := List( "mkdir -p test", s"ln -s ${(defaultLinuxInstallLocation in Docker).value}/bin/${normalizedName.value}-it /test/run_integration_test.sh" ) diff --git a/src/main/scala/xyz.driver.sbt/Library.scala b/src/main/scala/xyz.driver.sbt/LibraryPlugin.scala index 4e63f90..501f2fb 100644 --- a/src/main/scala/xyz.driver.sbt/Library.scala +++ b/src/main/scala/xyz.driver.sbt/LibraryPlugin.scala @@ -8,7 +8,7 @@ import sbt._ import sbt.plugins.JvmPlugin /** Common settings for a library, Driver style. */ -object Library extends AutoPlugin { +object LibraryPlugin extends AutoPlugin { override def requires = JvmPlugin @@ -40,7 +40,7 @@ object Library extends AutoPlugin { ) } - override def buildSettings = versionSettings ++ Seq( + override def buildSettings: Seq[sbt.Setting[_]] = versionSettings ++ Seq( skip in publish := true ) diff --git a/src/main/scala/xyz.driver.sbt/Linting.scala b/src/main/scala/xyz.driver.sbt/LintPlugin.scala index 4afca9a..7d882cb 100644 --- a/src/main/scala/xyz.driver.sbt/Linting.scala +++ b/src/main/scala/xyz.driver.sbt/LintPlugin.scala @@ -5,12 +5,12 @@ import org.scalafmt.sbt.ScalafmtPlugin.autoImport._ import org.scalastyle.sbt.ScalastylePlugin import org.scalastyle.sbt.ScalastylePlugin.autoImport.{scalastyle, scalastyleConfig} import sbt.Keys._ -import sbt._ +import sbt.{Def, _} import scala.collection.JavaConverters._ /** Enforces common formatting and catches compiler warnings. */ -object Linting extends AutoPlugin { +object LintPlugin extends AutoPlugin { override def requires = ScalafmtPlugin && ScalastylePlugin override def trigger = allRequirements @@ -82,15 +82,17 @@ object Linting extends AutoPlugin { log.error(s"[fatal warning] $file:$line:$col $msg\n$desc") } } - if (!deprecationsOnly) + if (!deprecationsOnly) { throw new MessageOnlyException( - "Fatal warnings: some warnings other than deprecations were found. Disable " + - "the `Linting` plugin to ignore fatal warnings.") + "Fatal warnings: some warnings other than deprecations were found. " + + "This failure can be ignored by removing the lint plugin from the sbt project. " + + "(E.g. add `disablePlugins(LintPlugin)` to build.sbt).") + } compiled } ) - lazy val lintSettings = formatSettings ++ scalastyleSettings ++ scalacSettings + lazy val lintSettings: Seq[Def.Setting[_]] = formatSettings ++ scalastyleSettings ++ scalacSettings override def projectSettings: Seq[Def.Setting[_]] = inConfig(Compile)(lintSettings) ++ inConfig(Test)(lintSettings) diff --git a/src/main/scala/xyz.driver.sbt/Service.scala b/src/main/scala/xyz.driver.sbt/ServicePlugin.scala index 5a9fd52..82e20de 100644 --- a/src/main/scala/xyz.driver.sbt/Service.scala +++ b/src/main/scala/xyz.driver.sbt/ServicePlugin.scala @@ -13,7 +13,7 @@ import sbtbuildinfo.BuildInfoPlugin import sbtbuildinfo.BuildInfoPlugin.autoImport._ /** Common settings to a service. */ -object Service extends AutoPlugin { +object ServicePlugin extends AutoPlugin { override def requires = BuildInfoPlugin && DockerPlugin && JavaAppPackaging @@ -68,7 +68,7 @@ object Service extends AutoPlugin { ) override def projectSettings: Seq[Def.Setting[_]] = - Library.repositorySettings ++ buildInfoSettings ++ dockerSettings ++ Seq( + LibraryPlugin.repositorySettings ++ buildInfoSettings ++ dockerSettings ++ Seq( organization := "xyz.driver", crossScalaVersions := List("2.12.6"), scalaVersion := crossScalaVersions.value.last, diff --git a/src/sbt-test/sbt-settings/service/build.sbt b/src/sbt-test/sbt-settings/service/build.sbt index c55af36..f09443e 100644 --- a/src/sbt-test/sbt-settings/service/build.sbt +++ b/src/sbt-test/sbt-settings/service/build.sbt @@ -1,3 +1,3 @@ lazy val service = project .in(file(".")) - .enablePlugins(Service) + .enablePlugins(ServicePlugin) |