diff options
author | vlad <vlad@drivergrp.com> | 2016-09-14 14:41:18 -0700 |
---|---|---|
committer | vlad <vlad@drivergrp.com> | 2016-09-14 14:41:18 -0700 |
commit | 3b18aca42600aae3e7cefba73e0fe66a5648c37c (patch) | |
tree | 4d246655e51b19c8653ee8ac0dd95059afc948cc | |
parent | 1dcd004fa50d94d57a8f27669e96ed39025c4f8f (diff) | |
download | sbt-settings-3b18aca42600aae3e7cefba73e0fe66a5648c37c.tar.gz sbt-settings-3b18aca42600aae3e7cefba73e0fe66a5648c37c.tar.bz2 sbt-settings-3b18aca42600aae3e7cefba73e0fe66a5648c37c.zip |
Proper docker configuration
-rw-r--r-- | build.sbt | 4 | ||||
-rw-r--r-- | project/plugins.sbt | 2 | ||||
-rw-r--r-- | src/main/scala/com.drivergrp.sbt/SbtSettings.scala | 43 |
3 files changed, 22 insertions, 27 deletions
@@ -16,10 +16,10 @@ addSbtPlugin("org.scalastyle" %% "scalastyle-sbt-plugin" % "0.8.0") addSbtPlugin("io.spray" % "sbt-revolver" % "0.8.0") addSbtPlugin("com.eed3si9n" % "sbt-buildinfo" % "0.6.1") addSbtPlugin("com.typesafe.sbt" % "sbt-git" % "0.8.5") -// addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.1.1") +addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.1.4") addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.3") addSbtPlugin("com.github.gseitz" % "sbt-release" % "1.0.3") -// addSbtPlugin("se.marcuslonnberg" % "sbt-docker" % "1.4.0") +addSbtPlugin("se.marcuslonnberg" % "sbt-docker" % "1.4.0") // This plugin represents functionality that is to be added to sbt in the future addSbtPlugin("org.scala-sbt" % "sbt-core-next" % "0.1.1") diff --git a/project/plugins.sbt b/project/plugins.sbt index b617004..de9bb90 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -8,10 +8,8 @@ addSbtPlugin("org.scalastyle" %% "scalastyle-sbt-plugin" % "0.8.0") addSbtPlugin("io.spray" % "sbt-revolver" % "0.8.0") addSbtPlugin("com.eed3si9n" % "sbt-buildinfo" % "0.6.1") addSbtPlugin("com.typesafe.sbt" % "sbt-git" % "0.8.5") -// addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.1.4") addSbtPlugin("com.eed3si9n" % "sbt-assembly" % "0.14.3") addSbtPlugin("com.github.gseitz" % "sbt-release" % "1.0.3") -// addSbtPlugin("se.marcuslonnberg" % "sbt-docker" % "1.4.0") // This plugin represents functionality that is to be added to sbt in the future addSbtPlugin("org.scala-sbt" % "sbt-core-next" % "0.1.1")
\ No newline at end of file diff --git a/src/main/scala/com.drivergrp.sbt/SbtSettings.scala b/src/main/scala/com.drivergrp.sbt/SbtSettings.scala index 8659457..0dfd1a7 100644 --- a/src/main/scala/com.drivergrp.sbt/SbtSettings.scala +++ b/src/main/scala/com.drivergrp.sbt/SbtSettings.scala @@ -2,13 +2,11 @@ package com.drivergrp.sbt import sbt.Keys._ import com.typesafe.sbt.SbtGit.git -// import com.typesafe.sbt.SbtNativePackager.Universal -// import com.typesafe.sbt.SbtNativePackager.autoImport._ -// import com.typesafe.sbt.packager.SettingsHelper._ -// import com.typesafe.sbt.packager.archetypes._ -// import com.typesafe.sbt.packager.docker.Cmd -// import com.typesafe.sbt.packager.docker.DockerPlugin.autoImport._ -// import sbtdocker.DockerPlugin +import com.typesafe.sbt.SbtNativePackager.autoImport._ +import com.typesafe.sbt.packager.archetypes._ +import com.typesafe.sbt.packager.docker.DockerPlugin.autoImport._ +import sbtdocker.DockerPlugin +import com.typesafe.sbt.packager.docker.Cmd import com.typesafe.sbt.{GitBranchPrompt, GitVersioning} import org.scalafmt.sbt.ScalaFmtPlugin.autoImport._ import org.scalastyle.sbt.ScalastylePlugin._ @@ -303,10 +301,6 @@ object SbtSettings extends AutoPlugin { def packagingConfiguration: Project = { project - // .enablePlugins(JavaAppPackaging) - // .settings(// for sbt-native-packager - // makeDeploymentSettings(Universal, packageBin in Universal, "zip") - // ) .settings(// for assembly plugin test in assembly := {}, assemblyMergeStrategy in assembly := { @@ -318,20 +312,23 @@ object SbtSettings extends AutoPlugin { }) } -// def dockerConfiguration: Project = { -// project -// .enablePlugins(DockerPlugin) -// .settings( -// maintainer := "Direct Inc. <info@driver.xyz>", -// dockerBaseImage := "java:openjdk-8-jre-alpine", -// dockerCommands := dockerCommands.value.flatMap { // @see http://blog.codacy.com/2015/07/16/dockerizing-scala/ -// case cmd@Cmd("FROM", _) => List(cmd, Cmd("RUN", "apk update && apk add bash")) -// case other => List(other) -// } -// ) + def dockerConfiguration(imageName: String, repository: String): Project = { + project + .enablePlugins(DockerPlugin, JavaAppPackaging) + .settings( + packageName in Docker := imageName, + dockerRepository := Some(repository), + maintainer := "Direct Inc. <info@driver.xyz>", + dockerUpdateLatest := true, // to automatic update the latest tag + dockerBaseImage := "java:openjdk-8-jre-alpine", + dockerCommands := dockerCommands.value.flatMap { // @see http://blog.codacy.com/2015/07/16/dockerizing-scala/ + case cmd@Cmd("FROM", _) => List(cmd, Cmd("RUN", "apk update && apk add bash")) + case other => List(other) + } + ) // And then you can run "sbt docker:publishLocal" -// } + } } } |