-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathbuild.sbt
95 lines (68 loc) · 2.67 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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
import Dependencies._
val defaultScalaVersion = "2.12.10"
val scalaVer = sys.props.getOrElse("scala.version", defaultScalaVersion)
val defaultSparkVersion = "3.0.0"
val sparkVer = sys.props.getOrElse("spark.version", defaultSparkVersion)
val components = Seq("streaming", "sql", "mllib")
val shortDesc = "Online latent state estimation with Apache Spark."
val longDesc = """Online latent state estimation with Apache Spark.
|
|This library allows you to define model-parallel kalman & bayesian filters by leveraging arbitrary
|stateful transformation capabilities of Spark DataFrames. Supports both structured streaming and
|batch processing mode. Suitable for latent state estimation of many similar small scale systems.""".stripMargin
lazy val settings = Seq(
scalaVersion := scalaVer,
version := "0.5.2-SNAPSHOT",
organization := "com.github.ozancicek",
organizationName := "ozancicek",
sparkVersion := sparkVer,
libraryDependencies += scalaTest % Test,
sparkComponents ++= components,
spAppendScalaVersion := true
)
lazy val root = (project in file("."))
.settings(
name := "artan",
fork in run := true,
(packageBin in Compile) := {
spPackage.value
},
scalacOptions in (Compile, doc) += "-groups",
settings)
lazy val examples = (project in file("examples"))
.settings(
name := "artan-examples",
settings)
.dependsOn(root)
logBuffered in Test := false
fork in Test := true
javaOptions ++= Seq("-Xms512M", "-Xmx2048M", "-XX:MaxPermSize=2048M", "-XX:+CMSClassUnloadingEnabled")
parallelExecution in Test := false
spName := "ozancicek/artan"
credentials += Credentials(Path.userHome / ".ivy2" / ".sparkpackagescredentials")
credentials += Credentials(Path.userHome / ".ivy2" / ".sonatypecredentials")
spShortDescription := "Online latent state estimation with Apache Spark."
spDescription := shortDesc
licenses += "Apache-2.0" -> url("http://opensource.org/licenses/Apache-2.0")
homepage := Some(url("https://github.com/ozancicek/artan"))
publishMavenStyle := true
publishArtifact in Test := false
pomIncludeRepository := { _ => false }
publishTo in ThisBuild := {
val nexus = "https://oss.sonatype.org/"
if (isSnapshot.value) {
Some("snapshots" at nexus + "content/repositories/snapshots")
} else {
Some("releases" at nexus + "service/local/staging/deploy/maven2")
}
}
scmInfo := Some(
ScmInfo(
url("https://github.com/ozancicek/artan"),
"scm:git:[email protected]:ozancicek/artan.git"
)
)
description := shortDesc
developers := List(
Developer("ozancicek", "Ozan Cicekci", "[email protected]", url("https://github.com/ozancicek"))
)