build.sbt (38 lines of code) (raw):

import com.typesafe.sbt.packager.docker import com.typesafe.sbt.packager.docker.Cmd import com.typesafe.sbt.packager.docker.DockerPlugin.autoImport.{dockerExposedPorts, dockerUsername} name := "FibreCensus" version := "1.0" lazy val `fibrecensus` = (project in file(".")) .enablePlugins(PlayScala) .settings(version := sys.props.getOrElse("build.number","DEV"), dockerExposedPorts := Seq(9000), dockerUsername := sys.props.get("docker.username"), dockerRepository := Some("guardianmultimedia"), packageName in Docker := "guardianmultimedia/fibrecensus", packageName := "fibrecensus", dockerBaseImage := "amazoncorretto:8-alpine3.18-full", dockerAlias := docker.DockerAlias(None,Some("guardianmultimedia"),"fibrecensus",Some(sys.props.getOrElse("build.number","DEV"))), dockerCommands ++= Seq( )) resolvers += "Akka library repository".at("https://repo.akka.io/maven") scalaVersion := "2.12.2" libraryDependencies ++= Seq( jdbc , ehcache , ws , specs2 % Test , guice ) val elastic4sVersion = "6.2.12" libraryDependencies ++= Seq ( "com.sksamuel.elastic4s" %% "elastic4s-http" % elastic4sVersion, "com.sksamuel.elastic4s" %% "elastic4s-circe" % elastic4sVersion, "com.sksamuel.elastic4s" %% "elastic4s-testkit" % elastic4sVersion % "test", "com.sksamuel.elastic4s" %% "elastic4s-embedded" % elastic4sVersion % "test", ) val circeVersion = "0.9.3" libraryDependencies ++= Seq( "io.circe" %% "circe-core" % circeVersion, "io.circe" %% "circe-generic" % circeVersion, "io.circe" %% "circe-parser" % circeVersion, "io.circe" %% "circe-java8" % circeVersion, "com.dripower" %% "play-circe" % "2610.0", "com.nimbusds" % "nimbus-jose-jwt" % "9.37.2" ) unmanagedResourceDirectories in Test += { baseDirectory ( _ /"target/web/public/test" ).value } enablePlugins(DockerPlugin, AshScriptPlugin)