forked from davenverse/epimetheus-redis4cats
-
Notifications
You must be signed in to change notification settings - Fork 1
/
build.sbt
101 lines (89 loc) · 3.76 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
96
97
98
99
100
101
import sbtcrossproject.CrossPlugin.autoImport.{crossProject, CrossType}
val specs2V = "4.8.1"
val kindProjectorV = "0.11.0"
val betterMonadicForV = "0.3.1"
// Projects
lazy val `epimetheus-redis4cats` = project.in(file("."))
.disablePlugins(MimaPlugin)
.enablePlugins(NoPublishPlugin)
.aggregate(core)
lazy val core = project.in(file("core"))
.settings(commonSettings)
.settings(
name := "epimetheus-redis4cats"
)
lazy val site = project.in(file("site"))
.disablePlugins(MimaPlugin)
.enablePlugins(MicrositesPlugin)
.enablePlugins(MdocPlugin)
.enablePlugins(NoPublishPlugin)
.settings(commonSettings)
.dependsOn(core)
.settings{
import microsites._
Seq(
micrositeName := "epimetheus-redis4cats",
micrositeDescription := "Redis4cats Metrics",
micrositeAuthor := "Christopher Davenport",
micrositeGithubOwner := "ChristopherDavenport",
micrositeGithubRepo := "epimetheus-redis4cats",
micrositeBaseUrl := "/epimetheus-redis4cats",
micrositeDocumentationUrl := "https://www.javadoc.io/doc/io.chrisdavenport/epimetheus-redis4cats_2.12",
micrositeGitterChannelUrl := "ChristopherDavenport/libraries", // Feel Free to Set To Something Else
micrositeFooterText := None,
micrositeHighlightTheme := "atom-one-light",
micrositePalette := Map(
"brand-primary" -> "#3e5b95",
"brand-secondary" -> "#294066",
"brand-tertiary" -> "#2d5799",
"gray-dark" -> "#49494B",
"gray" -> "#7B7B7E",
"gray-light" -> "#E5E5E6",
"gray-lighter" -> "#F4F3F4",
"white-color" -> "#FFFFFF"
),
micrositeCompilingDocsTool := WithMdoc,
scalacOptions in Tut --= Seq(
"-Xfatal-warnings",
"-Ywarn-unused-import",
"-Ywarn-numeric-widen",
"-Ywarn-dead-code",
"-Ywarn-unused:imports",
"-Xlint:-missing-interpolator,_"
),
micrositePushSiteWith := GitHub4s,
micrositeGithubToken := sys.env.get("GITHUB_TOKEN"),
micrositeExtraMdFiles := Map(
file("CODE_OF_CONDUCT.md") -> ExtraMdFileConfig("code-of-conduct.md", "page", Map("title" -> "code of conduct", "section" -> "code of conduct", "position" -> "100")),
file("LICENSE") -> ExtraMdFileConfig("license.md", "page", Map("title" -> "license", "section" -> "license", "position" -> "101"))
)
)
}
// General Settings
lazy val commonSettings = Seq(
scalaVersion := "2.13.1",
crossScalaVersions := Seq(scalaVersion.value, "2.12.10"),
addCompilerPlugin("org.typelevel" %% "kind-projector" % kindProjectorV cross CrossVersion.full),
addCompilerPlugin("com.olegpy" %% "better-monadic-for" % betterMonadicForV),
libraryDependencies ++= Seq(
"io.chrisdavenport" %% "epimetheus" % "0.4.0",
"dev.profunktor" %% "redis4cats-effects" % "0.9.6",
"org.specs2" %% "specs2-core" % specs2V % Test,
"org.specs2" %% "specs2-scalacheck" % specs2V % Test
)
)
// General Settings
inThisBuild(List(
organization := "io.chrisdavenport",
developers := List(
Developer("ChristopherDavenport", "Christopher Davenport", "[email protected]", url("https://github.com/ChristopherDavenport"))
),
homepage := Some(url("https://github.com/ChristopherDavenport/epimetheus-redis4cats")),
licenses += ("MIT", url("http://opensource.org/licenses/MIT")),
pomIncludeRepository := { _ => false},
scalacOptions in (Compile, doc) ++= Seq(
"-groups",
"-sourcepath", (baseDirectory in LocalRootProject).value.getAbsolutePath,
"-doc-source-url", "https://github.com/ChristopherDavenport/epimetheus-redis4cats/blob/v" + version.value + "€{FILE_PATH}.scala"
)
))