-
Notifications
You must be signed in to change notification settings - Fork 15
/
Copy pathbuild.sbt
40 lines (32 loc) · 1.59 KB
/
build.sbt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
name := "scabot"
organization in ThisBuild := "com.lightbend"
version in ThisBuild := "0.1.0"
scalaVersion in ThisBuild := "2.11.12"
// native packaging settings
maintainer := "Seth Tisue <[email protected]>"
packageDescription := "Scala Bot"
packageSummary := "Automates stuff on GitHub"
scalacOptions in ThisBuild ++=
Seq("-feature", "-deprecation", "-Xfatal-warnings")
lazy val deps: Seq[sbt.Def.Setting[_]] = Seq(
libraryDependencies ++= Seq(
"com.typesafe.akka" %% "akka-actor" % "2.3.16",
"io.spray" %% "spray-client" % "1.3.4",
"io.spray" %% "spray-json" % "1.3.5"
))
lazy val amazonDeps: Seq[sbt.Def.Setting[_]] = Seq(
libraryDependencies += "com.amazonaws" % "aws-java-sdk" % "1.9.13")
lazy val guiSettings: Seq[sbt.Def.Setting[_]] = Seq(
assemblyJarName in assembly := "scabot.jar",
mainClass in assembly := Some("play.core.server.ProdServerStart"),
fullClasspath in assembly += Attributed.blank(PlayKeys.playPackageAssets.value),
assemblyExcludedJars in assembly := (fullClasspath in assembly).value filter {_.data.getName.startsWith("commons-logging")},
routesGenerator := InjectedRoutesGenerator
)
lazy val core = project settings (deps: _*)
lazy val github = project dependsOn (core)
lazy val jenkins = project dependsOn (core)
lazy val cli = project dependsOn (github)
lazy val amazon = project dependsOn (core) settings (amazonDeps: _*)
lazy val server = project dependsOn (amazon, github, jenkins)
lazy val gui = project dependsOn (server) enablePlugins(PlayScala) settings (guiSettings: _*)