-
Notifications
You must be signed in to change notification settings - Fork 14
/
build.sbt
78 lines (71 loc) · 2.21 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
import Versions._
import sbtcrossproject.CrossPlugin.autoImport.crossProject
enablePlugins(ZioSbtEcosystemPlugin, ZioSbtCiPlugin)
inThisBuild(
List(
name := "ZIO Crypto",
zioVersion := "2.0.0",
crossScalaVersions -= scala211.value,
developers := List(
Developer(
"jdegoes",
"John De Goes",
"john@degoes.net",
url("http://degoes.net")
)
),
ciEnabledBranches := Seq("main"),
ciTargetScalaVersions :=
Map(
(`zio-crypto`.jvm / thisProject).value.id -> (`zio-crypto`.jvm / crossScalaVersions).value,
(`zio-crypto-awskms` / thisProject).value.id -> (`zio-crypto-awskms` / crossScalaVersions).value,
(`zio-crypto-gcpkms` / thisProject).value.id -> (`zio-crypto-gcpkms` / crossScalaVersions).value
)
)
)
lazy val root = project
.in(file("."))
.settings(
publish / skip := true
)
.aggregate(
`zio-crypto`.jvm,
`zio-crypto-gcpkms`,
`zio-crypto-awskms`,
docs
)
lazy val `zio-crypto` = crossProject(JVMPlatform)
.settings(
stdSettings(
enableSilencer = true,
enableCrossProject = true
)
)
.settings(enableZIO())
.settings(
libraryDependencies ++= Seq(
"com.google.crypto.tink" % "tink" % tinkVersion,
"dev.zio" %% "izumi-reflect" % izumiReflectVersion,
"dev.zio" %% "zio-stacktracer" % zioStacktracerVersion
)
)
lazy val `zio-crypto-gcpkms` = project
.settings(stdSettings())
.dependsOn(`zio-crypto`.jvm)
lazy val `zio-crypto-awskms` = project
.settings(stdSettings(enableCrossProject = false))
.dependsOn(`zio-crypto`.jvm)
lazy val docs = project
.in(file("zio-crypto-docs"))
.settings(
publish / skip := true,
moduleName := "zio-crypto-docs",
scalacOptions -= "-Yno-imports",
scalacOptions -= "-Xfatal-warnings",
projectName := (ThisBuild / name).value,
mainModuleName := (`zio-crypto`.jvm / moduleName).value,
projectStage := ProjectStage.Experimental,
ScalaUnidoc / unidoc / unidocProjectFilter := inProjects(`zio-crypto`.jvm, `zio-crypto-awskms`, `zio-crypto-gcpkms`)
)
.dependsOn(`zio-crypto`.jvm, `zio-crypto-awskms`, `zio-crypto-gcpkms`)
.enablePlugins(WebsitePlugin)