-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathbuild.sbt
55 lines (47 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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
val projectName = "myproj"
val organization = "myorg"
val version = "1.0"
scalaVersion in ThisBuild := "2.11.12"
addCommandAlias(
"sanity",
";clean ;compile ;test ;scalafmtAll ;scalastyle ;assembly"
)
lazy val root = (project in file("."))
.disablePlugins(sbtassembly.AssemblyPlugin)
.aggregate(shared, scripts)
.settings(settings, libraryDependencies ++= commonDependencies)
lazy val shared = project
.disablePlugins(ScalafmtPlugin)
.disablePlugins(ScalastylePlugin)
.settings(settings, libraryDependencies ++= commonDependencies)
lazy val scripts = project
.disablePlugins(ScalafmtPlugin)
.disablePlugins(ScalastylePlugin)
.disablePlugins(sbtassembly.AssemblyPlugin)
.settings(settings, libraryDependencies ++= commonDependencies)
.dependsOn(shared % "compile->compile;test->test")
lazy val settings = Seq(
assemblyJarName in assembly := s"$projectName-${name.value}-assembly-$version.jar",
test in assembly := {},
scalacOptions ++= Seq(),
resolvers ++= Seq(
Resolver.sonatypeRepo("releases"),
"aws-glue-etl-artifacts" at "https://aws-glue-etl-artifacts.s3.amazonaws.com/release/"
)
)
lazy val commonDependencies = Seq(
"com.amazonaws" % "AWSGlueETL" % "1.0.0" % Provided,
"org.scalatest" %% "scalatest" % "3.0.8" % "test"
)
fork in ThisBuild := true
parallelExecution in ThisBuild := false
logBuffered in ThisBuild := false
testOptions in ThisBuild += Tests.Argument(TestFrameworks.ScalaTest, "-oD")
javaOptions ++= Seq(
"-XX:+CMSClassUnloadingEnabled",
"-XX:MaxMetaspaceSize=512M",
"-XX:MetaspaceSize=256M",
"-Xms512M",
"-Xmx2G",
"-XX:MaxPermSize=2048M"
)