-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathbuild.sbt
90 lines (84 loc) · 2.65 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
import com.softwaremill.Publish
import sbt.{addSbtPlugin, _}
import Keys._
import sbtsoftwaremill.BuildInfo
val commonSettings = Publish.ossPublishSettings ++ Seq(
scalaVersion := "2.12.20",
organization := "com.softwaremill.sbt-softwaremill",
sbtVersion in Global := {
scalaBinaryVersion.value match {
case "2.10" => "0.13.17"
case "2.12" => "1.10.2"
}
}
)
lazy val root = project
.in(file("."))
.settings(commonSettings)
.settings(
name := "sbt-softwaremill-root",
description := "Build configuration for SBT projects"
)
.settings(Publish.noPublishSettings)
.aggregate(common, publish, extra, browserTestJs)
lazy val common = project
.in(file("common"))
.enablePlugins(SbtPlugin)
.settings(commonSettings)
.settings(
name := "sbt-softwaremill-common",
description := "Build configuration for SBT projects: common",
sbtPlugin := true,
scriptedLaunchOpts += ("-Dplugin.version=" + version.value)
)
.settings(
addSbtPlugin(
"org.scalameta" % "sbt-scalafmt" % BuildInfo.sbtScalafmtVersion
),
addSbtPlugin("org.typelevel" % "sbt-tpolecat" % "0.5.2")
)
lazy val publish = project
.in(file("publish"))
.enablePlugins(SbtPlugin)
.settings(commonSettings)
.settings(
name := "sbt-softwaremill-publish",
description := "Build configuration for SBT projects: publishing",
sbtPlugin := true,
scriptedLaunchOpts += ("-Dplugin.version=" + version.value),
libraryDependencies += "com.github.pathikrit" %% "better-files" % "3.9.2"
)
.settings(
addSbtPlugin(
"com.github.sbt" % "sbt-ci-release" % BuildInfo.sbtCiReleaseVersion
)
)
lazy val extra = project
.in(file("extra"))
.enablePlugins(SbtPlugin)
.settings(commonSettings)
.settings(
name := "sbt-softwaremill-extra",
description := "Build configuration for SBT projects: extra",
sbtPlugin := true,
scriptedLaunchOpts += ("-Dplugin.version=" + version.value),
libraryDependencies += "com.github.pathikrit" %% "better-files" % "3.9.2"
)
.settings(
addSbtPlugin("com.timushev.sbt" % "sbt-updates" % "0.6.4"),
addSbtPlugin("net.vonbuchholtz" % "sbt-dependency-check" % "5.1.0")
)
lazy val browserTestJs = project
.in(file("browser-test-js"))
.enablePlugins(SbtPlugin)
.settings(commonSettings)
.settings(
name := "sbt-softwaremill-browser-test-js",
description := "Build configuration for SBT projects: browser test JS",
sbtPlugin := true,
scriptedLaunchOpts += ("-Dplugin.version=" + version.value)
)
.settings(
libraryDependencies += "org.scala-js" %% "scalajs-env-selenium" % "1.1.1",
addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.17.0")
)