-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathbuild.sbt
101 lines (93 loc) · 2.57 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 Dependencies._
import Settings._
sbtSettings
lazy val `train-station` = project
.root("train-station")
.aggregate(models, `models-circe`, `models-doobie`, `models-vulcan`, `train-control-panel`)
.dependsOn(models, `models-circe`, `models-doobie`, `models-vulcan`, `train-control-panel`)
.enablePlugins(JavaAppPackaging)
.settings(Compile / mainClass := Some("es.eriktorr.train_station.TrainControlPanelApp"))
lazy val effect = project.library("effect").mainDependencies(catsCore)
lazy val models =
project
.library("models")
.mainDependencies(catsCore, catsKernel, kittens, newType, refined, shapeless)
.testDependencies(scalaCheck)
lazy val `models-circe` = project
.library("models-circe")
.dependsOn(models)
.mainDependencies(circeCore, refined)
.testDependencies(circeParser, weaverCats)
lazy val `models-doobie` = project
.library("models-doobie")
.dependsOn(models)
.mainDependencies(doobieCore, doobiePostgres, refined)
lazy val `models-vulcan` = project
.library("models-vulcan")
.dependsOn(models)
.mainDependencies(avro, catsCore, catsFree, catsKernel, refined, vulcan)
lazy val `train-control-panel` =
project
.application("train-control-panel")
.dependsOn(
effect,
models % "test->test;compile->compile",
`models-circe`,
`models-doobie`,
`models-vulcan`
)
.mainDependencies(
catsCore,
catsEffect,
catsEffectKernel,
catsFree,
catsKernel,
caseInsensitive,
circeCore,
circeGeneric,
ciris,
cirisRefined,
doobieCore,
doobieFree,
doobieHikari,
doobiePostgres,
fs2Core,
fs2Io,
fs2Kafka,
fs2KafkaVulcan,
http4sEmberServer,
http4sCore,
http4sServer,
hikariCP,
ip4sCore,
kafkaSchemaRegistryClient,
kittens,
log4CatsCore,
log4CatsSlf4j,
logback,
magnolia,
newType,
openApiCirceYaml,
openApiModel,
refined,
refinedCats,
shapeless,
sttpModelCore,
sttpSharedFs2,
tapirCore,
tapirJsonCirce,
tapirHttp4sServer,
tapirNewType,
tapirOpenApiDocs,
tapirSwaggerUI,
trace4CatsBase,
trace4CatsCore,
trace4CatsHttp4sCommon,
trace4CatsHttp4sServer,
trace4CatsInject,
trace4CatsKernel,
trace4CatsLogExporter,
trace4CatsModel,
vulcan
)
.testDependencies(caffeine, catsScalaCheck, http4sCirce, weaverCats, weaverScalaCheck)