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

import scala.sys.env name := "story-packages" version := "1.0.0" maintainer := "CMS Fronts <aws-cms-fronts@theguardian.com>" packageSummary := "Story packages" packageDescription := "Guardian story packages editor" scalaVersion := "2.13.14" import sbt.Resolver debianPackageDependencies := Seq("java11-runtime-headless") javacOptions := Seq("-g","-encoding", "utf8") Universal / javaOptions ++= Seq( "-Dpidfile.path=/dev/null", s"-J-Xloggc:/var/log/${packageName.value}/gc.log" ) scalacOptions := Seq("-unchecked", "-deprecation", "-release:8", "-Xcheckinit", "-encoding", "utf8", "-feature", "-Xfatal-warnings") Compile / doc / sources := Seq.empty Compile / packageDoc / publishArtifact := false val awsVersion = "1.12.770" val capiModelsVersion = "25.1.0" val json4sVersion = "4.0.7" resolvers ++= Seq( Resolver.file("Local", file(Path.userHome.absolutePath + "/.ivy2/local"))(Resolver.ivyStylePatterns) ) buildInfoPackage := "app" buildInfoKeys += "gitCommitId" -> env.getOrElse("GITHUB_SHA", "Unknown") lazy val jacksonVersion = "2.17.2" // these Jackson dependencies are required to resolve issues in Play 2.8.x https://github.com/orgs/playframework/discussions/11222 val jacksonOverrides = Seq( "com.fasterxml.jackson.core" % "jackson-core" % jacksonVersion, "com.fasterxml.jackson.core" % "jackson-annotations" % jacksonVersion, "com.fasterxml.jackson.datatype" % "jackson-datatype-jdk8" % jacksonVersion, "com.fasterxml.jackson.datatype" % "jackson-datatype-jsr310" % jacksonVersion, "com.fasterxml.jackson.module" %% "jackson-module-scala" % jacksonVersion, "com.fasterxml.jackson.core" % "jackson-databind" % jacksonVersion ) libraryDependencies ++= jacksonOverrides ++ Seq( ws, filters, "com.amazonaws" % "aws-java-sdk-core" % awsVersion, "com.amazonaws" % "aws-java-sdk-cloudwatch" % awsVersion, "com.amazonaws" % "aws-java-sdk-kinesis" % awsVersion, "com.amazonaws" % "aws-java-sdk-s3" % awsVersion, "com.amazonaws" % "aws-java-sdk-sqs" % awsVersion, "com.amazonaws" % "aws-java-sdk-sts" % awsVersion, "com.amazonaws" % "aws-java-sdk-dynamodb" % awsVersion, "com.gu" %% "content-api-models-scala" % capiModelsVersion, "com.gu" %% "content-api-models-json" % capiModelsVersion, "com.gu" %% "content-api-client-aws" % "0.7.5", "com.gu" %% "fapi-client-play30" % "12.0.0", "com.gu" %% "pan-domain-auth-play_3-0" % "7.0.0", "com.gu" %% "editorial-permissions-client" % "2.15", "com.gu" %% "story-packages-model" % "2.2.0", "com.gu" %% "thrift-serializer" % "4.0.2", "org.json4s" %% "json4s-native" % json4sVersion, "org.json4s" %% "json4s-jackson" % json4sVersion, "net.logstash.logback" % "logstash-logback-encoder" % "7.2", "org.playframework" %% "play-json" % "3.0.4", "org.julienrf" %% "play-json-derived-codecs" % "11.0.0", "org.scalatest" %% "scalatest" % "3.2.15" % "test" ) lazy val root = (project in file(".")).enablePlugins(PlayScala, JDebPackaging, SystemdPlugin, BuildInfoPlugin)