aboutsummaryrefslogtreecommitdiff
path: root/build.sbt
diff options
context:
space:
mode:
authorIvan Topolnjak <ivantopo@gmail.com>2019-03-11 22:21:06 +0100
committerIvan Topolnjak <ivantopo@gmail.com>2019-03-15 11:36:11 +0100
commitec83a72879378bc9eedea24f828e4d30fed95e92 (patch)
tree96fd746fc13f4ffb914d8e59c4ea074513877556 /build.sbt
parent5df3351de8a885e2eb2b52f75817347a599b2327 (diff)
downloadKamon-ec83a72879378bc9eedea24f828e4d30fed95e92.tar.gz
Kamon-ec83a72879378bc9eedea24f828e4d30fed95e92.tar.bz2
Kamon-ec83a72879378bc9eedea24f828e4d30fed95e92.zip
separate the status-page project from the status API
Diffstat (limited to 'build.sbt')
-rw-r--r--build.sbt73
1 files changed, 40 insertions, 33 deletions
diff --git a/build.sbt b/build.sbt
index 5bd86895..5f62b887 100644
--- a/build.sbt
+++ b/build.sbt
@@ -20,7 +20,7 @@ import scala.xml.transform.{RewriteRule, RuleTransformer}
lazy val kamon = (project in file("."))
.settings(moduleName := "kamon")
.settings(noPublishing: _*)
- .aggregate(core, testkit, coreTests, coreBench)
+ .aggregate(core, statusPage, testkit, coreTests, coreBench)
val commonSettings = Seq(
scalaVersion := "2.12.6",
@@ -40,7 +40,34 @@ val commonSettings = Seq(
case Some((2,11)) => Seq("-Ybackend:GenBCode","-Ydelambdafy:method","-target:jvm-1.8")
case Some((2,12)) => Seq("-opt:l:method")
case _ => Seq.empty
- })
+ }),
+ assembleArtifact in assemblyPackageScala := false,
+ assemblyShadeRules in assembly := Seq(
+ ShadeRule.rename("org.HdrHistogram.**" -> "kamon.lib.@0").inAll,
+ ShadeRule.rename("com.grack.nanojson.**" -> "kamon.lib.@0").inAll,
+ ShadeRule.rename("org.jctools.**" -> "kamon.lib.@0").inAll,
+ ShadeRule.rename("fi.iki.elonen.**" -> "kamon.lib.@0").inAll,
+ ),
+ assemblyExcludedJars in assembly := {
+ val cp = (fullClasspath in assembly).value
+ val excludedPackages = Seq("slf4j-api", "config")
+ cp filter { file => excludedPackages.exists(file.data.getName.startsWith(_))}
+ },
+ packageBin in Compile := assembly.value,
+ assemblyJarName in assembly := s"${moduleName.value}_${scalaBinaryVersion.value}-${version.value}.jar",
+ pomPostProcess := { originalPom => {
+ val shadedGroups = Seq("org.hdrhistogram", "org.jctools", "org.nanohttpd", "com.grack")
+ val filterShadedDependencies = new RuleTransformer(new RewriteRule {
+ override def transform(n: Node): Seq[Node] = {
+ if(n.label == "dependency") {
+ val group = (n \ "groupId").text
+ if (shadedGroups.find(eo => eo.equalsIgnoreCase(group)).nonEmpty) Seq.empty else n
+ } else n
+ }
+ })
+
+ filterShadedDependencies(originalPom)
+ }}
)
lazy val core = (project in file("kamon-core"))
@@ -55,38 +82,8 @@ lazy val core = (project in file("kamon-core"))
"com.typesafe" % "config" % "1.3.1",
"org.hdrhistogram" % "HdrHistogram" % "2.1.9",
"org.jctools" % "jctools-core" % "2.1.1",
- "org.nanohttpd" % "nanohttpd" % "2.3.1",
- "com.grack" % "nanojson" % "1.1",
"org.slf4j" % "slf4j-api" % "1.7.25"
- ),
- assembleArtifact in assemblyPackageScala := false,
- assemblyShadeRules in assembly := Seq(
- ShadeRule.rename("org.HdrHistogram.**" -> "kamon.lib.@0").inAll,
- ShadeRule.rename("com.grack.nanojson.**" -> "kamon.lib.@0").inAll,
- ShadeRule.rename("org.jctools.**" -> "kamon.lib.@0").inAll,
- ShadeRule.rename("fi.iki.elonen.**" -> "kamon.lib.@0").inAll,
- ),
- assemblyExcludedJars in assembly := {
- val cp = (fullClasspath in assembly).value
- val excludedPackages = Seq("slf4j-api","config")
- cp filter { file => excludedPackages.exists(file.data.getName.startsWith(_))}
- },
- packageBin in Compile := assembly.value,
- assemblyJarName in assembly := s"${moduleName.value}_${scalaBinaryVersion.value}-${version.value}.jar",
- pomPostProcess := { originalPom => {
- val shadedGroups = Seq("org.hdrhistogram", "org.jctools", "org.nanohttpd", "com.grack")
- val filterShadedDependencies = new RuleTransformer(new RewriteRule {
- override def transform(n: Node): Seq[Node] = {
- if(n.label == "dependency") {
- val group = (n \ "groupId").text
- if (shadedGroups.find(eo => eo.equalsIgnoreCase(group)).nonEmpty) Seq.empty else n
- } else n
- }
- })
-
- filterShadedDependencies(originalPom)
- }}
-
+ )
)
lazy val testkit = (project in file("kamon-testkit"))
@@ -98,6 +95,16 @@ lazy val testkit = (project in file("kamon-testkit"))
)
).dependsOn(core)
+lazy val statusPage = (project in file("kamon-status-page"))
+ .settings(moduleName := "kamon-status-page")
+ .settings(commonSettings: _*)
+ .settings(
+ libraryDependencies ++= Seq(
+ "org.nanohttpd" % "nanohttpd" % "2.3.1",
+ "com.grack" % "nanojson" % "1.1"
+ )
+ ).dependsOn(core)
+
lazy val coreTests = (project in file("kamon-core-tests"))
.settings(