This repository has been archived by the owner on Sep 21, 2023. It is now read-only.
forked from 500px/kinesis-stream
-
Notifications
You must be signed in to change notification settings - Fork 0
/
build.sbt
72 lines (65 loc) · 2.52 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
import sbt.Keys.{parallelExecution, scalacOptions}
import _root_.io.narrative.build._
import _root_.io.narrative.build.LibraryProjectSettings
lazy val ScalaVersion = "2.11.12"
val scalaSettings = Seq(
scalaVersion := ScalaVersion,
scalacOptions ++= Seq(
"-deprecation", // Emit warning and location for usages of deprecated APIs.
"-feature", // Emit warning and location for usages of features that should be imported explicitly.
"-target:jvm-1.8",
"-Ywarn-dead-code" // Warn when dead code is identified.
)
)
val akkaStreamV = "2.5.19"
val dependencySettings = Seq(
libraryDependencies ++= Seq(
"software.amazon.kinesis" % "amazon-kinesis-client" % "2.0.4",
"com.typesafe.akka" %% "akka-stream" % akkaStreamV,
"com.typesafe.akka" %% "akka-slf4j" % akkaStreamV,
"ch.qos.logback" % "logback-classic" % "1.2.3",
"com.typesafe.scala-logging" %% "scala-logging" % "3.9.0",
"org.codehaus.groovy" % "groovy-all" % "2.4.1",
"org.scalamock" %% "scalamock" % "4.1.0" % Test,
"org.scalatest" %% "scalatest" % "3.0.5" % Test,
"com.typesafe.akka" %% "akka-stream-testkit" % akkaStreamV % Test
)
)
val NarrativeReleases = "Narrative Releases" at "s3://s3-us-east-1.amazonaws.com/narrative-artifact-releases"
val NarrativeSnapshots = "Narrative Snapshots" at "s3://s3-us-east-1.amazonaws.com/narrative-artifact-snapshots"
lazy val SupportedScalaVersions = Seq(ScalaVersion)
lazy val PublishSettings = Seq(
publishMavenStyle := false,
publishArtifact := true,
publishArtifact in (Test, packageBin) := true,
publishArtifact in (Compile, packageDoc) := false,
packagedArtifacts += ((artifact in makePom).value, makePom.value),
publishTo := {
if (version.value.contains("SNAPSHOT")) Some(NarrativeSnapshots)
else Some(NarrativeReleases)
},
pomIncludeRepository := { _ =>
true
}
)
lazy val root = (project in file("."))
.settings(scalaSettings)
.settings(name := "kinesis-stream", organization := "px")
.settings(PublishSettings)
.settings(dependencySettings)
.settings(
parallelExecution in Test := false,
logBuffered in Test := false,
scalafmtOnCompile in ThisBuild := true, // all projects
scalafmtOnCompile := true, // current project
scalafmtOnCompile in Compile := true
)
// examples
lazy val examples = (project in file("examples"))
.dependsOn(root)
.settings(scalaSettings)
.settings(dependencySettings)
.settings(
resolvers += Resolver.bintrayRepo("streetcontxt", "maven"),
libraryDependencies += "com.streetcontxt" %% "kpl-scala" % "1.0.5"
)