diff options
author | Ivan Topolnjak <ivantopo@gmail.com> | 2019-03-11 22:21:06 +0100 |
---|---|---|
committer | Ivan Topolnjak <ivantopo@gmail.com> | 2019-03-15 11:36:11 +0100 |
commit | ec83a72879378bc9eedea24f828e4d30fed95e92 (patch) | |
tree | 96fd746fc13f4ffb914d8e59c4ea074513877556 /build.sbt | |
parent | 5df3351de8a885e2eb2b52f75817347a599b2327 (diff) | |
download | Kamon-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.sbt | 73 |
1 files changed, 40 insertions, 33 deletions
@@ -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( |